<?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>192732</bug_id>
          
          <creation_ts>2018-12-14 17:54:11 -0800</creation_ts>
          <short_desc>Make RTCRtpSender.setParameters to activate specific encodings</short_desc>
          <delta_ts>2018-12-19 08:21:04 -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>WebRTC</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ibc</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1488159</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-14 17:54:11 -0800</bug_when>
    <thetext>Make RTCRtpSender.setParameters to activate specific encodings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488162</commentid>
    <comment_count>1</comment_count>
      <attachid>357363</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-14 17:58:02 -0800</bug_when>
    <thetext>Created attachment 357363
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488163</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-14 17:58:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/46748020&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488175</commentid>
    <comment_count>3</comment_count>
      <attachid>357369</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-14 18:12:15 -0800</bug_when>
    <thetext>Created attachment 357369
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488294</commentid>
    <comment_count>4</comment_count>
      <attachid>357369</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-15 09:40:33 -0800</bug_when>
    <thetext>Comment on attachment 357369
Patch

Clearing flags on attachment: 357369

Committed r239252: &lt;https://trac.webkit.org/changeset/239252&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488295</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-15 09:40:35 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489310</commentid>
    <comment_count>6</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 08:21:04 -0800</bug_when>
    <thetext>*** Bug 192848 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357363</attachid>
            <date>2018-12-14 17:58:02 -0800</date>
            <delta_ts>2018-12-14 18:12:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192732-20181214175810.patch</filename>
            <type>text/plain</type>
            <size>18459</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA3NWFjY2ZhZmRhYjg4YTAzOGQxMDljYzcwYzcxMGZjNzFhNWNjZmYxLi5lMGE2
MGE1OTFlZDU5OGFmMTdiZGVlNTYxNGIwZTc2ZTMzMDlhZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0xMi0xNCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBSVENSdHBTZW5kZXIuc2V0
UGFyYW1ldGVycyB0byBhY3RpdmF0ZSBzcGVjaWZpYyBlbmNvZGluZ3MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjczMgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2Vi
cnRjLmlPUy5leHA6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLmlPU3NpbS5l
eHA6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLm1hYy5leHA6CisKIDIwMTgt
MTItMTQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFNldCBr
VlRWaWRlb0VuY29kZXJTcGVjaWZpY2F0aW9uX1VzYWdlIGJvdGggd2hlbiBjcmVhdGluZyB0aGUg
Y29tcHJlc3Npb24gc2Vzc2lvbiBhbmQgb25jZSBjcmVhdGVkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjYzNTE5
YjUwMTRkMjY5NWFmOGUwODc4YzZmNmQ3ODBiNGQwMzA4ZC4uMzIzNDAxNWE0NjgxZWFjZTMzYTJh
MTllZDFiNWQzYTk1NGZhMDczOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE4LTEy
LTE0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIFJU
Q1J0cFNlbmRlci5zZXRQYXJhbWV0ZXJzIHRvIGFjdGl2YXRlIHNwZWNpZmljIGVuY29kaW5ncwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNzMyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGNvbnZl
cnNpb24gZnJvbSBsaWJ3ZWJydGMgdG8gV2ViQ29yZSBpcyBsb3NzeSBmb3Igc2VuZCBwYXJhbWV0
ZXJzLgorICAgICAgICBMaWJ3ZWJydGMgY2hlY2tpbmcgdGhlIGRpZmZlcmVuY2VzIG9mIHZhbHVl
cywgY2FsbCB0byBzZXRQYXJhbWV0ZXJzIHdpbGwgb2Z0ZW4gZmFpbC4KKworICAgICAgICBHaXZl
biBzb21lIHBhcmFtZXRlcnMgY2Fubm90IGJlIGV4cG9zZWQsIHRoZSBzZW5kZXIgYmFja2VuZCBr
ZWVwcyB0aGUKKyAgICAgICAgY3VycmVudCBzZXQgb2YgcGFyYW1ldGVycyBhbmQgcmV1c2VzIGl0
IHdoZW4gcGFyYW1ldGVycyBhcmUgc2V0LgorCisgICAgICAgIEZvciBlbmNvZGluZ3MsIHdlIG9u
bHkgY2hhbmdlIGFjdGl2YXRlL21heEJpdFJhdGUvbWF4RnJhbWVSYXRlIGFzCisgICAgICAgIHRo
ZXNlIGFyZSB0aGUgbW9zdCBpbXBvcnRhbnQgcGFyYW1ldGVycyB0byBiZSBhYmxlIHRvIG1vZGlm
eS4KKworICAgICAgICBDb3ZlcmVkIGJ5IGFkZGVkIHRlc3RzIGluIHdlYnJ0Yy92aWRlby5odG1s
LgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRw
U2VuZGVyQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMaWJXZWJSVENSdHBTZW5kZXJC
YWNrZW5kOjpnZXRQYXJhbWV0ZXJzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJU
Q1J0cFNlbmRlckJhY2tlbmQ6OnNldFBhcmFtZXRlcnMpOgorICAgICAgICAqIE1vZHVsZXMvbWVk
aWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQuaDoKKyAgICAgICAg
KiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENVdGlscy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpmcm9tUlRDUnRwU2VuZFBhcmFtZXRlcnMpOgorICAgICAgICAoV2ViQ29y
ZTo6ZnJvbVJUQ0VuY29kaW5nUGFyYW1ldGVycyk6IERlbGV0ZWQuCisgICAgICAgICogTW9kdWxl
cy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDVXRpbHMuaDoKKwogMjAxOC0xMi0xNCAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgZ2V0U2VuZGVycy9n
ZXRSZWNlaXZlcnMoKSBzaG91bGQgbm90IHJldHVybiBjbG9zZWQgdHJhbnNjZWl2ZXIgc2VuZGVy
cy9yZWNlaXZlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25m
aWd1cmF0aW9ucy9saWJ3ZWJydGMuaU9TLmV4cCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Db25maWd1cmF0aW9ucy9saWJ3ZWJydGMuaU9TLmV4cAppbmRleCA2MjI4NmVkYzU1MmRhYWRk
MjlkMzE0MzczODUwNzE3NTU2NGRlZWI4Li5hM2JlNTY0NzQwM2Y0ZTZlMmYyNWIwZWE2MzlhNjYy
MDQ3ZWE5MWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmln
dXJhdGlvbnMvbGlid2VicnRjLmlPUy5leHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5pT1MuZXhwCkBAIC0yMzgsMyArMjM4LDExIEBA
IF9fWk5LNndlYnJ0YzIwQXVkaW9Tb3VyY2VJbnRlcmZhY2U3b3B0aW9uc0V2CiBfX1pUVk42d2Vi
cnRjMjBBdWRpb1NvdXJjZUludGVyZmFjZUUKIF9fWk42d2VicnRjMjNQZWVyQ29ubmVjdGlvbklu
dGVyZmFjZTIxcGVlcl9jb25uZWN0aW9uX3N0YXRlRXYKIF9fWk5LM3J0YzE0TmV0d29ya01hbmFn
ZXIxNkdldE1kbnNSZXNwb25kZXJFdgorX19aTjZ3ZWJydGMxOFJ0cENvZGVjUGFyYW1ldGVyc0Mx
RVJLUzBfCitfX1pONndlYnJ0YzE4UnRwQ29kZWNQYXJhbWV0ZXJzQzFFdgorX19aTjZ3ZWJydGMx
OFJ0cENvZGVjUGFyYW1ldGVyc0QxRXYKK19fWk42d2VicnRjMTNSdHBQYXJhbWV0ZXJzQzFFUktT
MF8KK19fWk42d2VicnRjMTZSdHBGZWNQYXJhbWV0ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMTZS
dHBGZWNQYXJhbWV0ZXJzRDFFdgorX19aTjZ3ZWJydGMxNlJ0cFJ0eFBhcmFtZXRlcnNDMUVSS1Mw
XworX19aTjZ3ZWJydGMxNlJ0cFJ0eFBhcmFtZXRlcnNEMUV2CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLmlPU3NpbS5leHAg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLmlP
U3NpbS5leHAKaW5kZXggZTMxMjZiZjA2ZmQ5ODcwYWE5ZjNmOTljNDc1M2NlMWM4MDEzOGM4NS4u
NjY2MjYyYTUwOTAxODliYzlmOTA1NThlZWQ5MmI4YmZlZDFkNjg1OSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5pT1NzaW0u
ZXhwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9saWJ3
ZWJydGMuaU9Tc2ltLmV4cApAQCAtMjM5LDMgKzIzOSwxMSBAQCBfX1pOSzZ3ZWJydGMyMEF1ZGlv
U291cmNlSW50ZXJmYWNlN29wdGlvbnNFdgogX19aVFZONndlYnJ0YzIwQXVkaW9Tb3VyY2VJbnRl
cmZhY2VFCiBfX1pONndlYnJ0YzIzUGVlckNvbm5lY3Rpb25JbnRlcmZhY2UyMXBlZXJfY29ubmVj
dGlvbl9zdGF0ZUV2CiBfX1pOSzNydGMxNE5ldHdvcmtNYW5hZ2VyMTZHZXRNZG5zUmVzcG9uZGVy
RXYKK19fWk42d2VicnRjMThSdHBDb2RlY1BhcmFtZXRlcnNDMUVSS1MwXworX19aTjZ3ZWJydGMx
OFJ0cENvZGVjUGFyYW1ldGVyc0MxRXYKK19fWk42d2VicnRjMThSdHBDb2RlY1BhcmFtZXRlcnNE
MUV2CitfX1pONndlYnJ0YzEzUnRwUGFyYW1ldGVyc0MxRVJLUzBfCitfX1pONndlYnJ0YzE2UnRw
RmVjUGFyYW1ldGVyc0MxRVJLUzBfCitfX1pONndlYnJ0YzE2UnRwRmVjUGFyYW1ldGVyc0QxRXYK
K19fWk42d2VicnRjMTZSdHBSdHhQYXJhbWV0ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMTZSdHBS
dHhQYXJhbWV0ZXJzRDFFdgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5tYWMuZXhwIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5tYWMuZXhwCmluZGV4IGUzMTI2YmYwNmZk
OTg3MGFhOWYzZjk5YzQ3NTNjZTFjODAxMzhjODUuLjY2NjI2MmE1MDkwMTg5YmM5ZjkwNTU4ZWVk
OTJiOGJmZWQxZDY4NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9D
b25maWd1cmF0aW9ucy9saWJ3ZWJydGMubWFjLmV4cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLm1hYy5leHAKQEAgLTIzOSwzICsyMzks
MTEgQEAgX19aTks2d2VicnRjMjBBdWRpb1NvdXJjZUludGVyZmFjZTdvcHRpb25zRXYKIF9fWlRW
TjZ3ZWJydGMyMEF1ZGlvU291cmNlSW50ZXJmYWNlRQogX19aTjZ3ZWJydGMyM1BlZXJDb25uZWN0
aW9uSW50ZXJmYWNlMjFwZWVyX2Nvbm5lY3Rpb25fc3RhdGVFdgogX19aTkszcnRjMTROZXR3b3Jr
TWFuYWdlcjE2R2V0TWRuc1Jlc3BvbmRlckV2CitfX1pONndlYnJ0YzE4UnRwQ29kZWNQYXJhbWV0
ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMThSdHBDb2RlY1BhcmFtZXRlcnNDMUV2CitfX1pONndl
YnJ0YzE4UnRwQ29kZWNQYXJhbWV0ZXJzRDFFdgorX19aTjZ3ZWJydGMxM1J0cFBhcmFtZXRlcnND
MUVSS1MwXworX19aTjZ3ZWJydGMxNlJ0cEZlY1BhcmFtZXRlcnNDMUVSS1MwXworX19aTjZ3ZWJy
dGMxNlJ0cEZlY1BhcmFtZXRlcnNEMUV2CitfX1pONndlYnJ0YzE2UnRwUnR4UGFyYW1ldGVyc0Mx
RVJLUzBfCitfX1pONndlYnJ0YzE2UnRwUnR4UGFyYW1ldGVyc0QxRXYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKaW5kZXggMGY3ZDJiNTk2Mzc3N2E0
MGIwMzY2YjY3NmNhYmM1NzAzNmIzYTIzMC4uZjdiNzg1MTBlNTQzNDFiZTk2NmVjZTY2OGFjY2E5
NDk1ODc3Mzg5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFj
a2VuZC5jcHAKQEAgLTExNyw3ICsxMTcsOCBAQCBSVENSdHBTZW5kUGFyYW1ldGVycyBMaWJXZWJS
VENSdHBTZW5kZXJCYWNrZW5kOjpnZXRQYXJhbWV0ZXJzKCkgY29uc3QKICAgICBpZiAoIW1fcnRj
U2VuZGVyKQogICAgICAgICByZXR1cm4geyB9OwogCi0gICAgcmV0dXJuIHRvUlRDUnRwU2VuZFBh
cmFtZXRlcnMobV9ydGNTZW5kZXItPkdldFBhcmFtZXRlcnMoKSk7CisgICAgbV9jdXJyZW50UGFy
YW1ldGVycyA9IG1fcnRjU2VuZGVyLT5HZXRQYXJhbWV0ZXJzKCk7CisgICAgcmV0dXJuIHRvUlRD
UnRwU2VuZFBhcmFtZXRlcnMoKm1fY3VycmVudFBhcmFtZXRlcnMpOwogfQogCiB2b2lkIExpYldl
YlJUQ1J0cFNlbmRlckJhY2tlbmQ6OnNldFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwU2VuZFBhcmFt
ZXRlcnMmIHBhcmFtZXRlcnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCkBA
IC0xMjYsNyArMTI3LDEzIEBAIHZvaWQgTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZDo6c2V0UGFy
YW1ldGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYgcGFyYW1lCiAgICAgICAgIHByb21p
c2UucmVqZWN0KE5vdFN1cHBvcnRlZEVycm9yKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAg
ICBhdXRvIGVycm9yID0gbV9ydGNTZW5kZXItPlNldFBhcmFtZXRlcnMoZnJvbVJUQ1J0cFNlbmRQ
YXJhbWV0ZXJzKHBhcmFtZXRlcnMpKTsKKworICAgIGlmICghbV9jdXJyZW50UGFyYW1ldGVycykg
eworICAgICAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
ImdldFBhcmFtZXRlcnMgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIHNldFBhcmFtZXRlcnMiX3MgfSk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIGVycm9yID0gbV9ydGNTZW5kZXIt
PlNldFBhcmFtZXRlcnMoZnJvbVJUQ1J0cFNlbmRQYXJhbWV0ZXJzKHBhcmFtZXRlcnMsICptX2N1
cnJlbnRQYXJhbWV0ZXJzKSk7CiAgICAgaWYgKCFlcnJvci5vaygpKSB7CiAgICAgICAgIHByb21p
c2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCBlcnJvci5tZXNzYWdlKCkg
fSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRl
ckJhY2tlbmQuaAppbmRleCBhZDU2OGQwZDRiMWRlZDZkNWJmNWEzZDMzYjMzMDI0NzQ1NjdlNmRh
Li5lZTYxNWE0MGM0ZmIzOThjNmIwNDMxMGQ4YzFjZTYxZTY4MThhMTY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBT
ZW5kZXJCYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9s
aWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5oCkBAIC0xMTQsNiArMTE0LDcgQEAg
cHJpdmF0ZToKICAgICBXZWFrUHRyPExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZD4gbV9w
ZWVyQ29ubmVjdGlvbkJhY2tlbmQ7CiAgICAgcnRjOjpzY29wZWRfcmVmcHRyPHdlYnJ0Yzo6UnRw
U2VuZGVySW50ZXJmYWNlPiBtX3J0Y1NlbmRlcjsKICAgICBTb3VyY2UgbV9zb3VyY2U7CisgICAg
bXV0YWJsZSBzdGQ6Om9wdGlvbmFsPHdlYnJ0Yzo6UnRwUGFyYW1ldGVycz4gbV9jdXJyZW50UGFy
YW1ldGVyczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJU
Q1V0aWxzLmNwcAppbmRleCBlODEyNzc3ZjEyNzUyMDY4ZWVhMjIzYmZiODJkNDVlZmIyMDc3YmY1
Li40MDMzZTRjMWE5NDFmZDQ2NTY5YTQzNzgxZjE3ZGU3YWUxNWIxMTljIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENVdGls
cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMv
TGliV2ViUlRDVXRpbHMuY3BwCkBAIC03MiwzMSArNzIsNiBAQCBzdGF0aWMgaW5saW5lIFJUQ1J0
cEVuY29kaW5nUGFyYW1ldGVycyB0b1JUQ0VuY29kaW5nUGFyYW1ldGVycyhjb25zdCB3ZWJydGM6
OlJ0cAogICAgIHJldHVybiBwYXJhbWV0ZXJzOwogfQogCi1zdGF0aWMgaW5saW5lIHdlYnJ0Yzo6
UnRwRW5jb2RpbmdQYXJhbWV0ZXJzIGZyb21SVENFbmNvZGluZ1BhcmFtZXRlcnMoY29uc3QgUlRD
UnRwRW5jb2RpbmdQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQotewotICAgIHdlYnJ0Yzo6UnRwRW5j
b2RpbmdQYXJhbWV0ZXJzIHJ0Y1BhcmFtZXRlcnM7Ci0KLSAgICBpZiAocGFyYW1ldGVycy5kdHgp
IHsKLSAgICAgICAgc3dpdGNoICgqcGFyYW1ldGVycy5kdHgpIHsKLSAgICAgICAgY2FzZSBSVENE
dHhTdGF0dXM6OkRpc2FibGVkOgotICAgICAgICAgICAgcnRjUGFyYW1ldGVycy5kdHggPSB3ZWJy
dGM6OkR0eFN0YXR1czo6RElTQUJMRUQ7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2Fz
ZSBSVENEdHhTdGF0dXM6OkVuYWJsZWQ6Ci0gICAgICAgICAgICBydGNQYXJhbWV0ZXJzLmR0eCA9
IHdlYnJ0Yzo6RHR4U3RhdHVzOjpFTkFCTEVEOwotICAgICAgICB9Ci0gICAgfQotICAgIHJ0Y1Bh
cmFtZXRlcnMuYWN0aXZlID0gcGFyYW1ldGVycy5hY3RpdmU7Ci0gICAgaWYgKHBhcmFtZXRlcnMu
bWF4Qml0cmF0ZSkKLSAgICAgICAgcnRjUGFyYW1ldGVycy5tYXhfYml0cmF0ZV9icHMgPSBwYXJh
bWV0ZXJzLm1heEJpdHJhdGU7Ci0gICAgaWYgKHBhcmFtZXRlcnMubWF4RnJhbWVyYXRlKQotICAg
ICAgICBydGNQYXJhbWV0ZXJzLm1heF9mcmFtZXJhdGUgPSBwYXJhbWV0ZXJzLm1heEZyYW1lcmF0
ZTsKLSAgICBydGNQYXJhbWV0ZXJzLnJpZCA9IHBhcmFtZXRlcnMucmlkLnV0ZjgoKS5kYXRhKCk7
Ci0gICAgaWYgKHBhcmFtZXRlcnMuc2NhbGVSZXNvbHV0aW9uRG93bkJ5ICE9IDEpCi0gICAgICAg
IHJ0Y1BhcmFtZXRlcnMuc2NhbGVfcmVzb2x1dGlvbl9kb3duX2J5ID0gcGFyYW1ldGVycy5zY2Fs
ZVJlc29sdXRpb25Eb3duQnk7Ci0KLSAgICByZXR1cm4gcnRjUGFyYW1ldGVyczsKLX0KLQogc3Rh
dGljIGlubGluZSBSVENSdHBIZWFkZXJFeHRlbnNpb25QYXJhbWV0ZXJzIHRvUlRDSGVhZGVyRXh0
ZW5zaW9uUGFyYW1ldGVycyhjb25zdCB3ZWJydGM6OlJ0cEhlYWRlckV4dGVuc2lvblBhcmFtZXRl
cnMmIHJ0Y1BhcmFtZXRlcnMpCiB7CiAgICAgUlRDUnRwSGVhZGVyRXh0ZW5zaW9uUGFyYW1ldGVy
cyBwYXJhbWV0ZXJzOwpAQCAtMTg1LDEzICsxNjAsMjYgQEAgUlRDUnRwU2VuZFBhcmFtZXRlcnMg
dG9SVENSdHBTZW5kUGFyYW1ldGVycyhjb25zdCB3ZWJydGM6OlJ0cFBhcmFtZXRlcnMmIHJ0Y1Bh
cmEKICAgICByZXR1cm4gcGFyYW1ldGVyczsKIH0KIAotd2VicnRjOjpSdHBQYXJhbWV0ZXJzIGZy
b21SVENSdHBTZW5kUGFyYW1ldGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYgcGFyYW1l
dGVycykKK3dlYnJ0Yzo6UnRwUGFyYW1ldGVycyBmcm9tUlRDUnRwU2VuZFBhcmFtZXRlcnMoY29u
c3QgUlRDUnRwU2VuZFBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIGNvbnN0IHdlYnJ0Yzo6UnRwUGFy
YW1ldGVycyYgY3VycmVudFBhcmFtZXRlcnMpCiB7Ci0gICAgd2VicnRjOjpSdHBQYXJhbWV0ZXJz
IHJ0Y1BhcmFtZXRlcnM7CisgICAgd2VicnRjOjpSdHBQYXJhbWV0ZXJzIHJ0Y1BhcmFtZXRlcnMg
PSBjdXJyZW50UGFyYW1ldGVyczsKKwogICAgIHJ0Y1BhcmFtZXRlcnMudHJhbnNhY3Rpb25faWQg
PSBwYXJhbWV0ZXJzLnRyYW5zYWN0aW9uSWQudXRmOCgpLmRhdGEoKTsKIAotICAgIGZvciAoYXV0
byYgZW5jb2RpbmcgOiBwYXJhbWV0ZXJzLmVuY29kaW5ncykKLSAgICAgICAgcnRjUGFyYW1ldGVy
cy5lbmNvZGluZ3MucHVzaF9iYWNrKGZyb21SVENFbmNvZGluZ1BhcmFtZXRlcnMoZW5jb2Rpbmcp
KTsKKyAgICAvLyBJZiBlbmNvZGluZ3Mgc2l6ZSBpcyBkaWZmZXJlbnQsIHNldHRpbmcgcGFyYW1l
dGVycyB3aWxsIGZhaWwuIExldCdzIG1ha2UgaXQgc28uCisgICAgaWYgKHBhcmFtZXRlcnMuZW5j
b2RpbmdzLnNpemUoKSAhPSBydGNQYXJhbWV0ZXJzLmVuY29kaW5ncy5zaXplKCkpCisgICAgICAg
IHJldHVybiB7IH07CisKKyAgICAvLyBXZSBjb3B5IGFsbCBjdXJyZW50IGVuY29kaW5ncyBwYXJh
bWV0ZXJzIGFuZCBvbmx5IHVwZGF0ZSBwYXJhbWV0ZXJzIHRoYXQgY2FuIGFjdHVhbGx5IGJlIHVz
ZWZ1bGx5IHVwZGF0ZWQuCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLmVu
Y29kaW5ncy5zaXplKCk7ICsraSkgeworICAgICAgICBydGNQYXJhbWV0ZXJzLmVuY29kaW5nc1tp
XS5hY3RpdmUgPSBwYXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5hY3RpdmU7CisgICAgICAgIGlmIChw
YXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5tYXhCaXRyYXRlKQorICAgICAgICAgICAgcnRjUGFyYW1l
dGVycy5lbmNvZGluZ3NbaV0ubWF4X2JpdHJhdGVfYnBzID0gcGFyYW1ldGVycy5lbmNvZGluZ3Nb
aV0ubWF4Qml0cmF0ZTsKKyAgICAgICAgaWYgKHBhcmFtZXRlcnMuZW5jb2RpbmdzW2ldLm1heEZy
YW1lcmF0ZSkKKyAgICAgICAgICAgIHJ0Y1BhcmFtZXRlcnMuZW5jb2RpbmdzW2ldLm1heF9mcmFt
ZXJhdGUgPSBwYXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5tYXhGcmFtZXJhdGU7CisgICAgfQorCisg
ICAgcnRjUGFyYW1ldGVycy5oZWFkZXJfZXh0ZW5zaW9ucy5jbGVhcigpOwogICAgIGZvciAoYXV0
byYgZXh0ZW5zaW9uIDogcGFyYW1ldGVycy5oZWFkZXJFeHRlbnNpb25zKQogICAgICAgICBydGNQ
YXJhbWV0ZXJzLmhlYWRlcl9leHRlbnNpb25zLnB1c2hfYmFjayhmcm9tUlRDSGVhZGVyRXh0ZW5z
aW9uUGFyYW1ldGVycyhleHRlbnNpb24pKTsKICAgICAvLyBDb2RlY3MgcGFyYW1ldGVycyBhcmUg
cmVhZG9ubHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENVdGlscy5oCmluZGV4IDg0MzY3NDdkZTMwY2MxYWU2
NzRiYzRhMTliNDY0YTY0NDE3ZGZhYTEuLjBjYmZmMzAwNGMyZWU0NGM2MjQ4ZmZjM2JmNGY5ZDI5
MzM3OGQxZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDVXRpbHMuaApAQCAtNDYsNyArNDYsNyBAQCBl
bnVtIGNsYXNzIFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uOwogUlRDUnRwUGFyYW1ldGVycyB0
b1JUQ1J0cFBhcmFtZXRlcnMoY29uc3Qgd2VicnRjOjpSdHBQYXJhbWV0ZXJzJik7CiB3ZWJydGM6
OlJ0cFBhcmFtZXRlcnMgZnJvbVJUQ1J0cFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwUGFyYW1ldGVy
cyYpOwogUlRDUnRwU2VuZFBhcmFtZXRlcnMgdG9SVENSdHBTZW5kUGFyYW1ldGVycyhjb25zdCB3
ZWJydGM6OlJ0cFBhcmFtZXRlcnMmKTsKLXdlYnJ0Yzo6UnRwUGFyYW1ldGVycyBmcm9tUlRDUnRw
U2VuZFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwU2VuZFBhcmFtZXRlcnMmKTsKK3dlYnJ0Yzo6UnRw
UGFyYW1ldGVycyBmcm9tUlRDUnRwU2VuZFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwU2VuZFBhcmFt
ZXRlcnMmLCBjb25zdCB3ZWJydGM6OlJ0cFBhcmFtZXRlcnMmIGN1cnJlbnRQYXJhbWV0ZXJzKTsK
IAogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24gdG9SVENSdHBUcmFuc2NlaXZlckRpcmVjdGlv
bih3ZWJydGM6OlJ0cFRyYW5zY2VpdmVyRGlyZWN0aW9uKTsKIHdlYnJ0Yzo6UnRwVHJhbnNjZWl2
ZXJEaXJlY3Rpb24gZnJvbVJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uKFJUQ1J0cFRyYW5zY2Vp
dmVyRGlyZWN0aW9uKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkYzRlMDQxOWFiYmVkNDY5OWE2YjgxYTI3NzRmNmYwYTJm
NzdhOWU1Li40NTVhNzgxODRkM2RjODEzMjFmODBmZjIwZGY5YTZkMjYwZjlmNWVhIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTgtMTItMTQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUu
Y29tPgorCisgICAgICAgIE1ha2UgUlRDUnRwU2VuZGVyLnNldFBhcmFtZXRlcnMgdG8gYWN0aXZh
dGUgc3BlY2lmaWMgZW5jb2RpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTI3MzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHdlYnJ0Yy92aWRlby1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
cnRjL3ZpZGVvLmh0bWw6CisKIDIwMTgtMTItMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgTWFrZSBIVE1MQ29udmVydGVyIHdvcmsgYWNyb3NzIHNoYWRvdyBi
b3VuZGFyaWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLWV4cGVjdGVkLnR4dAppbmRleCBjZTMxZTE5
NTE5MGRlMmZjNWM4ODQ4M2JmZGJmMDVmYmZmZDRkOWNhLi4xYzU1NTRkNGVjMTZlZDFmNGQ0MTkw
MDkyODkxNmRjMDU2NTQ5NGM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8t
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSw2IEBACiAKIAogUEFTUyBCYXNpYyB2aWRlbyBleGNoYW5nZSAKK1BBU1MgQ2Fs
bCBzZXRQYXJhbWV0ZXJzIHRvIGRpc2FibGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5nIAorUEFT
UyBDYWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFibGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5n
IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8uaHRtbCBiL0xheW91dFRl
c3RzL3dlYnJ0Yy92aWRlby5odG1sCmluZGV4IDRhN2NhMTFiNzk1N2JhNmM0NDRlNWVhOGEyZmVk
YWFjM2JjMzE3ZTEuLmY3NWE0NjAyOGExOTM4MTYwNTY0NmNkYjAyNzdmZDI3OTM2N2E0MDAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sCisrKyBiL0xheW91dFRlc3Rz
L3dlYnJ0Yy92aWRlby5odG1sCkBAIC0zOSwzNyArMzksMTAzIEBAIGZ1bmN0aW9uIHRlc3RJbWFn
ZSgpCiAgICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDJdIDwgMTAwKTsKIH0KIAotcHJvbWlz
ZV90ZXN0KCh0ZXN0KSA9PiB7Cit2YXIgcGMxLCBwYzI7Citwcm9taXNlX3Rlc3QoYXN5bmMgKHRl
c3QpID0+IHsKICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgIHRlc3RSdW5uZXIu
c2V0VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsKIAotICAgIHJldHVybiBuYXZpZ2F0b3IubWVk
aWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHthZHZhbmNlZDogW3t3aWR0aDp7bWluOjY0
MH19LCB7aGVpZ2h0OnttaW46NDgwfSB9IF19fSkudGhlbigoc3RyZWFtKSA9PiB7Ci0gICAgICAg
IGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgYXNzZXJ0X3RydWUoaW50ZXJuYWxz
LnBhZ2VNZWRpYVN0YXRlKCkuaW5jbHVkZXMoJ0hhc0FjdGl2ZVZpZGVvQ2FwdHVyZURldmljZScp
LCAiVW5leHBlY3RlZCBIYXNBY3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UiKTsKLSAgICAgICAgcmV0
dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAgIGNyZWF0
ZUNvbm5lY3Rpb25zKChmaXJzdENvbm5lY3Rpb24pID0+IHsKLSAgICAgICAgICAgICAgICB2YXIg
dHJhY2sgPSBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXTsKLSAgICAgICAgICAgICAgICBmaXJz
dENvbm5lY3Rpb24uYWRkVHJhY2soc3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0sIHN0cmVhbSk7
Ci0gICAgICAgICAgICB9LCAoc2Vjb25kQ29ubmVjdGlvbikgPT4gewotICAgICAgICAgICAgICAg
IHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9PiB7Ci0gICAgICAgICAg
ICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQudHJhY2sgaW5zdGFuY2VvZiBNZWRpYVN0
cmVhbVRyYWNrKTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodHJhY2tFdmVudC5y
ZWNlaXZlciBpbnN0YW5jZW9mIFJUQ1J0cFJlY2VpdmVyKTsKLSAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X3RydWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVhbXMpLCAiQXJyYXkuaXNB
cnJheSgpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
dHJ1ZShPYmplY3QuaXNGcm96ZW4odHJhY2tFdmVudC5zdHJlYW1zKSwgIk9iamVjdC5pc0Zyb3pl
bigpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHRyYWNrRXZlbnQudHJhY2suaWQsIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLmlkKTsK
LSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnRyYWNrLCB0cmFj
a0V2ZW50LnN0cmVhbXNbMF0uZ2V0VmlkZW9UcmFja3MoKVswXSk7Ci0gICAgICAgICAgICAgICAg
ICAgIHJlc29sdmUodHJhY2tFdmVudC5zdHJlYW1zWzBdKTsKLSAgICAgICAgICAgICAgICB9Owot
ICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJlamVjdCgiVGVz
dCB0aW1lZCBvdXQiKSwgNTAwMCk7CisgICAgY29uc3QgbG9jYWxTdHJlYW0gPSBhd2FpdCBuYXZp
Z2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHthZHZhbmNlZDogW3t3aWR0
aDp7bWluOjY0MH19LCB7aGVpZ2h0OnttaW46NDgwfSB9IF19fSk7CisgICAgaWYgKHdpbmRvdy5p
bnRlcm5hbHMpCisgICAgICAgIGFzc2VydF90cnVlKGludGVybmFscy5wYWdlTWVkaWFTdGF0ZSgp
LmluY2x1ZGVzKCdIYXNBY3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UnKSwgIlVuZXhwZWN0ZWQgSGFz
QWN0aXZlVmlkZW9DYXB0dXJlRGV2aWNlIik7CisgICAgY29uc3Qgc3RyZWFtID0gYXdhaXQgbmV3
IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICBjcmVhdGVDb25uZWN0aW9u
cygoZmlyc3RDb25uZWN0aW9uKSA9PiB7CisgICAgICAgICAgICBwYzEgPSBmaXJzdENvbm5lY3Rp
b247CisgICAgICAgICAgICBmaXJzdENvbm5lY3Rpb24uYWRkVHJhY2sobG9jYWxTdHJlYW0uZ2V0
VmlkZW9UcmFja3MoKVswXSwgbG9jYWxTdHJlYW0pOworICAgICAgICB9LCAoc2Vjb25kQ29ubmVj
dGlvbikgPT4geworICAgICAgICAgICAgcGMyID0gc2Vjb25kQ29ubmVjdGlvbjsKKyAgICAgICAg
ICAgIHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9PiB7CisgICAgICAg
ICAgICAgICAgYXNzZXJ0X3RydWUodHJhY2tFdmVudC50cmFjayBpbnN0YW5jZW9mIE1lZGlhU3Ry
ZWFtVHJhY2spOworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQucmVjZWl2
ZXIgaW5zdGFuY2VvZiBSVENSdHBSZWNlaXZlcik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVhbXMpLCAiQXJyYXkuaXNBcnJheSgpIHNo
b3VsZCByZXR1cm4gdHJ1ZSIpOworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKE9iamVjdC5p
c0Zyb3plbih0cmFja0V2ZW50LnN0cmVhbXMpLCAiT2JqZWN0LmlzRnJvemVuKCkgc2hvdWxkIHJl
dHVybiB0cnVlIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnRy
YWNrLmlkLCBsb2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLmlkKTsKKyAgICAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZlbnQudHJhY2ssIHRyYWNrRXZlbnQuc3RyZWFtc1sw
XS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKKyAgICAgICAgICAgICAgICByZXNvbHZlKHRyYWNrRXZl
bnQuc3RyZWFtc1swXSk7CisgICAgICAgICAgICB9OwogICAgICAgICB9KTsKLSAgICB9KS50aGVu
KChzdHJlYW0pID0+IHsKLSAgICAgICAgdmlkZW8uc3JjT2JqZWN0ID0gc3RyZWFtOwotICAgICAg
ICByZXR1cm4gdmlkZW8ucGxheSgpOwotICAgIH0pLnRoZW4odGVzdC5zdGVwX2Z1bmMoKCkgPT4g
ewotICAgICAgICB0ZXN0SW1hZ2UoKTsKLSAgICB9KSk7CisgICAgICAgIHNldFRpbWVvdXQoKCkg
PT4gcmVqZWN0KCJUZXN0IHRpbWVkIG91dCIpLCA1MDAwKTsKKyAgICB9KTsKKworICAgIHZpZGVv
LnNyY09iamVjdCA9IHN0cmVhbTsKKyAgICBhd2FpdCB2aWRlby5wbGF5KCk7CisKKyAgICB0ZXN0
SW1hZ2UoKTsKIH0sICJCYXNpYyB2aWRlbyBleGNoYW5nZSIpOworCithc3luYyBmdW5jdGlvbiBn
ZXRJbmJvdW5kUlRQU3RhdHNOdW1iZXJPZkRlY29kZWRGcmFtZXMoY29ubmVjdGlvbikKK3sKKyAg
ICB2YXIgcmVwb3J0ID0gYXdhaXQgY29ubmVjdGlvbi5nZXRTdGF0cygpOworICAgIHZhciBmcmFt
ZXNEZWNvZGVkOworICAgIHJlcG9ydC5mb3JFYWNoKChzdGF0SXRlbSkgPT4geworICAgICAgICBp
ZiAoc3RhdEl0ZW0udHlwZSA9PT0gImluYm91bmQtcnRwIikKKyAgICAgICAgICAgIGZyYW1lc0Rl
Y29kZWQgPSBzdGF0SXRlbS5mcmFtZXNEZWNvZGVkOworICAgIH0pOworICAgIHJldHVybiBmcmFt
ZXNEZWNvZGVkOworfQorCithc3luYyBmdW5jdGlvbiB0ZXN0RnJhbWVEZWNvZGVkSW5jcmVhc2Vk
KGNvbm5lY3Rpb24sIGNvdW50LCBwcmV2aW91c0ZyYW1lc051bWJlcikKK3sKKyAgICBpZiAocHJl
dmlvdXNGcmFtZXNOdW1iZXIgPT09IHVuZGVmaW5lZCkgeworICAgICAgICBsZXQgbnVtYmVyID0g
YXdhaXQgZ2V0SW5ib3VuZFJUUFN0YXRzTnVtYmVyT2ZEZWNvZGVkRnJhbWVzKGNvbm5lY3Rpb24p
OworICAgICAgICBhd2FpdCB3YWl0Rm9yKDEwMDApOworICAgICAgICByZXR1cm4gdGVzdEZyYW1l
RGVjb2RlZEluY3JlYXNlZChjb25uZWN0aW9uLCAwLCBudW1iZXIpOworICAgIH0KKworICAgIHZh
ciBudW1iZXIgPSBhd2FpdCBnZXRJbmJvdW5kUlRQU3RhdHNOdW1iZXJPZkRlY29kZWRGcmFtZXMo
Y29ubmVjdGlvbik7CisgICAgaWYgKHByZXZpb3VzRnJhbWVzTnVtYmVyICYmIG51bWJlciA+IHBy
ZXZpb3VzRnJhbWVzTnVtYmVyKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoY291bnQgPj0g
MjApCisgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgidGVzdCBpbmNyZWFzaW5nIGZyYW1l
IGVuY29kZWQgdGltZWQgb3V0Iik7CisKKyAgICBhd2FpdCB3YWl0Rm9yKDEwMDApOworICAgIHJl
dHVybiB0ZXN0RnJhbWVEZWNvZGVkSW5jcmVhc2VkKGNvbm5lY3Rpb24sICsrY291bnQsIHByZXZp
b3VzRnJhbWVzTnVtYmVyKTsKK30KKworYXN5bmMgZnVuY3Rpb24gdGVzdEZyYW1lRGVjb2RlZERp
ZE5vdEluY3JlYXNlZChjb25uZWN0aW9uLCBjb3VudCwgcHJldmlvdXNGcmFtZXNOdW1iZXIpCit7
CisgICAgaWYgKHByZXZpb3VzRnJhbWVzTnVtYmVyID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAg
bGV0IG51bWJlciA9IGF3YWl0IGdldEluYm91bmRSVFBTdGF0c051bWJlck9mRGVjb2RlZEZyYW1l
cyhjb25uZWN0aW9uKTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcigxMDApOworICAgICAgICByZXR1
cm4gdGVzdEZyYW1lRGVjb2RlZERpZE5vdEluY3JlYXNlZChjb25uZWN0aW9uLCAwLCBudW1iZXIp
OworICAgIH0KKworICAgIHZhciBudW1iZXIgPSBhd2FpdCBnZXRJbmJvdW5kUlRQU3RhdHNOdW1i
ZXJPZkRlY29kZWRGcmFtZXMoY29ubmVjdGlvbik7CisgICAgaWYgKHByZXZpb3VzRnJhbWVzTnVt
YmVyICYmIG51bWJlciA9PSBwcmV2aW91c0ZyYW1lc051bWJlcikKKyAgICAgICAgcmV0dXJuOwor
CisgICAgaWYgKGNvdW50ID49IDIwKQorICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInRl
c3QgaW5jcmVhc2luZyBmcmFtZSBlbmNvZGVkIHRpbWVkIG91dCIpOworCisgICAgYXdhaXQgd2Fp
dEZvcigxMDApOworICAgIHJldHVybiB0ZXN0RnJhbWVEZWNvZGVkSW5jcmVhc2VkKGNvbm5lY3Rp
b24sICsrY291bnQsIG51bWJlcik7Cit9CisKK3Byb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4g
eworICAgbGV0IHAgPSBwYzEuZ2V0U2VuZGVycygpWzBdLmdldFBhcmFtZXRlcnMoKTsKKyAgIHAu
ZW5jb2RpbmdzWzBdLmFjdGl2ZSA9IGZhbHNlOworICAgYXdhaXQgcGMxLmdldFNlbmRlcnMoKVsw
XS5zZXRQYXJhbWV0ZXJzKHApOworCisgICBhd2FpdCB0ZXN0RnJhbWVEZWNvZGVkRGlkTm90SW5j
cmVhc2VkKHBjMik7Cit9LCAiQ2FsbCBzZXRQYXJhbWV0ZXJzIHRvIGRpc2FibGUgc2VuZGluZyBh
IGdpdmVuIGVuY29kaW5nIik7CisKK3Byb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4geworICAg
bGV0IHAgPSBwYzEuZ2V0U2VuZGVycygpWzBdLmdldFBhcmFtZXRlcnMoKTsKKyAgIHAuZW5jb2Rp
bmdzWzBdLmFjdGl2ZSA9IHRydWU7CisgICBhd2FpdCBwYzEuZ2V0U2VuZGVycygpWzBdLnNldFBh
cmFtZXRlcnMocCk7CisKKyAgIGF3YWl0IHRlc3RGcmFtZURlY29kZWRJbmNyZWFzZWQocGMyKTsK
K30sICJDYWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFibGUgc2VuZGluZyBhIGdpdmVuIGVuY29k
aW5nIik7CiAgICAgICAgIDwvc2NyaXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357369</attachid>
            <date>2018-12-14 18:12:15 -0800</date>
            <delta_ts>2018-12-15 09:40:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192732-20181214181222.patch</filename>
            <type>text/plain</type>
            <size>19092</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA3NWFjY2ZhZmRhYjg4YTAzOGQxMDljYzcwYzcxMGZjNzFhNWNjZmYxLi5lMGE2
MGE1OTFlZDU5OGFmMTdiZGVlNTYxNGIwZTc2ZTMzMDlhZGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0xMi0xNCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBSVENSdHBTZW5kZXIuc2V0
UGFyYW1ldGVycyB0byBhY3RpdmF0ZSBzcGVjaWZpYyBlbmNvZGluZ3MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjczMgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2Vi
cnRjLmlPUy5leHA6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLmlPU3NpbS5l
eHA6CisgICAgICAgICogQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLm1hYy5leHA6CisKIDIwMTgt
MTItMTQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFNldCBr
VlRWaWRlb0VuY29kZXJTcGVjaWZpY2F0aW9uX1VzYWdlIGJvdGggd2hlbiBjcmVhdGluZyB0aGUg
Y29tcHJlc3Npb24gc2Vzc2lvbiBhbmQgb25jZSBjcmVhdGVkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjYzNTE5
YjUwMTRkMjY5NWFmOGUwODc4YzZmNmQ3ODBiNGQwMzA4ZC4uZjA3Y2Q0Njg0ZWQzOTMwYTRkOGMw
ZWY2NTNjZDNkMWFkMzVhMGE0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE4LTEy
LTE0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIFJU
Q1J0cFNlbmRlci5zZXRQYXJhbWV0ZXJzIHRvIGFjdGl2YXRlIHNwZWNpZmljIGVuY29kaW5ncwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNzMyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGNvbnZl
cnNpb24gYmV0d2VlbiBsaWJ3ZWJydGMgYW5kIFdlYkNvcmUgaXMgbG9zc3kgZm9yIHNlbmQgcGFy
YW1ldGVycy4KKyAgICAgICAgTGlid2VicnRjIGNoZWNraW5nIHRoZSBkaWZmZXJlbmNlcyBvZiB2
YWx1ZXMsIGNhbGwgdG8gc2V0UGFyYW1ldGVycyB3aWxsIG9mdGVuIGZhaWwuCisKKyAgICAgICAg
R2l2ZW4gc29tZSBwYXJhbWV0ZXJzIGNhbm5vdCBiZSBleHBvc2VkLCB0aGUgc2VuZGVyIGJhY2tl
bmQga2VlcHMgdGhlCisgICAgICAgIGN1cnJlbnQgc2V0IG9mIHBhcmFtZXRlcnMgd2hlbiBnYXRo
ZXJlZCBhbmQgcmV1c2VzIHRoZW0gd2hlbiBwYXJhbWV0ZXJzIGFyZSBzZXQuCisKKyAgICAgICAg
Rm9yIGVuY29kaW5ncywgd2Ugb25seSBjaGFuZ2UgYWN0aXZhdGUvbWF4Qml0UmF0ZS9tYXhGcmFt
ZVJhdGUgYXMKKyAgICAgICAgdGhlc2UgYXJlIHRoZSBtb3N0IGltcG9ydGFudCBwYXJhbWV0ZXJz
IHRvIGJlIGFibGUgdG8gbW9kaWZ5LgorCisgICAgICAgIENvdmVyZWQgYnkgYWRkZWQgdGVzdHMg
aW4gd2VicnRjL3ZpZGVvLmh0bWwuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xp
YndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQ6OmdldFBhcmFtZXRlcnMgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6TGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZDo6c2V0UGFyYW1ldGVycyk6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVy
QmFja2VuZC5oOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldl
YlJUQ1V0aWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmZyb21SVENSdHBTZW5kUGFyYW1ldGVy
cyk6CisgICAgICAgIChXZWJDb3JlOjpmcm9tUlRDRW5jb2RpbmdQYXJhbWV0ZXJzKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENVdGls
cy5oOgorCiAyMDE4LTEyLTE0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAog
ICAgICAgICBnZXRTZW5kZXJzL2dldFJlY2VpdmVycygpIHNob3VsZCBub3QgcmV0dXJuIGNsb3Nl
ZCB0cmFuc2NlaXZlciBzZW5kZXJzL3JlY2VpdmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5pT1MuZXhwIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5pT1MuZXhwCmlu
ZGV4IDYyMjg2ZWRjNTUyZGFhZGQyOWQzMTQzNzM4NTA3MTc1NTY0ZGVlYjguLmEzYmU1NjQ3NDAz
ZjRlNmUyZjI1YjBlYTYzOWE2NjIwNDdlYTkxYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9saWJ3ZWJydGMuaU9TLmV4cAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLmlPUy5leHAK
QEAgLTIzOCwzICsyMzgsMTEgQEAgX19aTks2d2VicnRjMjBBdWRpb1NvdXJjZUludGVyZmFjZTdv
cHRpb25zRXYKIF9fWlRWTjZ3ZWJydGMyMEF1ZGlvU291cmNlSW50ZXJmYWNlRQogX19aTjZ3ZWJy
dGMyM1BlZXJDb25uZWN0aW9uSW50ZXJmYWNlMjFwZWVyX2Nvbm5lY3Rpb25fc3RhdGVFdgogX19a
TkszcnRjMTROZXR3b3JrTWFuYWdlcjE2R2V0TWRuc1Jlc3BvbmRlckV2CitfX1pONndlYnJ0YzE4
UnRwQ29kZWNQYXJhbWV0ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMThSdHBDb2RlY1BhcmFtZXRl
cnNDMUV2CitfX1pONndlYnJ0YzE4UnRwQ29kZWNQYXJhbWV0ZXJzRDFFdgorX19aTjZ3ZWJydGMx
M1J0cFBhcmFtZXRlcnNDMUVSS1MwXworX19aTjZ3ZWJydGMxNlJ0cEZlY1BhcmFtZXRlcnNDMUVS
S1MwXworX19aTjZ3ZWJydGMxNlJ0cEZlY1BhcmFtZXRlcnNEMUV2CitfX1pONndlYnJ0YzE2UnRw
UnR4UGFyYW1ldGVyc0MxRVJLUzBfCitfX1pONndlYnJ0YzE2UnRwUnR4UGFyYW1ldGVyc0QxRXYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9s
aWJ3ZWJydGMuaU9Tc2ltLmV4cCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1
cmF0aW9ucy9saWJ3ZWJydGMuaU9Tc2ltLmV4cAppbmRleCBlMzEyNmJmMDZmZDk4NzBhYTlmM2Y5
OWM0NzUzY2UxYzgwMTM4Yzg1Li42NjYyNjJhNTA5MDE4OWJjOWY5MDU1OGVlZDkyYjhiZmVkMWQ2
ODU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlv
bnMvbGlid2VicnRjLmlPU3NpbS5leHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5pT1NzaW0uZXhwCkBAIC0yMzksMyArMjM5LDExIEBA
IF9fWk5LNndlYnJ0YzIwQXVkaW9Tb3VyY2VJbnRlcmZhY2U3b3B0aW9uc0V2CiBfX1pUVk42d2Vi
cnRjMjBBdWRpb1NvdXJjZUludGVyZmFjZUUKIF9fWk42d2VicnRjMjNQZWVyQ29ubmVjdGlvbklu
dGVyZmFjZTIxcGVlcl9jb25uZWN0aW9uX3N0YXRlRXYKIF9fWk5LM3J0YzE0TmV0d29ya01hbmFn
ZXIxNkdldE1kbnNSZXNwb25kZXJFdgorX19aTjZ3ZWJydGMxOFJ0cENvZGVjUGFyYW1ldGVyc0Mx
RVJLUzBfCitfX1pONndlYnJ0YzE4UnRwQ29kZWNQYXJhbWV0ZXJzQzFFdgorX19aTjZ3ZWJydGMx
OFJ0cENvZGVjUGFyYW1ldGVyc0QxRXYKK19fWk42d2VicnRjMTNSdHBQYXJhbWV0ZXJzQzFFUktT
MF8KK19fWk42d2VicnRjMTZSdHBGZWNQYXJhbWV0ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMTZS
dHBGZWNQYXJhbWV0ZXJzRDFFdgorX19aTjZ3ZWJydGMxNlJ0cFJ0eFBhcmFtZXRlcnNDMUVSS1Mw
XworX19aTjZ3ZWJydGMxNlJ0cFJ0eFBhcmFtZXRlcnNEMUV2CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLm1hYy5leHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjLm1hYy5l
eHAKaW5kZXggZTMxMjZiZjA2ZmQ5ODcwYWE5ZjNmOTljNDc1M2NlMWM4MDEzOGM4NS4uNjY2MjYy
YTUwOTAxODliYzlmOTA1NThlZWQ5MmI4YmZlZDFkNjg1OSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Yy5tYWMuZXhwCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9saWJ3ZWJydGMubWFj
LmV4cApAQCAtMjM5LDMgKzIzOSwxMSBAQCBfX1pOSzZ3ZWJydGMyMEF1ZGlvU291cmNlSW50ZXJm
YWNlN29wdGlvbnNFdgogX19aVFZONndlYnJ0YzIwQXVkaW9Tb3VyY2VJbnRlcmZhY2VFCiBfX1pO
NndlYnJ0YzIzUGVlckNvbm5lY3Rpb25JbnRlcmZhY2UyMXBlZXJfY29ubmVjdGlvbl9zdGF0ZUV2
CiBfX1pOSzNydGMxNE5ldHdvcmtNYW5hZ2VyMTZHZXRNZG5zUmVzcG9uZGVyRXYKK19fWk42d2Vi
cnRjMThSdHBDb2RlY1BhcmFtZXRlcnNDMUVSS1MwXworX19aTjZ3ZWJydGMxOFJ0cENvZGVjUGFy
YW1ldGVyc0MxRXYKK19fWk42d2VicnRjMThSdHBDb2RlY1BhcmFtZXRlcnNEMUV2CitfX1pONndl
YnJ0YzEzUnRwUGFyYW1ldGVyc0MxRVJLUzBfCitfX1pONndlYnJ0YzE2UnRwRmVjUGFyYW1ldGVy
c0MxRVJLUzBfCitfX1pONndlYnJ0YzE2UnRwRmVjUGFyYW1ldGVyc0QxRXYKK19fWk42d2VicnRj
MTZSdHBSdHhQYXJhbWV0ZXJzQzFFUktTMF8KK19fWk42d2VicnRjMTZSdHBSdHhQYXJhbWV0ZXJz
RDFFdgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3
ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmNwcApp
bmRleCAwZjdkMmI1OTYzNzc3YTQwYjAzNjZiNjc2Y2FiYzU3MDM2YjNhMjMwLi4yYzFjMDE1OGI4
ODc2M2RlYjI4ZjMyYzJlODQzNDQxN2VlNTU0ZTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5k
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9M
aWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmNwcApAQCAtMTE3LDcgKzExNyw4IEBAIFJUQ1J0cFNl
bmRQYXJhbWV0ZXJzIExpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQ6OmdldFBhcmFtZXRlcnMoKSBj
b25zdAogICAgIGlmICghbV9ydGNTZW5kZXIpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAgICBy
ZXR1cm4gdG9SVENSdHBTZW5kUGFyYW1ldGVycyhtX3J0Y1NlbmRlci0+R2V0UGFyYW1ldGVycygp
KTsKKyAgICBtX2N1cnJlbnRQYXJhbWV0ZXJzID0gbV9ydGNTZW5kZXItPkdldFBhcmFtZXRlcnMo
KTsKKyAgICByZXR1cm4gdG9SVENSdHBTZW5kUGFyYW1ldGVycygqbV9jdXJyZW50UGFyYW1ldGVy
cyk7CiB9CiAKIHZvaWQgTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZDo6c2V0UGFyYW1ldGVycyhj
b25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYgcGFyYW1ldGVycywgRE9NUHJvbWlzZURlZmVycmVk
PHZvaWQ+JiYgcHJvbWlzZSkKQEAgLTEyNiw3ICsxMjcsMTcgQEAgdm9pZCBMaWJXZWJSVENSdHBT
ZW5kZXJCYWNrZW5kOjpzZXRQYXJhbWV0ZXJzKGNvbnN0IFJUQ1J0cFNlbmRQYXJhbWV0ZXJzJiBw
YXJhbWUKICAgICAgICAgcHJvbWlzZS5yZWplY3QoTm90U3VwcG9ydGVkRXJyb3IpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIGF1dG8gZXJyb3IgPSBtX3J0Y1NlbmRlci0+U2V0UGFyYW1l
dGVycyhmcm9tUlRDUnRwU2VuZFBhcmFtZXRlcnMocGFyYW1ldGVycykpOworCisgICAgaWYgKCFt
X2N1cnJlbnRQYXJhbWV0ZXJzKSB7CisgICAgICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7
IEludmFsaWRTdGF0ZUVycm9yLCAiZ2V0UGFyYW1ldGVycyBtdXN0IGJlIGNhbGxlZCBiZWZvcmUg
c2V0UGFyYW1ldGVycyJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8g
cnRjUGFyYW1ldGVycyA9IFdURk1vdmUoKm1fY3VycmVudFBhcmFtZXRlcnMpOworICAgIHVwZGF0
ZVJUQ1J0cFNlbmRQYXJhbWV0ZXJzKHBhcmFtZXRlcnMsIHJ0Y1BhcmFtZXRlcnMpOworICAgIG1f
Y3VycmVudFBhcmFtZXRlcnMgPSBzdGQ6Om51bGxvcHQ7CisKKyAgICBhdXRvIGVycm9yID0gbV9y
dGNTZW5kZXItPlNldFBhcmFtZXRlcnMocnRjUGFyYW1ldGVycyk7CiAgICAgaWYgKCFlcnJvci5v
aygpKSB7CiAgICAgICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCBlcnJvci5tZXNzYWdlKCkgfSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQuaAppbmRleCBhZDU2OGQwZDRiMWRlZDZkNWJm
NWEzZDMzYjMzMDI0NzQ1NjdlNmRhLi5lZTYxNWE0MGM0ZmIzOThjNmIwNDMxMGQ4YzFjZTYxZTY4
MThhMTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xp
YndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5o
CkBAIC0xMTQsNiArMTE0LDcgQEAgcHJpdmF0ZToKICAgICBXZWFrUHRyPExpYldlYlJUQ1BlZXJD
b25uZWN0aW9uQmFja2VuZD4gbV9wZWVyQ29ubmVjdGlvbkJhY2tlbmQ7CiAgICAgcnRjOjpzY29w
ZWRfcmVmcHRyPHdlYnJ0Yzo6UnRwU2VuZGVySW50ZXJmYWNlPiBtX3J0Y1NlbmRlcjsKICAgICBT
b3VyY2UgbV9zb3VyY2U7CisgICAgbXV0YWJsZSBzdGQ6Om9wdGlvbmFsPHdlYnJ0Yzo6UnRwUGFy
YW1ldGVycz4gbV9jdXJyZW50UGFyYW1ldGVyczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2Vi
cnRjL0xpYldlYlJUQ1V0aWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vbGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmNwcAppbmRleCBlODEyNzc3ZjEyNzUyMDY4ZWVh
MjIzYmZiODJkNDVlZmIyMDc3YmY1Li5kZGJiNWYwMTNmYThhM2Q0YzU5YTE5MTM5OWRiMmIzMmI4
ZjVjOWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xp
YndlYnJ0Yy9MaWJXZWJSVENVdGlscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDVXRpbHMuY3BwCkBAIC03MiwzMSArNzIsNiBA
QCBzdGF0aWMgaW5saW5lIFJUQ1J0cEVuY29kaW5nUGFyYW1ldGVycyB0b1JUQ0VuY29kaW5nUGFy
YW1ldGVycyhjb25zdCB3ZWJydGM6OlJ0cAogICAgIHJldHVybiBwYXJhbWV0ZXJzOwogfQogCi1z
dGF0aWMgaW5saW5lIHdlYnJ0Yzo6UnRwRW5jb2RpbmdQYXJhbWV0ZXJzIGZyb21SVENFbmNvZGlu
Z1BhcmFtZXRlcnMoY29uc3QgUlRDUnRwRW5jb2RpbmdQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQot
ewotICAgIHdlYnJ0Yzo6UnRwRW5jb2RpbmdQYXJhbWV0ZXJzIHJ0Y1BhcmFtZXRlcnM7Ci0KLSAg
ICBpZiAocGFyYW1ldGVycy5kdHgpIHsKLSAgICAgICAgc3dpdGNoICgqcGFyYW1ldGVycy5kdHgp
IHsKLSAgICAgICAgY2FzZSBSVENEdHhTdGF0dXM6OkRpc2FibGVkOgotICAgICAgICAgICAgcnRj
UGFyYW1ldGVycy5kdHggPSB3ZWJydGM6OkR0eFN0YXR1czo6RElTQUJMRUQ7Ci0gICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgY2FzZSBSVENEdHhTdGF0dXM6OkVuYWJsZWQ6Ci0gICAgICAgICAg
ICBydGNQYXJhbWV0ZXJzLmR0eCA9IHdlYnJ0Yzo6RHR4U3RhdHVzOjpFTkFCTEVEOwotICAgICAg
ICB9Ci0gICAgfQotICAgIHJ0Y1BhcmFtZXRlcnMuYWN0aXZlID0gcGFyYW1ldGVycy5hY3RpdmU7
Ci0gICAgaWYgKHBhcmFtZXRlcnMubWF4Qml0cmF0ZSkKLSAgICAgICAgcnRjUGFyYW1ldGVycy5t
YXhfYml0cmF0ZV9icHMgPSBwYXJhbWV0ZXJzLm1heEJpdHJhdGU7Ci0gICAgaWYgKHBhcmFtZXRl
cnMubWF4RnJhbWVyYXRlKQotICAgICAgICBydGNQYXJhbWV0ZXJzLm1heF9mcmFtZXJhdGUgPSBw
YXJhbWV0ZXJzLm1heEZyYW1lcmF0ZTsKLSAgICBydGNQYXJhbWV0ZXJzLnJpZCA9IHBhcmFtZXRl
cnMucmlkLnV0ZjgoKS5kYXRhKCk7Ci0gICAgaWYgKHBhcmFtZXRlcnMuc2NhbGVSZXNvbHV0aW9u
RG93bkJ5ICE9IDEpCi0gICAgICAgIHJ0Y1BhcmFtZXRlcnMuc2NhbGVfcmVzb2x1dGlvbl9kb3du
X2J5ID0gcGFyYW1ldGVycy5zY2FsZVJlc29sdXRpb25Eb3duQnk7Ci0KLSAgICByZXR1cm4gcnRj
UGFyYW1ldGVyczsKLX0KLQogc3RhdGljIGlubGluZSBSVENSdHBIZWFkZXJFeHRlbnNpb25QYXJh
bWV0ZXJzIHRvUlRDSGVhZGVyRXh0ZW5zaW9uUGFyYW1ldGVycyhjb25zdCB3ZWJydGM6OlJ0cEhl
YWRlckV4dGVuc2lvblBhcmFtZXRlcnMmIHJ0Y1BhcmFtZXRlcnMpCiB7CiAgICAgUlRDUnRwSGVh
ZGVyRXh0ZW5zaW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwpAQCAtMTg1LDEzICsxNjAsMjggQEAg
UlRDUnRwU2VuZFBhcmFtZXRlcnMgdG9SVENSdHBTZW5kUGFyYW1ldGVycyhjb25zdCB3ZWJydGM6
OlJ0cFBhcmFtZXRlcnMmIHJ0Y1BhcmEKICAgICByZXR1cm4gcGFyYW1ldGVyczsKIH0KIAotd2Vi
cnRjOjpSdHBQYXJhbWV0ZXJzIGZyb21SVENSdHBTZW5kUGFyYW1ldGVycyhjb25zdCBSVENSdHBT
ZW5kUGFyYW1ldGVycyYgcGFyYW1ldGVycykKK3ZvaWQgdXBkYXRlUlRDUnRwU2VuZFBhcmFtZXRl
cnMoY29uc3QgUlRDUnRwU2VuZFBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIHdlYnJ0Yzo6UnRwUGFy
YW1ldGVycyYgY3VycmVudFBhcmFtZXRlcnMpCiB7Ci0gICAgd2VicnRjOjpSdHBQYXJhbWV0ZXJz
IHJ0Y1BhcmFtZXRlcnM7CisgICAgd2VicnRjOjpSdHBQYXJhbWV0ZXJzIHJ0Y1BhcmFtZXRlcnMg
PSBjdXJyZW50UGFyYW1ldGVyczsKKwogICAgIHJ0Y1BhcmFtZXRlcnMudHJhbnNhY3Rpb25faWQg
PSBwYXJhbWV0ZXJzLnRyYW5zYWN0aW9uSWQudXRmOCgpLmRhdGEoKTsKIAotICAgIGZvciAoYXV0
byYgZW5jb2RpbmcgOiBwYXJhbWV0ZXJzLmVuY29kaW5ncykKLSAgICAgICAgcnRjUGFyYW1ldGVy
cy5lbmNvZGluZ3MucHVzaF9iYWNrKGZyb21SVENFbmNvZGluZ1BhcmFtZXRlcnMoZW5jb2Rpbmcp
KTsKKyAgICBpZiAocGFyYW1ldGVycy5lbmNvZGluZ3Muc2l6ZSgpICE9IHJ0Y1BhcmFtZXRlcnMu
ZW5jb2RpbmdzLnNpemUoKSkgeworICAgICAgICAvLyBJZiBlbmNvZGluZ3Mgc2l6ZSBpcyBkaWZm
ZXJlbnQsIHNldHRpbmcgcGFyYW1ldGVycyB3aWxsIGZhaWwuIExldCdzIG1ha2UgaXQgc28uCisg
ICAgICAgIHJ0Y1BhcmFtZXRlcnMuZW5jb2RpbmdzLmNsZWFyKCk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICAvLyBXZSBjb3B5IGFsbCBjdXJyZW50IGVuY29kaW5ncyBwYXJhbWV0ZXJz
IGFuZCBvbmx5IHVwZGF0ZSBwYXJhbWV0ZXJzIHRoYXQgY2FuIGFjdHVhbGx5IGJlIHVzZWZ1bGx5
IHVwZGF0ZWQuCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLmVuY29kaW5n
cy5zaXplKCk7ICsraSkgeworICAgICAgICBydGNQYXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5hY3Rp
dmUgPSBwYXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5hY3RpdmU7CisgICAgICAgIGlmIChwYXJhbWV0
ZXJzLmVuY29kaW5nc1tpXS5tYXhCaXRyYXRlKQorICAgICAgICAgICAgcnRjUGFyYW1ldGVycy5l
bmNvZGluZ3NbaV0ubWF4X2JpdHJhdGVfYnBzID0gcGFyYW1ldGVycy5lbmNvZGluZ3NbaV0ubWF4
Qml0cmF0ZTsKKyAgICAgICAgaWYgKHBhcmFtZXRlcnMuZW5jb2RpbmdzW2ldLm1heEZyYW1lcmF0
ZSkKKyAgICAgICAgICAgIHJ0Y1BhcmFtZXRlcnMuZW5jb2RpbmdzW2ldLm1heF9mcmFtZXJhdGUg
PSBwYXJhbWV0ZXJzLmVuY29kaW5nc1tpXS5tYXhGcmFtZXJhdGU7CisgICAgfQorCisgICAgcnRj
UGFyYW1ldGVycy5oZWFkZXJfZXh0ZW5zaW9ucy5jbGVhcigpOwogICAgIGZvciAoYXV0byYgZXh0
ZW5zaW9uIDogcGFyYW1ldGVycy5oZWFkZXJFeHRlbnNpb25zKQogICAgICAgICBydGNQYXJhbWV0
ZXJzLmhlYWRlcl9leHRlbnNpb25zLnB1c2hfYmFjayhmcm9tUlRDSGVhZGVyRXh0ZW5zaW9uUGFy
YW1ldGVycyhleHRlbnNpb24pKTsKICAgICAvLyBDb2RlY3MgcGFyYW1ldGVycyBhcmUgcmVhZG9u
bHkKQEAgLTIwNyw3ICsxOTcsNiBAQCB3ZWJydGM6OlJ0cFBhcmFtZXRlcnMgZnJvbVJUQ1J0cFNl
bmRQYXJhbWV0ZXJzKGNvbnN0IFJUQ1J0cFNlbmRQYXJhbWV0ZXJzJiBwYXJhbQogICAgICAgICBy
dGNQYXJhbWV0ZXJzLmRlZ3JhZGF0aW9uX3ByZWZlcmVuY2UgPSB3ZWJydGM6OkRlZ3JhZGF0aW9u
UHJlZmVyZW5jZTo6QkFMQU5DRUQ7CiAgICAgICAgIGJyZWFrOwogICAgIH0KLSAgICByZXR1cm4g
cnRjUGFyYW1ldGVyczsKIH0KIAogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24gdG9SVENSdHBU
cmFuc2NlaXZlckRpcmVjdGlvbih3ZWJydGM6OlJ0cFRyYW5zY2VpdmVyRGlyZWN0aW9uIHJ0Y0Rp
cmVjdGlvbikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENVdGlscy5oCmluZGV4IDg0MzY3NDdkZTMwY2MxYWU2
NzRiYzRhMTliNDY0YTY0NDE3ZGZhYTEuLmI0NDlhZWJkODEwMDU1ODRlNTI0YjZiM2Q3NmMxZTc0
OGI3OGZjYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
bGlid2VicnRjL0xpYldlYlJUQ1V0aWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDVXRpbHMuaApAQCAtNDQsOSArNDQsOSBAQCBz
dHJ1Y3QgUlRDUnRwVHJhbnNjZWl2ZXJJbml0OwogZW51bSBjbGFzcyBSVENSdHBUcmFuc2NlaXZl
ckRpcmVjdGlvbjsKIAogUlRDUnRwUGFyYW1ldGVycyB0b1JUQ1J0cFBhcmFtZXRlcnMoY29uc3Qg
d2VicnRjOjpSdHBQYXJhbWV0ZXJzJik7Ci13ZWJydGM6OlJ0cFBhcmFtZXRlcnMgZnJvbVJUQ1J0
cFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwUGFyYW1ldGVycyYpOwordm9pZCB1cGRhdGVSVENSdHBT
ZW5kUGFyYW1ldGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYsIHdlYnJ0Yzo6UnRwUGFy
YW1ldGVycyYpOwogUlRDUnRwU2VuZFBhcmFtZXRlcnMgdG9SVENSdHBTZW5kUGFyYW1ldGVycyhj
b25zdCB3ZWJydGM6OlJ0cFBhcmFtZXRlcnMmKTsKLXdlYnJ0Yzo6UnRwUGFyYW1ldGVycyBmcm9t
UlRDUnRwU2VuZFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwU2VuZFBhcmFtZXRlcnMmKTsKK3dlYnJ0
Yzo6UnRwUGFyYW1ldGVycyBmcm9tUlRDUnRwU2VuZFBhcmFtZXRlcnMoY29uc3QgUlRDUnRwU2Vu
ZFBhcmFtZXRlcnMmLCBjb25zdCB3ZWJydGM6OlJ0cFBhcmFtZXRlcnMmIGN1cnJlbnRQYXJhbWV0
ZXJzKTsKIAogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24gdG9SVENSdHBUcmFuc2NlaXZlckRp
cmVjdGlvbih3ZWJydGM6OlJ0cFRyYW5zY2VpdmVyRGlyZWN0aW9uKTsKIHdlYnJ0Yzo6UnRwVHJh
bnNjZWl2ZXJEaXJlY3Rpb24gZnJvbVJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uKFJUQ1J0cFRy
YW5zY2VpdmVyRGlyZWN0aW9uKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkYzRlMDQxOWFiYmVkNDY5OWE2YjgxYTI3NzRm
NmYwYTJmNzdhOWU1Li40NTVhNzgxODRkM2RjODEzMjFmODBmZjIwZGY5YTZkMjYwZjlmNWVhIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTgtMTItMTQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5A
YXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgUlRDUnRwU2VuZGVyLnNldFBhcmFtZXRlcnMgdG8g
YWN0aXZhdGUgc3BlY2lmaWMgZW5jb2RpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI3MzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHdlYnJ0Yy92aWRlby1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2VicnRjL3ZpZGVvLmh0bWw6CisKIDIwMTgtMTItMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgTWFrZSBIVE1MQ29udmVydGVyIHdvcmsgYWNyb3NzIHNo
YWRvdyBib3VuZGFyaWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8tZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLWV4cGVjdGVkLnR4dAppbmRleCBj
ZTMxZTE5NTE5MGRlMmZjNWM4ODQ4M2JmZGJmMDVmYmZmZDRkOWNhLi4xYzU1NTRkNGVjMTZlZDFm
NGQ0MTkwMDkyODkxNmRjMDU2NTQ5NGM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJydGMv
dmlkZW8tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby1leHBlY3Rl
ZC50eHQKQEAgLTEsNCArMSw2IEBACiAKIAogUEFTUyBCYXNpYyB2aWRlbyBleGNoYW5nZSAKK1BB
U1MgQ2FsbCBzZXRQYXJhbWV0ZXJzIHRvIGRpc2FibGUgc2VuZGluZyBhIGdpdmVuIGVuY29kaW5n
IAorUEFTUyBDYWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFibGUgc2VuZGluZyBhIGdpdmVuIGVu
Y29kaW5nIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJydGMvdmlkZW8uaHRtbCBiL0xh
eW91dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sCmluZGV4IDRhN2NhMTFiNzk1N2JhNmM0NDRlNWVh
OGEyZmVkYWFjM2JjMzE3ZTEuLmY3NWE0NjAyOGExOTM4MTYwNTY0NmNkYjAyNzdmZDI3OTM2N2E0
MDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sCisrKyBiL0xheW91
dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sCkBAIC0zOSwzNyArMzksMTAzIEBAIGZ1bmN0aW9uIHRl
c3RJbWFnZSgpCiAgICAgYXNzZXJ0X3RydWUoZGF0YVtpbmRleCArIDJdIDwgMTAwKTsKIH0KIAot
cHJvbWlzZV90ZXN0KCh0ZXN0KSA9PiB7Cit2YXIgcGMxLCBwYzI7Citwcm9taXNlX3Rlc3QoYXN5
bmMgKHRlc3QpID0+IHsKICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgIHRlc3RS
dW5uZXIuc2V0VXNlck1lZGlhUGVybWlzc2lvbih0cnVlKTsKIAotICAgIHJldHVybiBuYXZpZ2F0
b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHthZHZhbmNlZDogW3t3aWR0aDp7
bWluOjY0MH19LCB7aGVpZ2h0OnttaW46NDgwfSB9IF19fSkudGhlbigoc3RyZWFtKSA9PiB7Ci0g
ICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgYXNzZXJ0X3RydWUoaW50
ZXJuYWxzLnBhZ2VNZWRpYVN0YXRlKCkuaW5jbHVkZXMoJ0hhc0FjdGl2ZVZpZGVvQ2FwdHVyZURl
dmljZScpLCAiVW5leHBlY3RlZCBIYXNBY3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UiKTsKLSAgICAg
ICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAg
IGNyZWF0ZUNvbm5lY3Rpb25zKChmaXJzdENvbm5lY3Rpb24pID0+IHsKLSAgICAgICAgICAgICAg
ICB2YXIgdHJhY2sgPSBzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXTsKLSAgICAgICAgICAgICAg
ICBmaXJzdENvbm5lY3Rpb24uYWRkVHJhY2soc3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0sIHN0
cmVhbSk7Ci0gICAgICAgICAgICB9LCAoc2Vjb25kQ29ubmVjdGlvbikgPT4gewotICAgICAgICAg
ICAgICAgIHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9PiB7Ci0gICAg
ICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQudHJhY2sgaW5zdGFuY2VvZiBN
ZWRpYVN0cmVhbVRyYWNrKTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodHJhY2tF
dmVudC5yZWNlaXZlciBpbnN0YW5jZW9mIFJUQ1J0cFJlY2VpdmVyKTsKLSAgICAgICAgICAgICAg
ICAgICAgYXNzZXJ0X3RydWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVhbXMpLCAiQXJy
YXkuaXNBcnJheSgpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfdHJ1ZShPYmplY3QuaXNGcm96ZW4odHJhY2tFdmVudC5zdHJlYW1zKSwgIk9iamVjdC5p
c0Zyb3plbigpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKHRyYWNrRXZlbnQudHJhY2suaWQsIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBd
LmlkKTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnRyYWNr
LCB0cmFja0V2ZW50LnN0cmVhbXNbMF0uZ2V0VmlkZW9UcmFja3MoKVswXSk7Ci0gICAgICAgICAg
ICAgICAgICAgIHJlc29sdmUodHJhY2tFdmVudC5zdHJlYW1zWzBdKTsKLSAgICAgICAgICAgICAg
ICB9OwotICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJlamVj
dCgiVGVzdCB0aW1lZCBvdXQiKSwgNTAwMCk7CisgICAgY29uc3QgbG9jYWxTdHJlYW0gPSBhd2Fp
dCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHthZHZhbmNlZDog
W3t3aWR0aDp7bWluOjY0MH19LCB7aGVpZ2h0OnttaW46NDgwfSB9IF19fSk7CisgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGFzc2VydF90cnVlKGludGVybmFscy5wYWdlTWVkaWFT
dGF0ZSgpLmluY2x1ZGVzKCdIYXNBY3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UnKSwgIlVuZXhwZWN0
ZWQgSGFzQWN0aXZlVmlkZW9DYXB0dXJlRGV2aWNlIik7CisgICAgY29uc3Qgc3RyZWFtID0gYXdh
aXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICBjcmVhdGVDb25u
ZWN0aW9ucygoZmlyc3RDb25uZWN0aW9uKSA9PiB7CisgICAgICAgICAgICBwYzEgPSBmaXJzdENv
bm5lY3Rpb247CisgICAgICAgICAgICBmaXJzdENvbm5lY3Rpb24uYWRkVHJhY2sobG9jYWxTdHJl
YW0uZ2V0VmlkZW9UcmFja3MoKVswXSwgbG9jYWxTdHJlYW0pOworICAgICAgICB9LCAoc2Vjb25k
Q29ubmVjdGlvbikgPT4geworICAgICAgICAgICAgcGMyID0gc2Vjb25kQ29ubmVjdGlvbjsKKyAg
ICAgICAgICAgIHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9PiB7Cisg
ICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodHJhY2tFdmVudC50cmFjayBpbnN0YW5jZW9mIE1l
ZGlhU3RyZWFtVHJhY2spOworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQu
cmVjZWl2ZXIgaW5zdGFuY2VvZiBSVENSdHBSZWNlaXZlcik7CisgICAgICAgICAgICAgICAgYXNz
ZXJ0X3RydWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVhbXMpLCAiQXJyYXkuaXNBcnJh
eSgpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOworICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKE9i
amVjdC5pc0Zyb3plbih0cmFja0V2ZW50LnN0cmVhbXMpLCAiT2JqZWN0LmlzRnJvemVuKCkgc2hv
dWxkIHJldHVybiB0cnVlIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2
ZW50LnRyYWNrLmlkLCBsb2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLmlkKTsKKyAgICAg
ICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZlbnQudHJhY2ssIHRyYWNrRXZlbnQuc3Ry
ZWFtc1swXS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKKyAgICAgICAgICAgICAgICByZXNvbHZlKHRy
YWNrRXZlbnQuc3RyZWFtc1swXSk7CisgICAgICAgICAgICB9OwogICAgICAgICB9KTsKLSAgICB9
KS50aGVuKChzdHJlYW0pID0+IHsKLSAgICAgICAgdmlkZW8uc3JjT2JqZWN0ID0gc3RyZWFtOwot
ICAgICAgICByZXR1cm4gdmlkZW8ucGxheSgpOwotICAgIH0pLnRoZW4odGVzdC5zdGVwX2Z1bmMo
KCkgPT4gewotICAgICAgICB0ZXN0SW1hZ2UoKTsKLSAgICB9KSk7CisgICAgICAgIHNldFRpbWVv
dXQoKCkgPT4gcmVqZWN0KCJUZXN0IHRpbWVkIG91dCIpLCA1MDAwKTsKKyAgICB9KTsKKworICAg
IHZpZGVvLnNyY09iamVjdCA9IHN0cmVhbTsKKyAgICBhd2FpdCB2aWRlby5wbGF5KCk7CisKKyAg
ICB0ZXN0SW1hZ2UoKTsKIH0sICJCYXNpYyB2aWRlbyBleGNoYW5nZSIpOworCithc3luYyBmdW5j
dGlvbiBnZXRJbmJvdW5kUlRQU3RhdHNOdW1iZXJPZkRlY29kZWRGcmFtZXMoY29ubmVjdGlvbikK
K3sKKyAgICB2YXIgcmVwb3J0ID0gYXdhaXQgY29ubmVjdGlvbi5nZXRTdGF0cygpOworICAgIHZh
ciBmcmFtZXNEZWNvZGVkOworICAgIHJlcG9ydC5mb3JFYWNoKChzdGF0SXRlbSkgPT4geworICAg
ICAgICBpZiAoc3RhdEl0ZW0udHlwZSA9PT0gImluYm91bmQtcnRwIikKKyAgICAgICAgICAgIGZy
YW1lc0RlY29kZWQgPSBzdGF0SXRlbS5mcmFtZXNEZWNvZGVkOworICAgIH0pOworICAgIHJldHVy
biBmcmFtZXNEZWNvZGVkOworfQorCithc3luYyBmdW5jdGlvbiB0ZXN0RnJhbWVEZWNvZGVkSW5j
cmVhc2VkKGNvbm5lY3Rpb24sIGNvdW50LCBwcmV2aW91c0ZyYW1lc051bWJlcikKK3sKKyAgICBp
ZiAocHJldmlvdXNGcmFtZXNOdW1iZXIgPT09IHVuZGVmaW5lZCkgeworICAgICAgICBsZXQgbnVt
YmVyID0gYXdhaXQgZ2V0SW5ib3VuZFJUUFN0YXRzTnVtYmVyT2ZEZWNvZGVkRnJhbWVzKGNvbm5l
Y3Rpb24pOworICAgICAgICBhd2FpdCB3YWl0Rm9yKDEwMDApOworICAgICAgICByZXR1cm4gdGVz
dEZyYW1lRGVjb2RlZEluY3JlYXNlZChjb25uZWN0aW9uLCAwLCBudW1iZXIpOworICAgIH0KKwor
ICAgIHZhciBudW1iZXIgPSBhd2FpdCBnZXRJbmJvdW5kUlRQU3RhdHNOdW1iZXJPZkRlY29kZWRG
cmFtZXMoY29ubmVjdGlvbik7CisgICAgaWYgKHByZXZpb3VzRnJhbWVzTnVtYmVyICYmIG51bWJl
ciA+IHByZXZpb3VzRnJhbWVzTnVtYmVyKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoY291
bnQgPj0gMjApCisgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgidGVzdCBpbmNyZWFzaW5n
IGZyYW1lIGVuY29kZWQgdGltZWQgb3V0Iik7CisKKyAgICBhd2FpdCB3YWl0Rm9yKDEwMDApOwor
ICAgIHJldHVybiB0ZXN0RnJhbWVEZWNvZGVkSW5jcmVhc2VkKGNvbm5lY3Rpb24sICsrY291bnQs
IHByZXZpb3VzRnJhbWVzTnVtYmVyKTsKK30KKworYXN5bmMgZnVuY3Rpb24gdGVzdEZyYW1lRGVj
b2RlZERpZE5vdEluY3JlYXNlZChjb25uZWN0aW9uLCBjb3VudCwgcHJldmlvdXNGcmFtZXNOdW1i
ZXIpCit7CisgICAgaWYgKHByZXZpb3VzRnJhbWVzTnVtYmVyID09PSB1bmRlZmluZWQpIHsKKyAg
ICAgICAgbGV0IG51bWJlciA9IGF3YWl0IGdldEluYm91bmRSVFBTdGF0c051bWJlck9mRGVjb2Rl
ZEZyYW1lcyhjb25uZWN0aW9uKTsKKyAgICAgICAgYXdhaXQgd2FpdEZvcigxMDApOworICAgICAg
ICByZXR1cm4gdGVzdEZyYW1lRGVjb2RlZERpZE5vdEluY3JlYXNlZChjb25uZWN0aW9uLCAwLCBu
dW1iZXIpOworICAgIH0KKworICAgIHZhciBudW1iZXIgPSBhd2FpdCBnZXRJbmJvdW5kUlRQU3Rh
dHNOdW1iZXJPZkRlY29kZWRGcmFtZXMoY29ubmVjdGlvbik7CisgICAgaWYgKHByZXZpb3VzRnJh
bWVzTnVtYmVyICYmIG51bWJlciA9PSBwcmV2aW91c0ZyYW1lc051bWJlcikKKyAgICAgICAgcmV0
dXJuOworCisgICAgaWYgKGNvdW50ID49IDIwKQorICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWpl
Y3QoInRlc3QgaW5jcmVhc2luZyBmcmFtZSBlbmNvZGVkIHRpbWVkIG91dCIpOworCisgICAgYXdh
aXQgd2FpdEZvcigxMDApOworICAgIHJldHVybiB0ZXN0RnJhbWVEZWNvZGVkSW5jcmVhc2VkKGNv
bm5lY3Rpb24sICsrY291bnQsIG51bWJlcik7Cit9CisKK3Byb21pc2VfdGVzdChhc3luYyAodGVz
dCkgPT4geworICAgbGV0IHAgPSBwYzEuZ2V0U2VuZGVycygpWzBdLmdldFBhcmFtZXRlcnMoKTsK
KyAgIHAuZW5jb2RpbmdzWzBdLmFjdGl2ZSA9IGZhbHNlOworICAgYXdhaXQgcGMxLmdldFNlbmRl
cnMoKVswXS5zZXRQYXJhbWV0ZXJzKHApOworCisgICBhd2FpdCB0ZXN0RnJhbWVEZWNvZGVkRGlk
Tm90SW5jcmVhc2VkKHBjMik7Cit9LCAiQ2FsbCBzZXRQYXJhbWV0ZXJzIHRvIGRpc2FibGUgc2Vu
ZGluZyBhIGdpdmVuIGVuY29kaW5nIik7CisKK3Byb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4g
eworICAgbGV0IHAgPSBwYzEuZ2V0U2VuZGVycygpWzBdLmdldFBhcmFtZXRlcnMoKTsKKyAgIHAu
ZW5jb2RpbmdzWzBdLmFjdGl2ZSA9IHRydWU7CisgICBhd2FpdCBwYzEuZ2V0U2VuZGVycygpWzBd
LnNldFBhcmFtZXRlcnMocCk7CisKKyAgIGF3YWl0IHRlc3RGcmFtZURlY29kZWRJbmNyZWFzZWQo
cGMyKTsKK30sICJDYWxsIHNldFBhcmFtZXRlcnMgdG8gcmVlbmFibGUgc2VuZGluZyBhIGdpdmVu
IGVuY29kaW5nIik7CiAgICAgICAgIDwvc2NyaXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>