<?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>129161</bug_id>
          
          <creation_ts>2014-02-21 12:31:10 -0800</creation_ts>
          <short_desc>Add a supportsKeySystem media engine factory parameter.</short_desc>
          <delta_ts>2014-02-21 16:08:52 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>gustavo</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>philipj</cc>
    
    <cc>pnormand</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>983291</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-02-21 12:31:10 -0800</bug_when>
    <thetext>Add a supportsKeySystem media engine factory parameter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983294</commentid>
    <comment_count>1</comment_count>
      <attachid>224891</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-02-21 12:39:06 -0800</bug_when>
    <thetext>Created attachment 224891
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983296</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-21 12:42:06 -0800</bug_when>
    <thetext>Attachment 224891 did not pass style-queue:


ERROR: Source/WebCore/platform/graphics/MediaPlayer.cpp:176:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
Total errors found: 1 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983307</commentid>
    <comment_count>3</comment_count>
      <attachid>224891</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-02-21 12:58:43 -0800</bug_when>
    <thetext>Comment on attachment 224891
Patch

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

If the registrar took a MediaPlayerFactory instead of a bunch of function pointers, we could add new factory methods without touching ports that don&apos;t implement them. 

r=me either way.

&gt; Source/WebCore/platform/graphics/MediaPlayer.cpp:1020
&gt; +    unsigned size = engines.size();
&gt; +    for (unsigned i = 0; i &lt; size; i++) {
&gt; +        if (engines[i]-&gt;supportsKeySystem &amp;&amp; engines[i]-&gt;supportsKeySystem(keySystem, mimeType))
&gt; +            return true;
&gt; +    }

Can this use a range-based loop?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983373</commentid>
    <comment_count>4</comment_count>
      <attachid>224913</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-02-21 14:38:35 -0800</bug_when>
    <thetext>Created attachment 224913
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983376</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-21 14:43:20 -0800</bug_when>
    <thetext>Attachment 224913 did not pass style-queue:


ERROR: Source/WebCore/platform/graphics/MediaPlayer.cpp:176:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
Total errors found: 1 in 13 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983429</commentid>
    <comment_count>6</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-02-21 16:08:52 -0800</bug_when>
    <thetext>Committed r164513: &lt;http://trac.webkit.org/changeset/164513&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224891</attachid>
            <date>2014-02-21 12:39:06 -0800</date>
            <delta_ts>2014-02-21 12:58:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129161-20140221123906.patch</filename>
            <type>text/plain</type>
            <size>17382</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0MzkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2U4NzE3ZGUxNDU0M2Zm
MjJjZmE5NTljYTZjODljZTNiZmZhZmFjNi4uNTc4ZTVhYWQ3MjE0ZmNmY2IyMmNiNDg3NGI3MWYz
ZGFmYWMwYmUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE0LTAyLTIxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhIHN1cHBvcnRzS2V5
U3lzdGVtIG1lZGlhIGVuZ2luZSBmYWN0b3J5IHBhcmFtZXRlci4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyOTE2MQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG5ldyBwYXJhbWV0ZXIgdG8gdGhl
IE1lZGlhUGxheWVyRmFjdG9yeSB0byBhbGxvdyByZWdpc3RlcmVkIG1lZGlhCisgICAgICAgIGVu
Z2luZXMgdG8gYmUgcXVlcmllZCBmb3Iga2V5U3lzdGVtIHN1cHBvcnQ6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQ
bGF5ZXJGYWN0b3J5OjpNZWRpYVBsYXllckZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXI6OnN1cHBvcnRzS2V5U3lzdGVtKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5oOgorCisgICAgICAgIFN1cHBvcnQgdGhpcyBuZXcgZmllbGQgaW4gTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpD
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnJlZ2lzdGVyTWVkaWFFbmdpbmUpOgorICAg
ICAgICAoV2ViQ29yZTo6a2V5U3lzdGVtSXNTdXBwb3J0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c3VwcG9ydHNLZXlTeXN0ZW0pOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c2hv
dWxkV2FpdEZvckxvYWRpbmdPZlJlc291cmNlKToKKworICAgICAgICBBZGQgYW4gZW1wdHkgZmll
bGQgZm9yIFN1cHBvcnRzS2V5U3lzdGVtIHRvIHRoZSByZW1haW5pbmcgbWVkaWEgZW5naW5lczoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0Y6OnJlZ2lzdGVyTWVkaWFFbmdpbmUpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQzo6cmVnaXN0ZXJNZWRpYUVuZ2luZSk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnJlZ2lzdGVyTWVk
aWFFbmdpbmUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2lvcy9NZWRpYVBsYXllclBy
aXZhdGVJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVJT1M6OnJl
Z2lzdGVyTWVkaWFFbmdpbmUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRp
YVBsYXllclByaXZhdGVRVEtpdC5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJp
dmF0ZVFUS2l0OjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy93aW4vTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tUaW1lVmlzdWFsQ29udGV4dC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0
OjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL21lZGlhc291
cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKwogMjAxNC0w
MS0yOSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWVkaWFD
b250cm9sc10gRml4IGVycm9ycyBwb2ludGVkIG91dCBieSBKU0hpbnQuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKaW5kZXggNDc1NDU0ZTIx
ODJiZmNkNWEzZDBmN2JjZjhmZjI3M2RiMDU5ZDVlMi4uYTBjZmMxOTVjOGU2MGJlMmJhMGE3Mjdl
YTc2MjJhNGY0MjkzNGYxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL01lZGlhUGxheWVyLmNwcApAQCAtMTY2LDEzICsxNjYsMTQgQEAgc3RydWN0IE1lZGlhUGxh
eWVyRmFjdG9yeSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoTWVkaWFQbGF5ZXJGYWN0b3J5
KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgTWVkaWFQbGF5ZXJGYWN0
b3J5KENyZWF0ZU1lZGlhRW5naW5lUGxheWVyIGNvbnN0cnVjdG9yLCBNZWRpYUVuZ2luZVN1cHBv
cnRlZFR5cGVzIGdldFN1cHBvcnRlZFR5cGVzLCBNZWRpYUVuZ2luZVN1cHBvcnRzVHlwZSBzdXBw
b3J0c1R5cGVBbmRDb2RlY3MsCi0gICAgICAgIE1lZGlhRW5naW5lR2V0U2l0ZXNJbk1lZGlhQ2Fj
aGUgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlIGNsZWFy
TWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlIGNsZWFyTWVkaWFD
YWNoZUZvclNpdGUpCisgICAgICAgIE1lZGlhRW5naW5lR2V0U2l0ZXNJbk1lZGlhQ2FjaGUgZ2V0
U2l0ZXNJbk1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlIGNsZWFyTWVkaWFD
YWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlIGNsZWFyTWVkaWFDYWNoZUZv
clNpdGUsIE1lZGlhRW5naW5lU3VwcG9ydHNLZXlTeXN0ZW0gc3VwcG9ydHNLZXlTeXN0ZW0pCiAg
ICAgICAgIDogY29uc3RydWN0b3IoY29uc3RydWN0b3IpCiAgICAgICAgICwgZ2V0U3VwcG9ydGVk
VHlwZXMoZ2V0U3VwcG9ydGVkVHlwZXMpCiAgICAgICAgICwgc3VwcG9ydHNUeXBlQW5kQ29kZWNz
KHN1cHBvcnRzVHlwZUFuZENvZGVjcykKICAgICAgICAgLCBnZXRTaXRlc0luTWVkaWFDYWNoZShn
ZXRTaXRlc0luTWVkaWFDYWNoZSkKICAgICAgICAgLCBjbGVhck1lZGlhQ2FjaGUoY2xlYXJNZWRp
YUNhY2hlKQogICAgICAgICAsIGNsZWFyTWVkaWFDYWNoZUZvclNpdGUoY2xlYXJNZWRpYUNhY2hl
Rm9yU2l0ZSkKKyAgICAgICAgLCBzdXBwb3J0c0tleVN5c3RlbShzdXBwb3J0c0tleVN5c3RlbSkK
ICAgICB7CiAgICAgfQogCkBAIC0xODIsOSArMTgzLDEwIEBAIHB1YmxpYzoKICAgICBNZWRpYUVu
Z2luZUdldFNpdGVzSW5NZWRpYUNhY2hlIGdldFNpdGVzSW5NZWRpYUNhY2hlOwogICAgIE1lZGlh
RW5naW5lQ2xlYXJNZWRpYUNhY2hlIGNsZWFyTWVkaWFDYWNoZTsKICAgICBNZWRpYUVuZ2luZUNs
ZWFyTWVkaWFDYWNoZUZvclNpdGUgY2xlYXJNZWRpYUNhY2hlRm9yU2l0ZTsKKyAgICBNZWRpYUVu
Z2luZVN1cHBvcnRzS2V5U3lzdGVtIHN1cHBvcnRzS2V5U3lzdGVtOwogfTsKIAotc3RhdGljIHZv
aWQgYWRkTWVkaWFFbmdpbmUoQ3JlYXRlTWVkaWFFbmdpbmVQbGF5ZXIsIE1lZGlhRW5naW5lU3Vw
cG9ydGVkVHlwZXMsIE1lZGlhRW5naW5lU3VwcG9ydHNUeXBlLCBNZWRpYUVuZ2luZUdldFNpdGVz
SW5NZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVh
ck1lZGlhQ2FjaGVGb3JTaXRlKTsKK3N0YXRpYyB2b2lkIGFkZE1lZGlhRW5naW5lKENyZWF0ZU1l
ZGlhRW5naW5lUGxheWVyLCBNZWRpYUVuZ2luZVN1cHBvcnRlZFR5cGVzLCBNZWRpYUVuZ2luZVN1
cHBvcnRzVHlwZSwgTWVkaWFFbmdpbmVHZXRTaXRlc0luTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVD
bGVhck1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSwgTWVkaWFF
bmdpbmVTdXBwb3J0c0tleVN5c3RlbSk7CiAKIHN0YXRpYyBNZWRpYVBsYXllckZhY3RvcnkqIGJl
c3RNZWRpYUVuZ2luZUZvclN1cHBvcnRQYXJhbWV0ZXJzKGNvbnN0IE1lZGlhRW5naW5lU3VwcG9y
dFBhcmFtZXRlcnMmLCBNZWRpYVBsYXllckZhY3RvcnkqIGN1cnJlbnQgPSAwKTsKIHN0YXRpYyBN
ZWRpYVBsYXllckZhY3RvcnkqIG5leHRNZWRpYUVuZ2luZShNZWRpYVBsYXllckZhY3RvcnkqIGN1
cnJlbnQpOwpAQCAtMjM3LDEzICsyMzksMTMgQEAgc3RhdGljIFZlY3RvcjxNZWRpYVBsYXllckZh
Y3RvcnkqPiYgaW5zdGFsbGVkTWVkaWFFbmdpbmVzKFJlcXVlcnlFbmdpbmVPcHRpb25zIHIKIH0K
IAogc3RhdGljIHZvaWQgYWRkTWVkaWFFbmdpbmUoQ3JlYXRlTWVkaWFFbmdpbmVQbGF5ZXIgY29u
c3RydWN0b3IsIE1lZGlhRW5naW5lU3VwcG9ydGVkVHlwZXMgZ2V0U3VwcG9ydGVkVHlwZXMsIE1l
ZGlhRW5naW5lU3VwcG9ydHNUeXBlIHN1cHBvcnRzVHlwZSwKLSAgICBNZWRpYUVuZ2luZUdldFNp
dGVzSW5NZWRpYUNhY2hlIGdldFNpdGVzSW5NZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVk
aWFDYWNoZSBjbGVhck1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlRm9yU2l0
ZSBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlKQorICAgIE1lZGlhRW5naW5lR2V0U2l0ZXNJbk1lZGlh
Q2FjaGUgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlIGNs
ZWFyTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlIGNsZWFyTWVk
aWFDYWNoZUZvclNpdGUsIE1lZGlhRW5naW5lU3VwcG9ydHNLZXlTeXN0ZW0gc3VwcG9ydHNLZXlT
eXN0ZW0pCiB7CiAgICAgQVNTRVJUKGNvbnN0cnVjdG9yKTsKICAgICBBU1NFUlQoZ2V0U3VwcG9y
dGVkVHlwZXMpOwogICAgIEFTU0VSVChzdXBwb3J0c1R5cGUpOwogCi0gICAgaW5zdGFsbGVkTWVk
aWFFbmdpbmVzKCkuYXBwZW5kKG5ldyBNZWRpYVBsYXllckZhY3RvcnkoY29uc3RydWN0b3IsIGdl
dFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0c1R5cGUsIGdldFNpdGVzSW5NZWRpYUNhY2hlLCBjbGVh
ck1lZGlhQ2FjaGUsIGNsZWFyTWVkaWFDYWNoZUZvclNpdGUpKTsKKyAgICBpbnN0YWxsZWRNZWRp
YUVuZ2luZXMoKS5hcHBlbmQobmV3IE1lZGlhUGxheWVyRmFjdG9yeShjb25zdHJ1Y3RvciwgZ2V0
U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGUsIGNsZWFy
TWVkaWFDYWNoZSwgY2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSwgc3VwcG9ydHNLZXlTeXN0ZW0pKTsK
IH0KIAogc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYgYXBwbGljYXRpb25PY3RldFN0cmVhbSgp
CkBAIC0xMDA4LDYgKzEwMTAsMTcgQEAgdm9pZCBNZWRpYVBsYXllcjo6Y2xlYXJNZWRpYUNhY2hl
Rm9yU2l0ZShjb25zdCBTdHJpbmcmIHNpdGUpCiAgICAgfQogfQogCitib29sIE1lZGlhUGxheWVy
OjpzdXBwb3J0c0tleVN5c3RlbShjb25zdCBTdHJpbmcmIGtleVN5c3RlbSwgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSkKK3sKKyAgICBWZWN0b3I8TWVkaWFQbGF5ZXJGYWN0b3J5Kj4mIGVuZ2luZXMg
PSBpbnN0YWxsZWRNZWRpYUVuZ2luZXMoKTsKKyAgICB1bnNpZ25lZCBzaXplID0gZW5naW5lcy5z
aXplKCk7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHNpemU7IGkrKykgeworICAgICAg
ICBpZiAoZW5naW5lc1tpXS0+c3VwcG9ydHNLZXlTeXN0ZW0gJiYgZW5naW5lc1tpXS0+c3VwcG9y
dHNLZXlTeXN0ZW0oa2V5U3lzdGVtLCBtaW1lVHlwZSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CisgICAgcmV0dXJuIGZhbHNlOworfQorCiB2b2lkIE1lZGlhUGxheWVyOjpzZXRQ
cml2YXRlQnJvd3NpbmdNb2RlKGJvb2wgcHJpdmF0ZUJyb3dzaW5nTW9kZSkKIHsKICAgICBtX3By
aXZhdGVCcm93c2luZyA9IHByaXZhdGVCcm93c2luZ01vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRleCA4Y2E5MTMxMzMyMmM0MDc0MGZm
Mzk1NWY2ZjQ4NDFlYjFhNGY3YTc3Li4xZDQ3Y2MyMWQzZmU3NDk4ZDM5YTFhM2VkYWJlNWE5NTUz
YTljYTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRp
YVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyLmgKQEAgLTI4Myw2ICsyODMsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgZ2V0U2l0
ZXNJbk1lZGlhQ2FjaGUoVmVjdG9yPFN0cmluZz4mKTsKICAgICBzdGF0aWMgdm9pZCBjbGVhck1l
ZGlhQ2FjaGUoKTsKICAgICBzdGF0aWMgdm9pZCBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlKGNvbnN0
IFN0cmluZyYpOworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzS2V5U3lzdGVtKGNvbnN0IFN0cmlu
ZyYga2V5U3lzdGVtLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAogICAgIGJvb2wgc3VwcG9y
dHNGdWxsc2NyZWVuKCkgY29uc3Q7CiAgICAgYm9vbCBzdXBwb3J0c1NhdmUoKSBjb25zdDsKQEAg
LTU5Miw5ICs1OTMsMTAgQEAgdHlwZWRlZiBNZWRpYVBsYXllcjo6U3VwcG9ydHNUeXBlICgqTWVk
aWFFbmdpbmVTdXBwb3J0c1R5cGUpKGNvbnN0IE1lZGlhRW5naW5lU3UKIHR5cGVkZWYgdm9pZCAo
Kk1lZGlhRW5naW5lR2V0U2l0ZXNJbk1lZGlhQ2FjaGUpKFZlY3RvcjxTdHJpbmc+Jik7CiB0eXBl
ZGVmIHZvaWQgKCpNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZSkoKTsKIHR5cGVkZWYgdm9pZCAo
Kk1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSkoY29uc3QgU3RyaW5nJik7Cit0eXBl
ZGVmIGJvb2wgKCpNZWRpYUVuZ2luZVN1cHBvcnRzS2V5U3lzdGVtKShjb25zdCBTdHJpbmcmIGtl
eVN5c3RlbSwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKIHR5cGVkZWYgdm9pZCAoKk1lZGlh
RW5naW5lUmVnaXN0cmFyKShDcmVhdGVNZWRpYUVuZ2luZVBsYXllciwgTWVkaWFFbmdpbmVTdXBw
b3J0ZWRUeXBlcywgTWVkaWFFbmdpbmVTdXBwb3J0c1R5cGUsCi0gICAgTWVkaWFFbmdpbmVHZXRT
aXRlc0luTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGUsIE1lZGlhRW5naW5l
Q2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSk7CisgICAgTWVkaWFFbmdpbmVHZXRTaXRlc0luTWVkaWFD
YWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNh
Y2hlRm9yU2l0ZSwgTWVkaWFFbmdpbmVTdXBwb3J0c0tleVN5c3RlbSk7CiB0eXBlZGVmIHZvaWQg
KCpNZWRpYUVuZ2luZVJlZ2lzdGVyKShNZWRpYUVuZ2luZVJlZ2lzdHJhcik7CiAKIGNsYXNzIE1l
ZGlhUGxheWVyRmFjdG9yeVN1cHBvcnQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbkNGLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKaW5kZXggODk5MTJiOWNm
NjU1MDFkNDhjY2FkNjdkMzI3NjliZTdhY2EwNzdmNi4uOGJkZjIyODI2NzdiMzYyMjUzYjU3MTU2
YzZlYmUxNzlkZDUzOThlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2Yv
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCkBAIC0yOTcsNyArMjk3LDcgQEAg
UGFzc093blB0cjxNZWRpYVBsYXllclByaXZhdGVJbnRlcmZhY2U+IE1lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbkNGOjpjcmVhdGUKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uQ0Y6OnJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdpbmVSZWdpc3RyYXIgcmVnaXN0cmFy
KQogewogICAgIGlmIChpc0F2YWlsYWJsZSgpKQotICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBn
ZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAwKTsKKyAgICAgICAgcmVnaXN0
cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCwgMCk7
CiB9CiAKIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjpNZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb25DRihNZWRpYVBsYXllciogcGxheWVyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5o
CmluZGV4IGM5NzdhMDM1ZWVhYTFiZmQ1ODhkZWIyYTE1ZTVjYzI0NjM0N2Y1MmIuLmUzNzQ2OTYz
ZTFhZTk0ZjAzMjI5ZDEzOTYwODZmOTU1ZDhkZTRjMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgK
QEAgLTEyMiw2ICsxMjIsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBQYXNzT3duUHRyPE1lZGlh
UGxheWVyUHJpdmF0ZUludGVyZmFjZT4gY3JlYXRlKE1lZGlhUGxheWVyKik7CiAgICAgc3RhdGlj
IHZvaWQgZ2V0U3VwcG9ydGVkVHlwZXMoSGFzaFNldDxTdHJpbmc+JiB0eXBlcyk7CiAgICAgc3Rh
dGljIE1lZGlhUGxheWVyOjpTdXBwb3J0c1R5cGUgc3VwcG9ydHNUeXBlKGNvbnN0IE1lZGlhRW5n
aW5lU3VwcG9ydFBhcmFtZXRlcnMmKTsKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0tleVN5c3Rl
bShjb25zdCBTdHJpbmcmIGtleVN5c3RlbSwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKICAg
ICBzdGF0aWMgYm9vbCBpc0F2YWlsYWJsZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25PYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQppbmRl
eCBhYjI3ZDJlZGY4MjNmNjU3NDBkZDU3Mjk3NTAwNzNjZDAyOTkyNWQ1Li4zZDVlOGMxYWM5M2Q0
MThhOGViMGMzYzMwODExZGZjOGVlZjIwYWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KQEAg
LTI3MCw3ICsyNzAsNyBAQCBQYXNzT3duUHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4g
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6Y3JlYQogdm9pZCBNZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpyZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5l
UmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKICAgICBpZiAoaXNBdmFpbGFibGUoKSkKLSAgICAgICAg
cmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwg
MCk7CisgICAgICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0
c1R5cGUsIDAsIDAsIDAsIHN1cHBvcnRzS2V5U3lzdGVtKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uT2JqQzo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQyhN
ZWRpYVBsYXllciogcGxheWVyKQpAQCAtOTY2LDEwICs5NjYsMTAgQEAgdm9pZCBNZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpnZXRTdXBwb3J0ZWRUeXBlcyhIYXNoU2V0PFN0cmlu
Zz4mIHN1cHAKICAgICBzdXBwb3J0ZWRUeXBlcyA9IG1pbWVUeXBlQ2FjaGUoKTsKIH0gCiAKLSNp
ZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQorI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpIHx8
IEVOQUJMRShFTkNSWVBURURfTUVESUFfVjIpCiBzdGF0aWMgYm9vbCBrZXlTeXN0ZW1Jc1N1cHBv
cnRlZChjb25zdCBTdHJpbmcmIGtleVN5c3RlbSkKIHsKLSAgICBpZiAoZXF1YWxJZ25vcmluZ0Nh
c2Uoa2V5U3lzdGVtLCAiY29tLmFwcGxlLmxza2QiKSB8fCBlcXVhbElnbm9yaW5nQ2FzZShrZXlT
eXN0ZW0sICJjb20uYXBwbGUubHNrZC4xXzAiKSkKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2Uo
a2V5U3lzdGVtLCAiY29tLmFwcGxlLmZwcyIpIHx8IGVxdWFsSWdub3JpbmdDYXNlKGtleVN5c3Rl
bSwgImNvbS5hcHBsZS5mcHMuMV8wIikpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIHJldHVy
biBmYWxzZTsKIH0KQEAgLTEwMTIsNiArMTAxMiwyMiBAQCBNZWRpYVBsYXllcjo6U3VwcG9ydHNU
eXBlIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnN1cHBvcnRzVHlwZShjb25z
dAogICAgIHJldHVybiBbQVZVUkxBc3NldCBpc1BsYXlhYmxlRXh0ZW5kZWRNSU1FVHlwZTp0eXBl
U3RyaW5nXSA/IE1lZGlhUGxheWVyOjpJc1N1cHBvcnRlZCA6IE1lZGlhUGxheWVyOjpNYXlCZVN1
cHBvcnRlZDs7CiB9CiAKK2Jvb2wgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6
c3VwcG9ydHNLZXlTeXN0ZW0oY29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0sIGNvbnN0IFN0cmluZyYg
bWltZVR5cGUpCit7CisjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkgfHwgRU5BQkxFKEVOQ1JZ
UFRFRF9NRURJQV9WMikKKyAgICBpZiAoIWtleVN5c3RlbS5pc0VtcHR5KCkpIHsKKyAgICAgICAg
aWYgKCFrZXlTeXN0ZW1Jc1N1cHBvcnRlZChrZXlTeXN0ZW0pKQorICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgICAgIGlmICghbWltZVR5cGUuaXNFbXB0eSgpICYmICFtaW1lVHlwZUNh
Y2hlKCkuY29udGFpbnMobWltZVR5cGUpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBmYWxzZTsKK30K
KwogI2lmIEhBVkUoQVZGT1VOREFUSU9OX0xPQURFUl9ERUxFR0FURSkKIGJvb2wgTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c2hvdWxkV2FpdEZvckxvYWRpbmdPZlJlc291cmNl
KEFWQXNzZXRSZXNvdXJjZUxvYWRpbmdSZXF1ZXN0KiBhdlJlcXVlc3QpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMubW0KaW5kZXggNTdjZGQ5ZTg4NDkwOGY1YjUwZDgzYTNmYjFjNTBiNDkyZjBh
YzQxYi4uYWM0YTY5ZTM0YjI3ZGVhY2JjNTNkOWNjZDEzOTc3YTc5NjBiOWU3YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVk
aWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQy5tbQpAQCAtMTY1LDcgKzE2NSw3IEBAIE1lZGlhUGxheWVyUHJpdmF0
ZU1lZGlhU291cmNlQVZGT2JqQzo6fk1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2Jq
QygpCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6cmVnaXN0ZXJN
ZWRpYUVuZ2luZShNZWRpYUVuZ2luZVJlZ2lzdHJhciByZWdpc3RyYXIpCiB7CiAgICAgaWYgKGlz
QXZhaWxhYmxlKCkpCi0gICAgICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVz
LCBzdXBwb3J0c1R5cGUsIDAsIDAsIDApOworICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBnZXRT
dXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAwLCAwKTsKIH0KIAogUGFzc093blB0
cjxNZWRpYVBsYXllclByaXZhdGVJbnRlcmZhY2U+IE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291
cmNlQVZGT2JqQzo6Y3JlYXRlKE1lZGlhUGxheWVyKiBwbGF5ZXIpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDMxNzI0ZWJhZGEzZWZhNzAy
ZDJhOWExYjNlNzEyZjYzMjVlZjdjZTcuLjMzMWJlMWE1OThhMDg2ZmVhN2NjMmMzYmM4MjNlNTli
MGVhNTEzNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXIuY3BwCkBAIC0xODcsNyArMTg3LDcgQEAgUGFzc093blB0cjxNZWRpYVBsYXllclByaXZhdGVJ
bnRlcmZhY2U+IE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6Y3JlYXRlKE1lZGkKIHZvaWQg
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpyZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5n
aW5lUmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKICAgICBpZiAoaXNBdmFpbGFibGUoKSkKLSAgICAg
ICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwg
MCwgMCk7CisgICAgICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBw
b3J0c1R5cGUsIDAsIDAsIDAsIDApOwogfQogCiBib29sIGluaXRpYWxpemVHU3RyZWFtZXJBbmRS
ZWdpc3RlcldlYktpdEVsZW1lbnRzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2lvcy9NZWRpYVBsYXllclByaXZhdGVJT1MubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9pb3MvTWVkaWFQbGF5ZXJQcml2YXRlSU9TLm1tCmluZGV4IDUy
YmIwMTkwMTc4NTQ0MTUyNDAzYWZjNTE1MmQ4ZWJiOTAzODBhNzYuLjA5NzdkMTQxODE1NjQ4NTQx
NTBmYmI0M2QyNzIxZTk3ZDI1MTUzYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2lvcy9NZWRpYVBsYXllclByaXZhdGVJT1MubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaW9zL01lZGlhUGxheWVyUHJpdmF0ZUlPUy5tbQpAQCAt
MTE0LDcgKzExNCw3IEBAIFBhc3NPd25QdHI8TWVkaWFQbGF5ZXJQcml2YXRlSW50ZXJmYWNlPiBN
ZWRpYVBsYXllclByaXZhdGVJT1M6OmNyZWF0ZShNZWRpYVBsYXllCiB2b2lkIE1lZGlhUGxheWVy
UHJpdmF0ZUlPUzo6cmVnaXN0ZXJNZWRpYUVuZ2luZShNZWRpYUVuZ2luZVJlZ2lzdHJhciByZWdp
c3RyYXIpCiB7CiAgICAgaWYgKGlzQXZhaWxhYmxlKCkpCi0gICAgICAgIHJlZ2lzdHJhcihjcmVh
dGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0c1R5cGUsIDAsIDAsIDApOworICAgICAgICBy
ZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAw
LCAwKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2YXRlSU9TOjpNZWRpYVBsYXllclByaXZhdGVJT1Mo
TWVkaWFQbGF5ZXIqIHBsYXllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbQppbmRleCA5
N2U3YjFkZTE5OWE1M2M5MmY1ZDZmOWNiMGY5YzlmMmQ5OTcxMDg3Li40MzBjMzJiYjUyYTM3ZWQy
ZDYxN2ZiMjJjNzYxNzM0YjE4NGI4ZjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1t
CkBAIC0xODUsNyArMTg1LDcgQEAgUGFzc093blB0cjxNZWRpYVBsYXllclByaXZhdGVJbnRlcmZh
Y2U+IE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpjcmVhdGUoTWVkaWFQbGEKIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlUVRLaXQ6OnJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdpbmVSZWdpc3Ry
YXIgcmVnaXN0cmFyKQogewogICAgIGlmIChpc0F2YWlsYWJsZSgpKQotICAgICAgICByZWdpc3Ry
YXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCBnZXRTaXRlc0luTWVk
aWFDYWNoZSwgY2xlYXJNZWRpYUNhY2hlLCBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlKTsKKyAgICAg
ICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgZ2V0
U2l0ZXNJbk1lZGlhQ2FjaGUsIGNsZWFyTWVkaWFDYWNoZSwgY2xlYXJNZWRpYUNhY2hlRm9yU2l0
ZSwgMCk7CiB9CiAKIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpNZWRpYVBsYXllclByaXZhdGVR
VEtpdChNZWRpYVBsYXllciogcGxheWVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVZpc3VhbENvbnRl
eHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVy
UHJpdmF0ZVF1aWNrVGltZVZpc3VhbENvbnRleHQuY3BwCmluZGV4IDMxODVlNWI5Yjc3NTI0NjI5
ZjY4OTM4NjUzMWViOGU5MmM3YzM0YjkuLjZmODQzYjhiZGYyMTk0NGM1ZGNlODk0NGFjYzQyZmQ4
MzQwZDcwZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dp
bi9NZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tU
aW1lVmlzdWFsQ29udGV4dC5jcHAKQEAgLTE1Miw3ICsxNTIsNyBAQCBQYXNzT3duUHRyPE1lZGlh
UGxheWVyUHJpdmF0ZUludGVyZmFjZT4gTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tUaW1lVmlzdWFs
Q29udGV4dAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0Ojpy
ZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5lUmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKICAg
ICBpZiAoaXNBdmFpbGFibGUoKSkKLSAgICAgICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9y
dGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCk7CisgICAgICAgIHJlZ2lzdHJhcihjcmVh
dGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0c1R5cGUsIDAsIDAsIDAsIDApOwogfQogCiBN
ZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0OjpNZWRpYVBsYXllclByaXZh
dGVRdWlja1RpbWVWaXN1YWxDb250ZXh0KE1lZGlhUGxheWVyKiBwbGF5ZXIpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXll
ck1lZGlhU291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3Vy
Y2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwCmluZGV4IDRjYTg4NWQxNTg5NWE2NGMw
Y2EwMzQ3ZGEyZTg1ZDU0Y2UyMTZhMTIuLmJmNjFhMzgzN2M3MGExMjEwYmQ3ODU3MTc3ZDA2YWVm
NzU3YzlkODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFz
b3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3Bw
CkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE1lZGlhUGxheWVyIEVu
aWduZSBTdXBwb3J0CiB2b2lkIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpyZWdpc3Rlck1l
ZGlhRW5naW5lKE1lZGlhRW5naW5lUmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKLSAgICByZWdpc3Ry
YXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAwKTsKKyAg
ICByZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAw
LCAwLCAwKTsKIH0KIAogUGFzc093blB0cjxNZWRpYVBsYXllclByaXZhdGVJbnRlcmZhY2U+IE1v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpjcmVhdGUoTWVkaWFQbGF5ZXIqIHBsYXllcikK
</data>
<flag name="review"
          id="249005"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224913</attachid>
            <date>2014-02-21 14:38:35 -0800</date>
            <delta_ts>2014-02-21 14:38:35 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-129161-20140221143834.patch</filename>
            <type>text/plain</type>
            <size>19115</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0NDk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjAzZmQ1OTM1MTI0MTgw
NTI4NzQ4ZjkxYWMyYjE4MzIyYWM2ZmY3NC4uYjhiNDI4ZWFiNjFiMTg1NDY4YzQzNTEzNzJhYzg3
ZjkzMzc0ODMxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE0LTAyLTIxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhIHN1cHBvcnRzS2V5
U3lzdGVtIG1lZGlhIGVuZ2luZSBmYWN0b3J5IHBhcmFtZXRlci4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyOTE2MQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG5ldyBwYXJhbWV0ZXIgdG8gdGhl
IE1lZGlhUGxheWVyRmFjdG9yeSB0byBhbGxvdyByZWdpc3RlcmVkIG1lZGlhCisgICAgICAgIGVu
Z2luZXMgdG8gYmUgcXVlcmllZCBmb3Iga2V5U3lzdGVtIHN1cHBvcnQ6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQ
bGF5ZXJGYWN0b3J5OjpNZWRpYVBsYXllckZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXI6OnN1cHBvcnRzS2V5U3lzdGVtKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5oOgorCisgICAgICAgIFN1cHBvcnQgdGhpcyBuZXcgZmllbGQgaW4gTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpD
Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnJlZ2lzdGVyTWVkaWFFbmdpbmUpOgorICAg
ICAgICAoV2ViQ29yZTo6a2V5U3lzdGVtSXNTdXBwb3J0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c3VwcG9ydHNLZXlTeXN0ZW0pOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c2hv
dWxkV2FpdEZvckxvYWRpbmdPZlJlc291cmNlKToKKworICAgICAgICBBZGQgYW4gZW1wdHkgZmll
bGQgZm9yIFN1cHBvcnRzS2V5U3lzdGVtIHRvIHRoZSByZW1haW5pbmcgbWVkaWEgZW5naW5lczoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0Y6OnJlZ2lzdGVyTWVkaWFFbmdpbmUpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQzo6cmVnaXN0ZXJNZWRpYUVuZ2luZSk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnJlZ2lzdGVyTWVk
aWFFbmdpbmUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2lvcy9NZWRpYVBsYXllclBy
aXZhdGVJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVJT1M6OnJl
Z2lzdGVyTWVkaWFFbmdpbmUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRp
YVBsYXllclByaXZhdGVRVEtpdC5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJp
dmF0ZVFUS2l0OjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy93aW4vTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tUaW1lVmlzdWFsQ29udGV4dC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0
OjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL21lZGlhc291
cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpyZWdpc3Rlck1lZGlhRW5naW5lKToKKwogMjAxNC0w
Mi0yMSAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBv
cnQgV2ViU2VsZWN0aW9ucyBpbiBXSzIgb24gaU9TLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA0
YjliZWRhYmUyNzlmNDNjNTZlMjU0ZTRhOGQ1NGYwZGNkZjhmZDUzLi5jOWVmZWNhNjQyZjI2ODk0
ZGIwODhlYzgwYjhkNjVkNWFmY2ZlNzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMzEzMywx
MSArMzEzMywxMSBAQCBfX1pON1dlYkNvcmU5UGFnZUdyb3VwMThjYXB0aW9uUHJlZmVyZW5jZXNF
dgogI2VuZGlmCiAKICNpZiBFTkFCTEUoVklERU8pCi1fX1pON1dlYkNvcmUyNU1lZGlhUGxheWVy
RmFjdG9yeVN1cHBvcnQyM2NhbGxSZWdpc3Rlck1lZGlhRW5naW5lRVBGdlBGdlBGTjNXVEYxMFBh
c3NPd25QdHJJTlNfMjdNZWRpYVBsYXllclByaXZhdGVJbnRlcmZhY2VFRUVQTlNfMTFNZWRpYVBs
YXllckVFUEZ2Uk5TMV83SGFzaFNldElOUzFfNlN0cmluZ0VOUzFfMTBTdHJpbmdIYXNoRU5TMV8x
MEhhc2hUcmFpdHNJU0FfRUVFRUVQRk5TNV8xMlN1cHBvcnRzVHlwZUVSS05TXzI4TWVkaWFFbmdp
bmVTdXBwb3J0UGFyYW1ldGVyc0VFUEZ2Uk5TMV82VmVjdG9ySVNBX0xtMEVOUzFfMTVDcmFzaE9u
T3ZlcmZsb3dFRUVFUEZ2dkVQRnZSS1NBX0VFRQorX19aTjdXZWJDb3JlMjVNZWRpYVBsYXllckZh
Y3RvcnlTdXBwb3J0MjNjYWxsUmVnaXN0ZXJNZWRpYUVuZ2luZUVQRnZQRnZQRk4zV1RGMTBQYXNz
T3duUHRySU5TXzI3TWVkaWFQbGF5ZXJQcml2YXRlSW50ZXJmYWNlRUVFUE5TXzExTWVkaWFQbGF5
ZXJFRVBGdlJOUzFfN0hhc2hTZXRJTlMxXzZTdHJpbmdFTlMxXzEwU3RyaW5nSGFzaEVOUzFfMTBI
YXNoVHJhaXRzSVNBX0VFRUVFUEZOUzVfMTJTdXBwb3J0c1R5cGVFUktOU18yOE1lZGlhRW5naW5l
U3VwcG9ydFBhcmFtZXRlcnNFRVBGdlJOUzFfNlZlY3RvcklTQV9MbTBFTlMxXzE1Q3Jhc2hPbk92
ZXJmbG93RUVFRVBGdnZFUEZ2UktTQV9FUEZiU1hfU1hfRUVFCiAjZW5kaWYKIAogI2lmIEVOQUJM
RShNRURJQV9TT1VSQ0UpCi1fX1pON1dlYkNvcmUyNk1vY2tNZWRpYVBsYXllck1lZGlhU291cmNl
MTlyZWdpc3Rlck1lZGlhRW5naW5lRVBGdlBGTjNXVEYxMFBhc3NPd25QdHJJTlNfMjdNZWRpYVBs
YXllclByaXZhdGVJbnRlcmZhY2VFRUVQTlNfMTFNZWRpYVBsYXllckVFUEZ2Uk5TMV83SGFzaFNl
dElOUzFfNlN0cmluZ0VOUzFfMTBTdHJpbmdIYXNoRU5TMV8xMEhhc2hUcmFpdHNJU0FfRUVFRUVQ
Rk5TNV8xMlN1cHBvcnRzVHlwZUVSS05TXzI4TWVkaWFFbmdpbmVTdXBwb3J0UGFyYW1ldGVyc0VF
UEZ2Uk5TMV82VmVjdG9ySVNBX0xtMEVOUzFfMTVDcmFzaE9uT3ZlcmZsb3dFRUVFUEZ2dkVQRnZS
S1NBX0VFCitfX1pON1dlYkNvcmUyNk1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlMTlyZWdpc3Rl
ck1lZGlhRW5naW5lRVBGdlBGTjNXVEYxMFBhc3NPd25QdHJJTlNfMjdNZWRpYVBsYXllclByaXZh
dGVJbnRlcmZhY2VFRUVQTlNfMTFNZWRpYVBsYXllckVFUEZ2Uk5TMV83SGFzaFNldElOUzFfNlN0
cmluZ0VOUzFfMTBTdHJpbmdIYXNoRU5TMV8xMEhhc2hUcmFpdHNJU0FfRUVFRUVQRk5TNV8xMlN1
cHBvcnRzVHlwZUVSS05TXzI4TWVkaWFFbmdpbmVTdXBwb3J0UGFyYW1ldGVyc0VFUEZ2Uk5TMV82
VmVjdG9ySVNBX0xtMEVOUzFfMTVDcmFzaE9uT3ZlcmZsb3dFRUVFUEZ2dkVQRnZSS1NBX0VQRmJT
WF9TWF9FRQogI2VuZGlmCiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCA0NzU0
NTRlMjE4MmJmY2Q1YTNkMGY3YmNmOGZmMjczZGIwNTlkNWUyLi5hYTA3N2YyNDhmNjlhZWUwOWIx
YTk0NDYyMTUyMzJhMTZjMzdkZDcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCkBAIC0xNjYsMTMgKzE2NiwxNCBAQCBzdHJ1Y3QgTWVk
aWFQbGF5ZXJGYWN0b3J5IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShNZWRpYVBsYXllckZh
Y3RvcnkpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBNZWRpYVBsYXll
ckZhY3RvcnkoQ3JlYXRlTWVkaWFFbmdpbmVQbGF5ZXIgY29uc3RydWN0b3IsIE1lZGlhRW5naW5l
U3VwcG9ydGVkVHlwZXMgZ2V0U3VwcG9ydGVkVHlwZXMsIE1lZGlhRW5naW5lU3VwcG9ydHNUeXBl
IHN1cHBvcnRzVHlwZUFuZENvZGVjcywKLSAgICAgICAgTWVkaWFFbmdpbmVHZXRTaXRlc0luTWVk
aWFDYWNoZSBnZXRTaXRlc0luTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGUg
Y2xlYXJNZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZUZvclNpdGUgY2xlYXJN
ZWRpYUNhY2hlRm9yU2l0ZSkKKyAgICAgICAgTWVkaWFFbmdpbmVHZXRTaXRlc0luTWVkaWFDYWNo
ZSBnZXRTaXRlc0luTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGUgY2xlYXJN
ZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZUZvclNpdGUgY2xlYXJNZWRpYUNh
Y2hlRm9yU2l0ZSwgTWVkaWFFbmdpbmVTdXBwb3J0c0tleVN5c3RlbSBzdXBwb3J0c0tleVN5c3Rl
bSkKICAgICAgICAgOiBjb25zdHJ1Y3Rvcihjb25zdHJ1Y3RvcikKICAgICAgICAgLCBnZXRTdXBw
b3J0ZWRUeXBlcyhnZXRTdXBwb3J0ZWRUeXBlcykKICAgICAgICAgLCBzdXBwb3J0c1R5cGVBbmRD
b2RlY3Moc3VwcG9ydHNUeXBlQW5kQ29kZWNzKQogICAgICAgICAsIGdldFNpdGVzSW5NZWRpYUNh
Y2hlKGdldFNpdGVzSW5NZWRpYUNhY2hlKQogICAgICAgICAsIGNsZWFyTWVkaWFDYWNoZShjbGVh
ck1lZGlhQ2FjaGUpCiAgICAgICAgICwgY2xlYXJNZWRpYUNhY2hlRm9yU2l0ZShjbGVhck1lZGlh
Q2FjaGVGb3JTaXRlKQorICAgICAgICAsIHN1cHBvcnRzS2V5U3lzdGVtKHN1cHBvcnRzS2V5U3lz
dGVtKQogICAgIHsKICAgICB9CiAKQEAgLTE4Miw5ICsxODMsMTAgQEAgcHVibGljOgogICAgIE1l
ZGlhRW5naW5lR2V0U2l0ZXNJbk1lZGlhQ2FjaGUgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGU7CiAgICAg
TWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGUgY2xlYXJNZWRpYUNhY2hlOwogICAgIE1lZGlhRW5n
aW5lQ2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlOworICAgIE1l
ZGlhRW5naW5lU3VwcG9ydHNLZXlTeXN0ZW0gc3VwcG9ydHNLZXlTeXN0ZW07CiB9OwogCi1zdGF0
aWMgdm9pZCBhZGRNZWRpYUVuZ2luZShDcmVhdGVNZWRpYUVuZ2luZVBsYXllciwgTWVkaWFFbmdp
bmVTdXBwb3J0ZWRUeXBlcywgTWVkaWFFbmdpbmVTdXBwb3J0c1R5cGUsIE1lZGlhRW5naW5lR2V0
U2l0ZXNJbk1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlLCBNZWRpYUVuZ2lu
ZUNsZWFyTWVkaWFDYWNoZUZvclNpdGUpOworc3RhdGljIHZvaWQgYWRkTWVkaWFFbmdpbmUoQ3Jl
YXRlTWVkaWFFbmdpbmVQbGF5ZXIsIE1lZGlhRW5naW5lU3VwcG9ydGVkVHlwZXMsIE1lZGlhRW5n
aW5lU3VwcG9ydHNUeXBlLCBNZWRpYUVuZ2luZUdldFNpdGVzSW5NZWRpYUNhY2hlLCBNZWRpYUVu
Z2luZUNsZWFyTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlLCBN
ZWRpYUVuZ2luZVN1cHBvcnRzS2V5U3lzdGVtKTsKIAogc3RhdGljIE1lZGlhUGxheWVyRmFjdG9y
eSogYmVzdE1lZGlhRW5naW5lRm9yU3VwcG9ydFBhcmFtZXRlcnMoY29uc3QgTWVkaWFFbmdpbmVT
dXBwb3J0UGFyYW1ldGVycyYsIE1lZGlhUGxheWVyRmFjdG9yeSogY3VycmVudCA9IDApOwogc3Rh
dGljIE1lZGlhUGxheWVyRmFjdG9yeSogbmV4dE1lZGlhRW5naW5lKE1lZGlhUGxheWVyRmFjdG9y
eSogY3VycmVudCk7CkBAIC0yMzcsMTMgKzIzOSwxMyBAQCBzdGF0aWMgVmVjdG9yPE1lZGlhUGxh
eWVyRmFjdG9yeSo+JiBpbnN0YWxsZWRNZWRpYUVuZ2luZXMoUmVxdWVyeUVuZ2luZU9wdGlvbnMg
cgogfQogCiBzdGF0aWMgdm9pZCBhZGRNZWRpYUVuZ2luZShDcmVhdGVNZWRpYUVuZ2luZVBsYXll
ciBjb25zdHJ1Y3RvciwgTWVkaWFFbmdpbmVTdXBwb3J0ZWRUeXBlcyBnZXRTdXBwb3J0ZWRUeXBl
cywgTWVkaWFFbmdpbmVTdXBwb3J0c1R5cGUgc3VwcG9ydHNUeXBlLAotICAgIE1lZGlhRW5naW5l
R2V0U2l0ZXNJbk1lZGlhQ2FjaGUgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGUsIE1lZGlhRW5naW5lQ2xl
YXJNZWRpYUNhY2hlIGNsZWFyTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVG
b3JTaXRlIGNsZWFyTWVkaWFDYWNoZUZvclNpdGUpCisgICAgTWVkaWFFbmdpbmVHZXRTaXRlc0lu
TWVkaWFDYWNoZSBnZXRTaXRlc0luTWVkaWFDYWNoZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2Fj
aGUgY2xlYXJNZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZUZvclNpdGUgY2xl
YXJNZWRpYUNhY2hlRm9yU2l0ZSwgTWVkaWFFbmdpbmVTdXBwb3J0c0tleVN5c3RlbSBzdXBwb3J0
c0tleVN5c3RlbSkKIHsKICAgICBBU1NFUlQoY29uc3RydWN0b3IpOwogICAgIEFTU0VSVChnZXRT
dXBwb3J0ZWRUeXBlcyk7CiAgICAgQVNTRVJUKHN1cHBvcnRzVHlwZSk7CiAKLSAgICBpbnN0YWxs
ZWRNZWRpYUVuZ2luZXMoKS5hcHBlbmQobmV3IE1lZGlhUGxheWVyRmFjdG9yeShjb25zdHJ1Y3Rv
ciwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgZ2V0U2l0ZXNJbk1lZGlhQ2FjaGUs
IGNsZWFyTWVkaWFDYWNoZSwgY2xlYXJNZWRpYUNhY2hlRm9yU2l0ZSkpOworICAgIGluc3RhbGxl
ZE1lZGlhRW5naW5lcygpLmFwcGVuZChuZXcgTWVkaWFQbGF5ZXJGYWN0b3J5KGNvbnN0cnVjdG9y
LCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCBnZXRTaXRlc0luTWVkaWFDYWNoZSwg
Y2xlYXJNZWRpYUNhY2hlLCBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlLCBzdXBwb3J0c0tleVN5c3Rl
bSkpOwogfQogCiBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBhcHBsaWNhdGlvbk9jdGV0U3Ry
ZWFtKCkKQEAgLTEwMDgsNiArMTAxMCwxNSBAQCB2b2lkIE1lZGlhUGxheWVyOjpjbGVhck1lZGlh
Q2FjaGVGb3JTaXRlKGNvbnN0IFN0cmluZyYgc2l0ZSkKICAgICB9CiB9CiAKK2Jvb2wgTWVkaWFQ
bGF5ZXI6OnN1cHBvcnRzS2V5U3lzdGVtKGNvbnN0IFN0cmluZyYga2V5U3lzdGVtLCBjb25zdCBT
dHJpbmcmIG1pbWVUeXBlKQoreworICAgIGZvciAoYXV0byYgZW5naW5lIDogaW5zdGFsbGVkTWVk
aWFFbmdpbmVzKCkpIHsKKyAgICAgICAgaWYgKGVuZ2luZS0+c3VwcG9ydHNLZXlTeXN0ZW0gJiYg
ZW5naW5lLT5zdXBwb3J0c0tleVN5c3RlbShrZXlTeXN0ZW0sIG1pbWVUeXBlKSkKKyAgICAgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQgTWVk
aWFQbGF5ZXI6OnNldFByaXZhdGVCcm93c2luZ01vZGUoYm9vbCBwcml2YXRlQnJvd3NpbmdNb2Rl
KQogewogICAgIG1fcHJpdmF0ZUJyb3dzaW5nID0gcHJpdmF0ZUJyb3dzaW5nTW9kZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4IDhjYTkx
MzEzMzIyYzQwNzQwZmYzOTU1ZjZmNDg0MWViMWE0ZjdhNzcuLjFkNDdjYzIxZDNmZTc0OThkMzlh
MWEzZWRhYmU1YTk1NTNhOWNhNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtMjgzLDYgKzI4Myw3IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgdm9pZCBnZXRTaXRlc0luTWVkaWFDYWNoZShWZWN0b3I8U3RyaW5nPiYpOwogICAgIHN0YXRp
YyB2b2lkIGNsZWFyTWVkaWFDYWNoZSgpOwogICAgIHN0YXRpYyB2b2lkIGNsZWFyTWVkaWFDYWNo
ZUZvclNpdGUoY29uc3QgU3RyaW5nJik7CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNLZXlTeXN0
ZW0oY29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0sIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpOwogCiAg
ICAgYm9vbCBzdXBwb3J0c0Z1bGxzY3JlZW4oKSBjb25zdDsKICAgICBib29sIHN1cHBvcnRzU2F2
ZSgpIGNvbnN0OwpAQCAtNTkyLDkgKzU5MywxMCBAQCB0eXBlZGVmIE1lZGlhUGxheWVyOjpTdXBw
b3J0c1R5cGUgKCpNZWRpYUVuZ2luZVN1cHBvcnRzVHlwZSkoY29uc3QgTWVkaWFFbmdpbmVTdQog
dHlwZWRlZiB2b2lkICgqTWVkaWFFbmdpbmVHZXRTaXRlc0luTWVkaWFDYWNoZSkoVmVjdG9yPFN0
cmluZz4mKTsKIHR5cGVkZWYgdm9pZCAoKk1lZGlhRW5naW5lQ2xlYXJNZWRpYUNhY2hlKSgpOwog
dHlwZWRlZiB2b2lkICgqTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlKShjb25zdCBT
dHJpbmcmKTsKK3R5cGVkZWYgYm9vbCAoKk1lZGlhRW5naW5lU3VwcG9ydHNLZXlTeXN0ZW0pKGNv
bnN0IFN0cmluZyYga2V5U3lzdGVtLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKIAogdHlwZWRl
ZiB2b2lkICgqTWVkaWFFbmdpbmVSZWdpc3RyYXIpKENyZWF0ZU1lZGlhRW5naW5lUGxheWVyLCBN
ZWRpYUVuZ2luZVN1cHBvcnRlZFR5cGVzLCBNZWRpYUVuZ2luZVN1cHBvcnRzVHlwZSwKLSAgICBN
ZWRpYUVuZ2luZUdldFNpdGVzSW5NZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNo
ZSwgTWVkaWFFbmdpbmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlKTsKKyAgICBNZWRpYUVuZ2luZUdl
dFNpdGVzSW5NZWRpYUNhY2hlLCBNZWRpYUVuZ2luZUNsZWFyTWVkaWFDYWNoZSwgTWVkaWFFbmdp
bmVDbGVhck1lZGlhQ2FjaGVGb3JTaXRlLCBNZWRpYUVuZ2luZVN1cHBvcnRzS2V5U3lzdGVtKTsK
IHR5cGVkZWYgdm9pZCAoKk1lZGlhRW5naW5lUmVnaXN0ZXIpKE1lZGlhRW5naW5lUmVnaXN0cmFy
KTsKIAogY2xhc3MgTWVkaWFQbGF5ZXJGYWN0b3J5U3VwcG9ydCB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcApp
bmRleCA1OTIzZDdkZGIwYjQ0MTNlYjJhYWExOTNlNGQ0ZGY3MWZhMTc1YzBhLi41OTE1ZGQ0MDBl
YTU4MjRmNTdkZmIyNzE5MWEyOGE1MDMzOGNmMzQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uQ0YuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKQEAgLTI5
Nyw3ICsyOTcsNyBAQCBQYXNzT3duUHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6OmNyZWF0ZQogdm9pZCBNZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25DRjo6cmVnaXN0ZXJNZWRpYUVuZ2luZShNZWRpYUVuZ2luZVJlZ2lz
dHJhciByZWdpc3RyYXIpCiB7CiAgICAgaWYgKGlzQXZhaWxhYmxlKCkpCi0gICAgICAgIHJlZ2lz
dHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0c1R5cGUsIDAsIDAsIDApOwor
ICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBl
LCAwLCAwLCAwLCAwKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6Ok1l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGKE1lZGlhUGxheWVyKiBwbGF5ZXIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDLmgKaW5kZXggYzk3N2EwMzVlZWFhMWJmZDU4OGRlYjJhMTVlNWNjMjQ2MzQ3
ZjUyYi4uZTM3NDY5NjNlMWFlOTRmMDMyMjlkMTM5NjA4NmY5NTVkOGRlNGMzNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbk9iakMuaApAQCAtMTIyLDYgKzEyMiw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIFBh
c3NPd25QdHI8TWVkaWFQbGF5ZXJQcml2YXRlSW50ZXJmYWNlPiBjcmVhdGUoTWVkaWFQbGF5ZXIq
KTsKICAgICBzdGF0aWMgdm9pZCBnZXRTdXBwb3J0ZWRUeXBlcyhIYXNoU2V0PFN0cmluZz4mIHR5
cGVzKTsKICAgICBzdGF0aWMgTWVkaWFQbGF5ZXI6OlN1cHBvcnRzVHlwZSBzdXBwb3J0c1R5cGUo
Y29uc3QgTWVkaWFFbmdpbmVTdXBwb3J0UGFyYW1ldGVycyYpOworICAgIHN0YXRpYyBib29sIHN1
cHBvcnRzS2V5U3lzdGVtKGNvbnN0IFN0cmluZyYga2V5U3lzdGVtLCBjb25zdCBTdHJpbmcmIG1p
bWVUeXBlKTsKIAogICAgIHN0YXRpYyBib29sIGlzQXZhaWxhYmxlKCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b25PYmpDLm1tCmluZGV4IGFiMjdkMmVkZjgyM2Y2NTc0MGRkNTcyOTc1MDA3M2NkMDI5OTI1ZDUu
LmJjOGQzMWE2MTcwMzI2MTliMDg2N2E3YjIyZWM5MmYyOWE4MzYyMTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5tbQpAQCAtMjcwLDcgKzI3MCw3IEBAIFBhc3NPd25QdHI8TWVkaWFQbGF5ZXJQcml2
YXRlSW50ZXJmYWNlPiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpjcmVhCiB2
b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnJlZ2lzdGVyTWVkaWFFbmdp
bmUoTWVkaWFFbmdpbmVSZWdpc3RyYXIgcmVnaXN0cmFyKQogewogICAgIGlmIChpc0F2YWlsYWJs
ZSgpKQotICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9y
dHNUeXBlLCAwLCAwLCAwKTsKKyAgICAgICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVk
VHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCwgc3VwcG9ydHNLZXlTeXN0ZW0pOwogfQogCiBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDKE1lZGlhUGxheWVyKiBwbGF5ZXIpCkBAIC05NjYsMTAgKzk2NiwxMCBAQCB2
b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmdldFN1cHBvcnRlZFR5cGVz
KEhhc2hTZXQ8U3RyaW5nPiYgc3VwcAogICAgIHN1cHBvcnRlZFR5cGVzID0gbWltZVR5cGVDYWNo
ZSgpOwogfSAKIAotI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCisjaWYgRU5BQkxFKEVOQ1JZ
UFRFRF9NRURJQSkgfHwgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQV9WMikKIHN0YXRpYyBib29sIGtl
eVN5c3RlbUlzU3VwcG9ydGVkKGNvbnN0IFN0cmluZyYga2V5U3lzdGVtKQogewotICAgIGlmIChl
cXVhbElnbm9yaW5nQ2FzZShrZXlTeXN0ZW0sICJjb20uYXBwbGUubHNrZCIpIHx8IGVxdWFsSWdu
b3JpbmdDYXNlKGtleVN5c3RlbSwgImNvbS5hcHBsZS5sc2tkLjFfMCIpKQorICAgIGlmIChlcXVh
bElnbm9yaW5nQ2FzZShrZXlTeXN0ZW0sICJjb20uYXBwbGUuZnBzIikgfHwgZXF1YWxJZ25vcmlu
Z0Nhc2Uoa2V5U3lzdGVtLCAiY29tLmFwcGxlLmZwcy4xXzAiKSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtMTAxMiw2ICsxMDEyLDI1IEBAIE1lZGlhUGxh
eWVyOjpTdXBwb3J0c1R5cGUgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c3Vw
cG9ydHNUeXBlKGNvbnN0CiAgICAgcmV0dXJuIFtBVlVSTEFzc2V0IGlzUGxheWFibGVFeHRlbmRl
ZE1JTUVUeXBlOnR5cGVTdHJpbmddID8gTWVkaWFQbGF5ZXI6OklzU3VwcG9ydGVkIDogTWVkaWFQ
bGF5ZXI6Ok1heUJlU3VwcG9ydGVkOzsKIH0KIAorYm9vbCBNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDOjpzdXBwb3J0c0tleVN5c3RlbShjb25zdCBTdHJpbmcmIGtleVN5c3RlbSwg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sKKyNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKSB8
fCBFTkFCTEUoRU5DUllQVEVEX01FRElBX1YyKQorICAgIGlmICgha2V5U3lzdGVtLmlzRW1wdHko
KSkgeworICAgICAgICBpZiAoIWtleVN5c3RlbUlzU3VwcG9ydGVkKGtleVN5c3RlbSkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgaWYgKCFtaW1lVHlwZS5pc0VtcHR5KCkg
JiYgIW1pbWVUeXBlQ2FjaGUoKS5jb250YWlucyhtaW1lVHlwZSkpCisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorI2Vsc2UKKyAgICBVTlVT
RURfUEFSQU0oa2V5U3lzdGVtKTsKKyAgICBVTlVTRURfUEFSQU0obWltZVR5cGUpOworI2VuZGlm
CisgICAgcmV0dXJuIGZhbHNlOworfQorCiAjaWYgSEFWRShBVkZPVU5EQVRJT05fTE9BREVSX0RF
TEVHQVRFKQogYm9vbCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpzaG91bGRX
YWl0Rm9yTG9hZGluZ09mUmVzb3VyY2UoQVZBc3NldFJlc291cmNlTG9hZGluZ1JlcXVlc3QqIGF2
UmVxdWVzdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01l
ZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbQppbmRleCA1N2NkZDllODg0OTA4
ZjViNTBkODNhM2ZiMWM1MGI0OTJmMGFjNDFiLi5hYzRhNjllMzRiMjdkZWFjYmM1M2Q5Y2NkMTM5
NzdhNzk2MGI5ZTdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCkBAIC0xNjUsNyArMTY1
LDcgQEAgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjp+TWVkaWFQbGF5ZXJQ
cml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDKCkKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmpDOjpyZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5lUmVnaXN0cmFyIHJl
Z2lzdHJhcikKIHsKICAgICBpZiAoaXNBdmFpbGFibGUoKSkKLSAgICAgICAgcmVnaXN0cmFyKGNy
ZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCk7CisgICAgICAg
IHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBwb3J0c1R5cGUsIDAsIDAs
IDAsIDApOwogfQogCiBQYXNzT3duUHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gTWVk
aWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDOjpjcmVhdGUoTWVkaWFQbGF5ZXIqIHBs
YXllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAK
aW5kZXggMzE3MjRlYmFkYTNlZmE3MDJkMmE5YTFiM2U3MTJmNjMyNWVmN2NlNy4uMzMxYmUxYTU5
OGEwODZmZWE3Y2MyYzNiYzgyM2U1OWIwZWE1MTM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTE4Nyw3ICsxODcsNyBAQCBQYXNzT3du
UHRyPE1lZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyOjpjcmVhdGUoTWVkaQogdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnJlZ2lz
dGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdpbmVSZWdpc3RyYXIgcmVnaXN0cmFyKQogewogICAgIGlm
IChpc0F2YWlsYWJsZSgpKQotICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRU
eXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAwKTsKKyAgICAgICAgcmVnaXN0cmFyKGNyZWF0ZSwg
Z2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCwgMCk7CiB9CiAKIGJvb2wg
aW5pdGlhbGl6ZUdTdHJlYW1lckFuZFJlZ2lzdGVyV2ViS2l0RWxlbWVudHMoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaW9zL01lZGlhUGxheWVyUHJpdmF0
ZUlPUy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2lvcy9NZWRpYVBsYXll
clByaXZhdGVJT1MubW0KaW5kZXggNTJiYjAxOTAxNzg1NDQxNTI0MDNhZmM1MTUyZDhlYmI5MDM4
MGE3Ni4uMDk3N2QxNDE4MTU2NDg1NDE1MGZiYjQzZDI3MjFlOTdkMjUxNTNiNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaW9zL01lZGlhUGxheWVyUHJpdmF0
ZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9pb3MvTWVkaWFQ
bGF5ZXJQcml2YXRlSU9TLm1tCkBAIC0xMTQsNyArMTE0LDcgQEAgUGFzc093blB0cjxNZWRpYVBs
YXllclByaXZhdGVJbnRlcmZhY2U+IE1lZGlhUGxheWVyUHJpdmF0ZUlPUzo6Y3JlYXRlKE1lZGlh
UGxheWUKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlSU9TOjpyZWdpc3Rlck1lZGlhRW5naW5lKE1l
ZGlhRW5naW5lUmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKICAgICBpZiAoaXNBdmFpbGFibGUoKSkK
LSAgICAgICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlw
ZSwgMCwgMCwgMCk7CisgICAgICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVz
LCBzdXBwb3J0c1R5cGUsIDAsIDAsIDAsIDApOwogfQogCiBNZWRpYVBsYXllclByaXZhdGVJT1M6
Ok1lZGlhUGxheWVyUHJpdmF0ZUlPUyhNZWRpYVBsYXllciogcGxheWVyKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFU
S2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVy
UHJpdmF0ZVFUS2l0Lm1tCmluZGV4IDk3ZTdiMWRlMTk5YTUzYzkyZjVkNmY5Y2IwZjljOWYyZDk5
NzEwODcuLjQzMGMzMmJiNTJhMzdlZDJkNjE3ZmIyMmM3NjE3MzRiMTg0YjhmOWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZh
dGVRVEtpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVk
aWFQbGF5ZXJQcml2YXRlUVRLaXQubW0KQEAgLTE4NSw3ICsxODUsNyBAQCBQYXNzT3duUHRyPE1l
ZGlhUGxheWVyUHJpdmF0ZUludGVyZmFjZT4gTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmNyZWF0
ZShNZWRpYVBsYQogdm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6cmVnaXN0ZXJNZWRpYUVu
Z2luZShNZWRpYUVuZ2luZVJlZ2lzdHJhciByZWdpc3RyYXIpCiB7CiAgICAgaWYgKGlzQXZhaWxh
YmxlKCkpCi0gICAgICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBw
b3J0c1R5cGUsIGdldFNpdGVzSW5NZWRpYUNhY2hlLCBjbGVhck1lZGlhQ2FjaGUsIGNsZWFyTWVk
aWFDYWNoZUZvclNpdGUpOworICAgICAgICByZWdpc3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRU
eXBlcywgc3VwcG9ydHNUeXBlLCBnZXRTaXRlc0luTWVkaWFDYWNoZSwgY2xlYXJNZWRpYUNhY2hl
LCBjbGVhck1lZGlhQ2FjaGVGb3JTaXRlLCAwKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2YXRlUVRL
aXQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0KE1lZGlhUGxheWVyKiBwbGF5ZXIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5ZXJQcml2
YXRlUXVpY2tUaW1lVmlzdWFsQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy93aW4vTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tUaW1lVmlzdWFsQ29udGV4dC5jcHAK
aW5kZXggMzE4NWU1YjliNzc1MjQ2MjlmNjg5Mzg2NTMxZWI4ZTkyYzdjMzRiOS4uNmY4NDNiOGJk
ZjIxOTQ0YzVkY2U4OTQ0YWNjNDJmZDgzNDBkNzBmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVZpc3Vh
bENvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9N
ZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0LmNwcApAQCAtMTUyLDcgKzE1
Miw3IEBAIFBhc3NPd25QdHI8TWVkaWFQbGF5ZXJQcml2YXRlSW50ZXJmYWNlPiBNZWRpYVBsYXll
clByaXZhdGVRdWlja1RpbWVWaXN1YWxDb250ZXh0CiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVF1
aWNrVGltZVZpc3VhbENvbnRleHQ6OnJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdpbmVSZWdp
c3RyYXIgcmVnaXN0cmFyKQogewogICAgIGlmIChpc0F2YWlsYWJsZSgpKQotICAgICAgICByZWdp
c3RyYXIoY3JlYXRlLCBnZXRTdXBwb3J0ZWRUeXBlcywgc3VwcG9ydHNUeXBlLCAwLCAwLCAwKTsK
KyAgICAgICAgcmVnaXN0cmFyKGNyZWF0ZSwgZ2V0U3VwcG9ydGVkVHlwZXMsIHN1cHBvcnRzVHlw
ZSwgMCwgMCwgMCwgMCk7CiB9CiAKIE1lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVZpc3VhbENv
bnRleHQ6Ok1lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVZpc3VhbENvbnRleHQoTWVkaWFQbGF5
ZXIqIHBsYXllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHAK
aW5kZXggNGNhODg1ZDE1ODk1YTY0YzBjYTAzNDdkYTJlODVkNTRjZTIxNmExMi4uYmY2MWEzODM3
YzcwYTEyMTBiZDc4NTcxNzdkMDZhZWY3NTdjOWQ4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVk
aWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogLy8gTWVkaWFQbGF5ZXIgRW5pZ25lIFN1cHBvcnQKIHZvaWQgTW9ja01lZGlhUGxheWVy
TWVkaWFTb3VyY2U6OnJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdpbmVSZWdpc3RyYXIgcmVn
aXN0cmFyKQogewotICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5cGVzLCBzdXBw
b3J0c1R5cGUsIDAsIDAsIDApOworICAgIHJlZ2lzdHJhcihjcmVhdGUsIGdldFN1cHBvcnRlZFR5
cGVzLCBzdXBwb3J0c1R5cGUsIDAsIDAsIDAsIDApOwogfQogCiBQYXNzT3duUHRyPE1lZGlhUGxh
eWVyUHJpdmF0ZUludGVyZmFjZT4gTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmNyZWF0ZShN
ZWRpYVBsYXllciogcGxheWVyKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>