<?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>173269</bug_id>
          
          <creation_ts>2017-06-12 13:00:59 -0700</creation_ts>
          <short_desc>Seeking an MSE video will begin playing audio long before rendering video</short_desc>
          <delta_ts>2017-06-13 14:46:45 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=173331</see_also>
          <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="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jlewis3</cc>
    
    <cc>jonlee</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1318344</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-06-12 13:00:59 -0700</bug_when>
    <thetext>Seeking an MSE video will begin playing audio long before rendering video</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318346</commentid>
    <comment_count>1</comment_count>
      <attachid>312688</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-06-12 13:25:01 -0700</bug_when>
    <thetext>Created attachment 312688
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318352</commentid>
    <comment_count>2</comment_count>
      <attachid>312688</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-06-12 13:43:18 -0700</bug_when>
    <thetext>Comment on attachment 312688
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:440
&gt; +    if (!CFEqual(kCMSampleBufferConsumerNotification_BufferConsumed, notificationName))

Nit: kCMSampleBufferConsumerNotification_BufferConsumed should be soft linked.

&gt; Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:983
&gt; +                CMSetAttachment(sampleCopy.get(), kCMSampleBufferAttachmentKey_PostNotificationWhenConsumed, @{kBufferConsumedContext: context.get()}, kCMAttachmentMode_ShouldNotPropagate);

Nit: ditto for kCMSampleBufferAttachmentKey_PostNotificationWhenConsumed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318399</commentid>
    <comment_count>3</comment_count>
      <attachid>312707</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-06-12 15:16:06 -0700</bug_when>
    <thetext>Created attachment 312707
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318400</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-06-12 15:17:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/32448773&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318401</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-06-12 15:17:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/32723702&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318412</commentid>
    <comment_count>6</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2017-06-12 15:30:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/32448773&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318422</commentid>
    <comment_count>7</comment_count>
      <attachid>312711</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2017-06-12 15:42:48 -0700</bug_when>
    <thetext>Created attachment 312711
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318429</commentid>
    <comment_count>8</comment_count>
      <attachid>312711</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 15:57:22 -0700</bug_when>
    <thetext>Comment on attachment 312711
Patch for landing

Clearing flags on attachment: 312711

Committed r218150: &lt;http://trac.webkit.org/changeset/218150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318430</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 15:57:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318497</commentid>
    <comment_count>10</comment_count>
    <who name="Matt Lewis">jlewis3</who>
    <bug_when>2017-06-12 17:11:06 -0700</bug_when>
    <thetext>Follow-up build fix:
https://trac.webkit.org/changeset/218158/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312688</attachid>
            <date>2017-06-12 13:25:01 -0700</date>
            <delta_ts>2017-06-12 15:16:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173269-20170612132459.patch</filename>
            <type>text/plain</type>
            <size>11998</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3ODkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRiMjg1MjBhNTJjNThk
ZjFiNDU5ZTA3NTEwZTliZDNmOTJmODVlNi4uOWQ3NGQ4Zjg4ZjFmY2E4Y2M0MGI1OTY5ZjM2OTM3
OWNjOWY0MGIzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE3LTA2LTEyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFNlZWtpbmcgYW4gTVNFIHZp
ZGVvIHdpbGwgYmVnaW4gcGxheWluZyBhdWRpbyBsb25nIGJlZm9yZSByZW5kZXJpbmcgdmlkZW8K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzI2OQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG5v
dGlmaWNhdGlvbiBsaXN0ZW5lciB3aGljaCB3aWxsIGJlIG1lc3NhZ2VkIHdoZW4gYSB0by1iZS1k
aXNwbGF5ZWQgc2FtcGxlCisgICAgICAgIGlzIGRlY29kZWQgdG8gc2lnbmFsIHRoYXQgdGhlICdz
ZWVrZWQnIGV2ZW50IHNob3VsZCBmaXJlLiBDb25zb2xpZGF0ZSBhbGwgdGhlIHZhcmlvdXMKKyAg
ICAgICAgZmx1c2ggbWV0aG9kcyB0byBmdW5uZWwgaW50byBhIHNpbmdsZSBmbHVzaFZpZGVvKCku
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclBy
aXZhdGVBVkZPYmpDLm1tOgorICAgICAgICAoLVtXZWJCdWZmZXJDb25zdW1lZENvbnRleHQgaW5p
dFdpdGhQYXJlbnQ6YnVmZmVyOl0pOgorICAgICAgICAoLVtXZWJCdWZmZXJDb25zdW1lZENvbnRl
eHQgZGVhbGxvY10pOgorICAgICAgICAoLVtXZWJCdWZmZXJDb25zdW1lZENvbnRleHQgcGFyZW50
XSk6CisgICAgICAgICgtW1dlYkJ1ZmZlckNvbnN1bWVkQ29udGV4dCBidWZmZXJdKToKKyAgICAg
ICAgKFdlYkNvcmU6OmJ1ZmZlcldhc0NvbnN1bWVkQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29y
ZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpD
KToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjp+U291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakMpOgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJp
dmF0ZUFWRk9iakM6OmZsdXNoKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjpmbHVzaFZpZGVvKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclBy
aXZhdGVBVkZPYmpDOjplbnF1ZXVlU2FtcGxlKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOjpidWZmZXJXYXNDb25zdW1lZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6d2lsbFNlZWspOgorCiAyMDE3LTA2LTA5ICBK
ZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhIGVsZW1lbnRz
IGFyZSBhbGxvd2VkIHRvIGNvbnRpbnVlIHRvIGxvYWQgbWVkaWEgZGF0YSBhZnRlciBuYXZpZ2F0
aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oCmluZGV4IDdjOWYyZjczOWIxNTQ0Nzk4YmE0ODhj
N2ZiODU3YWRiNThlMGNkNTUuLmY3ZDhjNzY3YTcxNjE1OGQwZDYwNTg2NGZlZThjMGU1ZjZjMGY3
NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxh
eWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oCkBAIC04Myw2ICs4Myw3IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNlZWtDb21wbGV0ZWQoKTsKICAgICB2b2lkIHNldExvYWRpbmdQcm9ncmVzc3Nl
ZChib29sIGZsYWcpIHsgbV9sb2FkaW5nUHJvZ3Jlc3NlZCA9IGZsYWc7IH0KICAgICB2b2lkIHNl
dEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoYm9vbCk7CisgICAgYm9vbCBoYXNBdmFpbGFibGVWaWRl
b0ZyYW1lKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdm9pZCBzZXRIYXNBdmFpbGFibGVBdWRpb1Nh
bXBsZShBVlNhbXBsZUJ1ZmZlckF1ZGlvUmVuZGVyZXIqLCBib29sKTsKICAgICBib29sIGFsbFJl
bmRlcmVyc0hhdmVBdmFpbGFibGVTYW1wbGVzKCkgY29uc3QgeyByZXR1cm4gbV9hbGxSZW5kZXJl
cnNIYXZlQXZhaWxhYmxlU2FtcGxlczsgfQogICAgIHZvaWQgdXBkYXRlQWxsUmVuZGVyZXJzSGF2
ZUF2YWlsYWJsZVNhbXBsZXMoKTsKQEAgLTE4Myw4ICsxODQsNiBAQCBwcml2YXRlOgogICAgIHZv
aWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CiAg
ICAgdm9pZCBwYWludEN1cnJlbnRGcmFtZUluQ29udGV4dChHcmFwaGljc0NvbnRleHQmLCBjb25z
dCBGbG9hdFJlY3QmKSBvdmVycmlkZTsKICAgICBib29sIGNvcHlWaWRlb1RleHR1cmVUb1BsYXRm
b3JtVGV4dHVyZShHcmFwaGljc0NvbnRleHQzRCosIFBsYXRmb3JtM0RPYmplY3QsIEdDM0RlbnVt
IHRhcmdldCwgR0MzRGludCBsZXZlbCwgR0MzRGVudW0gaW50ZXJuYWxGb3JtYXQsIEdDM0RlbnVt
IGZvcm1hdCwgR0MzRGVudW0gdHlwZSwgYm9vbCBwcmVtdWx0aXBseUFscGhhLCBib29sIGZsaXBZ
KSBvdmVycmlkZTsKLSAgICAKLSAgICBib29sIGhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoKSBjb25z
dCBvdmVycmlkZTsKIAogICAgIGJvb2wgc3VwcG9ydHNBY2NlbGVyYXRlZFJlbmRlcmluZygpIGNv
bnN0IG92ZXJyaWRlOwogICAgIC8vIGNhbGxlZCB3aGVuIHRoZSByZW5kZXJpbmcgc3lzdGVtIGZs
aXBzIHRoZSBpbnRvIG9yIG91dCBvZiBhY2NlbGVyYXRlZCByZW5kZXJpbmcgbW9kZS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oCmlu
ZGV4IGEwYTAxN2UzNzMzMTEzMzg3NzRjNmZhMjA2NDI3NDM4MGYzZTFlYWUuLjA4MWFhMDg4NTNl
NzY5ZmUzOTI0NmMyMTZmZjgzZGEyZGI2ZDIxNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaApAQCAtMTE0LDYgKzExNCw4IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldFZpZGVvTGF5ZXIoQVZTYW1wbGVCdWZmZXJEaXNwbGF5TGF5
ZXIqKTsKICAgICB2b2lkIHNldERlY29tcHJlc3Npb25TZXNzaW9uKFdlYkNvcmVEZWNvbXByZXNz
aW9uU2Vzc2lvbiopOwogCisgICAgdm9pZCBidWZmZXJXYXNDb25zdW1lZCgpOworCiBwcml2YXRl
OgogICAgIGV4cGxpY2l0IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKE1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakMqKTsKIApAQCAtMTM2LDcgKzEzOCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBk
ZXN0cm95UGFyc2VyKCk7CiAgICAgdm9pZCBkZXN0cm95UmVuZGVyZXJzKCk7CiAKLSAgICB2b2lk
IGZsdXNoKEFWU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyICopOworICAgIHZvaWQgZmx1c2hWaWRl
bygpOwogICAgIHZvaWQgZmx1c2goQVZTYW1wbGVCdWZmZXJBdWRpb1JlbmRlcmVyICopOwogCiAg
ICAgV2Vha1B0cjxTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQz4gY3JlYXRlV2Vha1B0cigpIHsg
cmV0dXJuIG1fd2Vha0ZhY3RvcnkuY3JlYXRlV2Vha1B0cigpOyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tCmluZGV4IDFiZGQ5
ODdiNWY2NTYwOTM4N2IyYzI4MTk2ZmNkN2Q4MjNmYmMxZjAuLjMwMDgyYjdjZWFmOGJkYjQ0Njkz
NDM5OTAyMGM3MGQxOTk1NjlmYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tCkBAIC0zNjQsNiArMzY0LDMwIEBAIC0gKHZv
aWQpbGF5ZXJGYWlsZWRUb0RlY29kZTooTlNOb3RpZmljYXRpb24qKW5vdGUKIH0KIEBlbmQKIAor
I3ByYWdtYSBtYXJrIC0KKworQGludGVyZmFjZSBXZWJCdWZmZXJDb25zdW1lZENvbnRleHQgOiBO
U09iamVjdCB7CisgICAgV2Vha1B0cjxXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qz4gX3BhcmVudDsKK30KK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIFdlYkNvcmU6OlNvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDKiBwYXJlbnQ7CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBXZWJCdWZm
ZXJDb25zdW1lZENvbnRleHQKKy0gKGlkKWluaXRXaXRoUGFyZW50OihXZWFrUHRyPFdlYkNvcmU6
OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDPilwYXJlbnQKK3sKKyAgICBzZWxmID0gW3N1cGVy
IGluaXRdOworICAgIGlmIChzZWxmKQorICAgICAgICBfcGFyZW50ID0gcGFyZW50OworICAgIHJl
dHVybiBzZWxmOworfQorCitAZHluYW1pYyBwYXJlbnQ7CistIChXZWJDb3JlOjpTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQyopcGFyZW50Cit7CisgICAgcmV0dXJuIF9wYXJlbnQuZ2V0KCk7Cit9
CitAZW5kCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogI3ByYWdtYSBtYXJrIC0KQEAgLTQwMiw2
ICs0MjYsMjkgQEAgcHJvdGVjdGVkOgogI3ByYWdtYSBtYXJrIC0KICNwcmFnbWEgbWFyayBTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQwogCitzdGF0aWMgTlNTdHJpbmcgKmtCdWZmZXJDb25zdW1l
ZENvbnRleHQgPSBAIkJ1ZmZlckNvbnN1bWVkQ29udGV4dCI7CisKK3N0YXRpYyB2b2lkIGJ1ZmZl
cldhc0NvbnN1bWVkQ2FsbGJhY2soQ01Ob3RpZmljYXRpb25DZW50ZXJSZWYsIGNvbnN0IHZvaWQq
LCBDRlN0cmluZ1JlZiBub3RpZmljYXRpb25OYW1lLCBjb25zdCB2b2lkKiwgQ0ZUeXBlUmVmIHBh
eWxvYWQpCit7CisgICAgaWYgKCFpc01haW5UaHJlYWQoKSkgeworICAgICAgICBjYWxsT25NYWlu
VGhyZWFkKFtub3RpZmljYXRpb25OYW1lLCBwYXlsb2FkID0gcmV0YWluUHRyKHBheWxvYWQpXSB7
CisgICAgICAgICAgICBidWZmZXJXYXNDb25zdW1lZENhbGxiYWNrKG51bGxwdHIsIG51bGxwdHIs
IG5vdGlmaWNhdGlvbk5hbWUsIG51bGxwdHIsIHBheWxvYWQuZ2V0KCkpOworICAgICAgICB9KTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghQ0ZFcXVhbChrQ01TYW1wbGVCdWZm
ZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25zdW1lZCwgbm90aWZpY2F0aW9uTmFtZSkp
CisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChDRkdldFR5cGVJRChwYXlsb2FkKSA9PSBD
RkRpY3Rpb25hcnlHZXRUeXBlSUQoKSk7CisgICAgYXV0byBjb250ZXh0ID0gKFdlYkJ1ZmZlckNv
bnN1bWVkQ29udGV4dCAqKVsoTlNEaWN0aW9uYXJ5ICopcGF5bG9hZCB2YWx1ZUZvcktleTprQnVm
ZmVyQ29uc3VtZWRDb250ZXh0XTsKKyAgICBpZiAoIWNvbnRleHQpCisgICAgICAgIHJldHVybjsK
KworICAgIGlmIChhdXRvIHNvdXJjZUJ1ZmZlciA9IGNvbnRleHQucGFyZW50KQorICAgICAgICBz
b3VyY2VCdWZmZXItPmJ1ZmZlcldhc0NvbnN1bWVkKCk7Cit9CisKIFJlZlB0cjxTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQz4gU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmNyZWF0ZShNZWRp
YVNvdXJjZVByaXZhdGVBVkZPYmpDKiBwYXJlbnQpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyhwYXJlbnQpKTsKQEAgLTQxNiw2ICs0NjMsNyBA
QCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMo
TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQwogICAgICwgbV9pc0FwcGVuZGluZ0dyb3VwKGFkb3B0
T1NPYmplY3QoZGlzcGF0Y2hfZ3JvdXBfY3JlYXRlKCkpKQogICAgICwgbV9tZWRpYVNvdXJjZShw
YXJlbnQpCiB7CisgICAgQ01Ob3RpZmljYXRpb25DZW50ZXJBZGRMaXN0ZW5lcihDTU5vdGlmaWNh
dGlvbkNlbnRlckdldERlZmF1bHRMb2NhbENlbnRlcigpLCB0aGlzLCBidWZmZXJXYXNDb25zdW1l
ZENhbGxiYWNrLCBrQ01TYW1wbGVCdWZmZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25z
dW1lZCwgbnVsbHB0ciwgMCk7CiB9CiAKIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjp+U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMoKQpAQCAtNDI0LDYgKzQ3Miw4IEBAIFNvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDOjp+U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMoKQogICAgIGRlc3Ry
b3lQYXJzZXIoKTsKICAgICBkZXN0cm95UmVuZGVyZXJzKCk7CiAKKyAgICBDTU5vdGlmaWNhdGlv
bkNlbnRlclJlbW92ZUxpc3RlbmVyKENNTm90aWZpY2F0aW9uQ2VudGVyR2V0RGVmYXVsdExvY2Fs
Q2VudGVyKCksIHRoaXMsIGJ1ZmZlcldhc0NvbnN1bWVkQ2FsbGJhY2ssIGtDTVNhbXBsZUJ1ZmZl
ckNvbnN1bWVyTm90aWZpY2F0aW9uX0J1ZmZlckNvbnN1bWVkLCBudWxscHRyKTsKKwogICAgIGlm
IChtX2hhc1Nlc3Npb25TZW1hcGhvcmUpCiAgICAgICAgIGRpc3BhdGNoX3NlbWFwaG9yZV9zaWdu
YWwobV9oYXNTZXNzaW9uU2VtYXBob3JlLmdldCgpKTsKIH0KQEAgLTc5OSwxOSArODQ5LDEwIEBA
IHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OnNldENETVNlc3Npb24oQ0RNU2Vzc2lv
bk1lZGlhU291cmNlQVZGT2JqQyogc2VzCiAKIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OmZsdXNoKCkKIHsKLSAgICBpZiAobV9kaXNwbGF5TGF5ZXIpCi0gICAgICAgIFttX2Rpc3Bs
YXlMYXllciBmbHVzaEFuZFJlbW92ZUltYWdlXTsKLQotICAgIGlmIChtX2RlY29tcHJlc3Npb25T
ZXNzaW9uKSB7Ci0gICAgICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPmZsdXNoKCk7Ci0gICAg
ICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPm5vdGlmeVdoZW5IYXNBdmFpbGFibGVWaWRlb0Zy
YW1lKFt3ZWFrVGhpcyA9IGNyZWF0ZVdlYWtQdHIoKV0gewotICAgICAgICAgICAgaWYgKHdlYWtU
aGlzICYmIHdlYWtUaGlzLT5tX21lZGlhU291cmNlKQotICAgICAgICAgICAgICAgIHdlYWtUaGlz
LT5tX21lZGlhU291cmNlLT5wbGF5ZXIoKS0+c2V0SGFzQXZhaWxhYmxlVmlkZW9GcmFtZSh0cnVl
KTsKLSAgICAgICAgfSk7Ci0gICAgfQorICAgIGZsdXNoVmlkZW8oKTsKIAogICAgIGZvciAoYXV0
byYgcmVuZGVyZXIgOiBtX2F1ZGlvUmVuZGVyZXJzLnZhbHVlcygpKQotICAgICAgICBbcmVuZGVy
ZXIgZmx1c2hdOworICAgICAgICBmbHVzaChyZW5kZXJlci5nZXQoKSk7CiB9CiAKIHZvaWQgU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OnJlZ2lzdGVyRm9yRXJyb3JOb3RpZmljYXRpb25zKFNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDRXJyb3JDbGllbnQqIGNsaWVudCkKQEAgLTg3MCwyMSAr
OTExLDIzIEBAIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZsdXNoKGNvbnN0IEF0
b21pY1N0cmluZyYgdHJhY2tJRFN0cmluZykKICAgICBMT0coTWVkaWFTb3VyY2UsICJTb3VyY2VC
dWZmZXJQcml2YXRlQVZGT2JqQzo6Zmx1c2goJXApIC0gdHJhY2tJZDogJWQiLCB0aGlzLCB0cmFj
a0lEKTsKIAogICAgIGlmICh0cmFja0lEID09IG1fZW5hYmxlZFZpZGVvVHJhY2tJRCkgewotICAg
ICAgICBmbHVzaChtX2Rpc3BsYXlMYXllci5nZXQoKSk7Ci0gICAgICAgIGlmIChtX2RlY29tcHJl
c3Npb25TZXNzaW9uKSB7Ci0gICAgICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5mbHVz
aCgpOwotICAgICAgICAgICAgbV9kZWNvbXByZXNzaW9uU2Vzc2lvbi0+bm90aWZ5V2hlbkhhc0F2
YWlsYWJsZVZpZGVvRnJhbWUoW3dlYWtUaGlzID0gY3JlYXRlV2Vha1B0cigpXSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKHdlYWtUaGlzICYmIHdlYWtUaGlzLT5tX21lZGlhU291cmNlKQotICAgICAg
ICAgICAgICAgICAgICB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2
YWlsYWJsZVZpZGVvRnJhbWUodHJ1ZSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgfQorICAg
ICAgICBmbHVzaFZpZGVvKCk7CiAgICAgfSBlbHNlIGlmIChtX2F1ZGlvUmVuZGVyZXJzLmNvbnRh
aW5zKHRyYWNrSUQpKQogICAgICAgICBmbHVzaChtX2F1ZGlvUmVuZGVyZXJzLmdldCh0cmFja0lE
KS5nZXQoKSk7CiB9CiAKLXZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZsdXNoKEFW
U2FtcGxlQnVmZmVyRGlzcGxheUxheWVyICpyZW5kZXJlcikKK3ZvaWQgU291cmNlQnVmZmVyUHJp
dmF0ZUFWRk9iakM6OmZsdXNoVmlkZW8oKQogewotICAgIFtyZW5kZXJlciBmbHVzaF07CisgICAg
W21fZGlzcGxheUxheWVyIGZsdXNoXTsKKworICAgIGlmIChtX2RlY29tcHJlc3Npb25TZXNzaW9u
KSB7CisgICAgICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPmZsdXNoKCk7CisgICAgICAgIG1f
ZGVjb21wcmVzc2lvblNlc3Npb24tPm5vdGlmeVdoZW5IYXNBdmFpbGFibGVWaWRlb0ZyYW1lKFt3
ZWFrVGhpcyA9IGNyZWF0ZVdlYWtQdHIoKV0geworICAgICAgICAgICAgaWYgKHdlYWtUaGlzICYm
IHdlYWtUaGlzLT5tX21lZGlhU291cmNlKQorICAgICAgICAgICAgICAgIHdlYWtUaGlzLT5tX21l
ZGlhU291cmNlLT5wbGF5ZXIoKS0+c2V0SGFzQXZhaWxhYmxlVmlkZW9GcmFtZSh0cnVlKTsKKyAg
ICAgICAgfSk7CisgICAgfQorCiAgICAgbV9jYWNoZWRTaXplID0gc3RkOjpudWxsb3B0OwogCiAg
ICAgaWYgKG1fbWVkaWFTb3VyY2UpIHsKQEAgLTkzMiwxOCArOTc1LDMwIEBAIHZvaWQgU291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakM6OmVucXVldWVTYW1wbGUoUmVmPE1lZGlhU2FtcGxlPiYmIHNh
bXBsZSwgY29uc3QKICAgICAgICAgICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPmVucXVldWVT
YW1wbGUocGxhdGZvcm1TYW1wbGUuc2FtcGxlLmNtU2FtcGxlQnVmZmVyKTsKIAogICAgICAgICBp
ZiAobV9kaXNwbGF5TGF5ZXIpIHsKLSAgICAgICAgICAgIFttX2Rpc3BsYXlMYXllciBlbnF1ZXVl
U2FtcGxlQnVmZmVyOnBsYXRmb3JtU2FtcGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcl07Ci0gICAg
ICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSkKLSAgICAgICAgICAgICAgICBtX21lZGlhU291cmNl
LT5wbGF5ZXIoKS0+c2V0SGFzQXZhaWxhYmxlVmlkZW9GcmFtZSghc2FtcGxlLT5pc05vbkRpc3Bs
YXlpbmcoKSk7CisgICAgICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSAmJiAhbV9tZWRpYVNvdXJj
ZS0+cGxheWVyKCktPmhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoKSAmJiAhc2FtcGxlLT5pc05vbkRp
c3BsYXlpbmcoKSkgeworICAgICAgICAgICAgICAgIGF1dG8gY29udGV4dCA9IGFkb3B0TlMoW1tX
ZWJCdWZmZXJDb25zdW1lZENvbnRleHQgYWxsb2NdIGluaXRXaXRoUGFyZW50OmNyZWF0ZVdlYWtQ
dHIoKV0pOworICAgICAgICAgICAgICAgIENNU2FtcGxlQnVmZmVyUmVmIHJhd1NhbXBsZUNvcHk7
CisgICAgICAgICAgICAgICAgQ01TYW1wbGVCdWZmZXJDcmVhdGVDb3B5KGtDRkFsbG9jYXRvckRl
ZmF1bHQsIHBsYXRmb3JtU2FtcGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlciwgJnJhd1NhbXBsZUNv
cHkpOworICAgICAgICAgICAgICAgIGF1dG8gc2FtcGxlQ29weSA9IGFkb3B0Q0YocmF3U2FtcGxl
Q29weSk7CisgICAgICAgICAgICAgICAgQ01TZXRBdHRhY2htZW50KHNhbXBsZUNvcHkuZ2V0KCks
IGtDTVNhbXBsZUJ1ZmZlckF0dGFjaG1lbnRLZXlfUG9zdE5vdGlmaWNhdGlvbldoZW5Db25zdW1l
ZCwgQHtrQnVmZmVyQ29uc3VtZWRDb250ZXh0OiBjb250ZXh0LmdldCgpfSwga0NNQXR0YWNobWVu
dE1vZGVfU2hvdWxkTm90UHJvcGFnYXRlKTsKKyAgICAgICAgICAgICAgICBbbV9kaXNwbGF5TGF5
ZXIgZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpzYW1wbGVDb3B5LmdldCgpXTsKKyAgICAgICAgICAgIH0g
ZWxzZQorICAgICAgICAgICAgICAgIFttX2Rpc3BsYXlMYXllciBlbnF1ZXVlU2FtcGxlQnVmZmVy
OnBsYXRmb3JtU2FtcGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcl07CiAgICAgICAgIH0KICAgICB9
IGVsc2UgewogICAgICAgICBhdXRvIHJlbmRlcmVyID0gbV9hdWRpb1JlbmRlcmVycy5nZXQodHJh
Y2tJRCk7CiAgICAgICAgIFtyZW5kZXJlciBlbnF1ZXVlU2FtcGxlQnVmZmVyOnBsYXRmb3JtU2Ft
cGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcl07Ci0gICAgICAgIGlmIChtX21lZGlhU291cmNlKQot
ICAgICAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZUF1ZGlv
U2FtcGxlKHJlbmRlcmVyLmdldCgpLCAhc2FtcGxlLT5pc05vbkRpc3BsYXlpbmcoKSk7CisgICAg
ICAgIGlmIChtX21lZGlhU291cmNlICYmICFzYW1wbGUtPmlzTm9uRGlzcGxheWluZygpKQorICAg
ICAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZUF1ZGlvU2Ft
cGxlKHJlbmRlcmVyLmdldCgpLCB0cnVlKTsKICAgICB9CiB9CiAKK3ZvaWQgU291cmNlQnVmZmVy
UHJpdmF0ZUFWRk9iakM6OmJ1ZmZlcldhc0NvbnN1bWVkKCkKK3sKKyAgICBpZiAobV9tZWRpYVNv
dXJjZSkKKyAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZp
ZGVvRnJhbWUodHJ1ZSk7Cit9CisKIGJvb2wgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6Omlz
UmVhZHlGb3JNb3JlU2FtcGxlcyhjb25zdCBBdG9taWNTdHJpbmcmIHRyYWNrSURTdHJpbmcpCiB7
CiAgICAgaW50IHRyYWNrSUQgPSB0cmFja0lEU3RyaW5nLnRvSW50KCk7CkBAIC05NzEsMTEgKzEw
MjYsNyBAQCBNZWRpYVRpbWUgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZhc3RTZWVrVGlt
ZUZvck1lZGlhVGltZShNZWRpYVRpbWUgdGltZSwgTQogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjp3aWxsU2VlaygpCiB7Ci0gICAgaWYgKG1fZGlzcGxheUxheWVyKQotICAgICAg
ICBmbHVzaChtX2Rpc3BsYXlMYXllci5nZXQoKSk7Ci0KLSAgICBmb3IgKGF1dG8mIHJlbmRlcmVy
IDogbV9hdWRpb1JlbmRlcmVycy52YWx1ZXMoKSkKLSAgICAgICAgZmx1c2gocmVuZGVyZXIuZ2V0
KCkpOworICAgIGZsdXNoKCk7CiB9CiAKIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6
OnNlZWtUb1RpbWUoTWVkaWFUaW1lIHRpbWUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312707</attachid>
            <date>2017-06-12 15:16:06 -0700</date>
            <delta_ts>2017-06-12 15:42:45 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-173269-20170612151605.patch</filename>
            <type>text/plain</type>
            <size>17363</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3ODkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRiMjg1MjBhNTJjNThk
ZjFiNDU5ZTA3NTEwZTliZDNmOTJmODVlNi4uNDdiMTUxNjg2MTlhZWQ1NTQwMmM4ZGQwNzc2MWY0
N2FmY2YyOTgxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTA2LTEyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFNlZWtpbmcgYW4gTVNFIHZp
ZGVvIHdpbGwgYmVnaW4gcGxheWluZyBhdWRpbyBsb25nIGJlZm9yZSByZW5kZXJpbmcgdmlkZW8K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzI2OQor
CisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICBBZGQgYSBub3Rp
ZmljYXRpb24gbGlzdGVuZXIgd2hpY2ggd2lsbCBiZSBtZXNzYWdlZCB3aGVuIGEgdG8tYmUtZGlz
cGxheWVkIHNhbXBsZQorICAgICAgICBpcyBkZWNvZGVkIHRvIHNpZ25hbCB0aGF0IHRoZSAnc2Vl
a2VkJyBldmVudCBzaG91bGQgZmlyZS4gQ29uc29saWRhdGUgYWxsIHRoZSB2YXJpb3VzCisgICAg
ICAgIGZsdXNoIG1ldGhvZHMgdG8gZnVubmVsIGludG8gYSBzaW5nbGUgZmx1c2hWaWRlbygpLgor
CisgICAgICAgICogcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwOgorICAgICAgICAq
IHBsYXRmb3JtL2NmL0NvcmVNZWRpYVNvZnRMaW5rLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbToKKyAgICAgICAg
KC1bV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGluaXRXaXRoUGFyZW50OmJ1ZmZlcjpdKToKKyAg
ICAgICAgKC1bV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGRlYWxsb2NdKToKKyAgICAgICAgKC1b
V2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IHBhcmVudF0pOgorICAgICAgICAoLVtXZWJCdWZmZXJD
b25zdW1lZENvbnRleHQgYnVmZmVyXSk6CisgICAgICAgIChXZWJDb3JlOjpidWZmZXJXYXNDb25z
dW1lZENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZP
YmpDOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaCk6CisgICAg
ICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6Zmx1c2hWaWRlbyk6Cisg
ICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6ZW5xdWV1ZVNhbXBs
ZSk6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6YnVmZmVy
V2FzQ29uc3VtZWQpOgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OndpbGxTZWVrKToKKwogMjAxNy0wNi0wOSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxl
LmNvbT4KIAogICAgICAgICBNZWRpYSBlbGVtZW50cyBhcmUgYWxsb3dlZCB0byBjb250aW51ZSB0
byBsb2FkIG1lZGlhIGRhdGEgYWZ0ZXIgbmF2aWdhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwCmluZGV4IGNiZjcxZTEwYzJmYjQ3Y2I2
NDFiMzliOGM5ZDkzMTk2MDQzYjkzZTAuLmUxODBmODEzYzVkMjlkNGU1ODdkZDNhMzQwOGUxZDUw
NzJlMGJiOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0NvcmVNZWRp
YVNvZnRMaW5rLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9Db3JlTWVkaWFT
b2Z0TGluay5jcHAKQEAgLTEyNiw4ICsxMjYsMTAgQEAgU09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9T
T1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlhLCBrQ01TYW1wbGVBdHRhY2htZW50S2V5X05vdFN5bmMK
IFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2Ft
cGxlQnVmZmVyQXR0YWNobWVudEtleV9EaXNwbGF5RW1wdHlNZWRpYUltbWVkaWF0ZWx5LCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9EcmFpbkFmdGVyRGVjb2RpbmcsIENGU3Ry
aW5nUmVmKQogU09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlh
LCBrQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X0VtcHR5TWVkaWEsIENGU3RyaW5nUmVmKQor
U09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlhLCBrQ01TYW1w
bGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYW50aW9uV2hlbkNvbnN1bWVkLCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9SZXNldERlY29kZXJCZWZvcmVEZWNvZGlu
ZywgQ0ZTdHJpbmdSZWYpCiBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX1NPVVJDRShXZWJDb3JlLCBD
b3JlTWVkaWEsIGtDTVNhbXBsZUF0dGFjaG1lbnRLZXlfRGlzcGxheUltbWVkaWF0ZWx5LCBDRlN0
cmluZ1JlZikKK1NPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIENG
U3RyaW5nUmVmKQogCiBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX1NPVVJDRShXZWJDb3JlLCBDb3Jl
TWVkaWEsIGtDTVRpbWViYXNlTm90aWZpY2F0aW9uX0VmZmVjdGl2ZVJhdGVDaGFuZ2VkLCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fVGltZUp1bXBlZCwgQ0ZTdHJpbmdSZWYpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9Db3JlTWVkaWFTb2Z0TGluay5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuaAppbmRleCBjZTQ0
ZmFlZmM3MWYzZDg0NzdkMDM0ODMwNmY1NWM5YmVmM2Q1NzJlLi5lN2QxNjM1NjQxNjE1MjM0ZGU0
MTAxMmU5Mjg2NzQ4MzY1ODNmNzM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jZi9Db3JlTWVkaWFTb2Z0TGluay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nm
L0NvcmVNZWRpYVNvZnRMaW5rLmgKQEAgLTE1Miw3ICsxNTIsNyBAQCBTT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0U2FtcGxl
VGltaW5nSQogU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlh
LCBDTVNhbXBsZUJ1ZmZlckdldFRvdGFsU2FtcGxlU2l6ZSwgc2l6ZV90LCAoQ01TYW1wbGVCdWZm
ZXJSZWYgc2J1ZiksIChzYnVmKSkKICNkZWZpbmUgQ01TYW1wbGVCdWZmZXJHZXRUb3RhbFNhbXBs
ZVNpemUgc29mdExpbmtfQ29yZU1lZGlhX0NNU2FtcGxlQnVmZmVyR2V0VG90YWxTYW1wbGVTaXpl
CiBTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVkaWEsIENNU2V0
QXR0YWNobWVudCwgdm9pZCwgKENNQXR0YWNobWVudEJlYXJlclJlZiB0YXJnZXQsIENGU3RyaW5n
UmVmIGtleSwgQ0ZUeXBlUmVmIHZhbHVlLCBDTUF0dGFjaG1lbnRNb2RlIGF0dGFjaG1lbnRNb2Rl
KSwgKHRhcmdldCwga2V5LCB2YWx1ZSwgYXR0YWNobWVudE1vZGUpKQotI2RlZmluZSBDTVNhbXBs
ZUJ1ZmZlckdldFRvdGFsU2FtcGxlU2l6ZSBzb2Z0TGlua19Db3JlTWVkaWFfQ01TYW1wbGVCdWZm
ZXJHZXRUb3RhbFNhbXBsZVNpemUKKyNkZWZpbmUgQ01TZXRBdHRhY2htZW50IHNvZnRMaW5rX0Nv
cmVNZWRpYV9DTVNldEF0dGFjaG1lbnQKIFNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFdl
YkNvcmUsIENvcmVNZWRpYSwgQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jaywgT1NTdGF0
dXMsIChDRkFsbG9jYXRvclJlZiBhbGxvY2F0b3IsIENNQ2xvY2tSZWYgbWFzdGVyQ2xvY2ssIENN
VGltZWJhc2VSZWYgKnRpbWViYXNlT3V0KSwgKGFsbG9jYXRvciwgbWFzdGVyQ2xvY2ssIHRpbWVi
YXNlT3V0KSkKICNkZWZpbmUgQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jayBzb2Z0TGlu
a19Db3JlTWVkaWFfQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jawogU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlhLCBDTVRpbWViYXNlR2V0VGltZSwg
Q01UaW1lLCAoQ01UaW1lYmFzZVJlZiB0aW1lYmFzZSksICh0aW1lYmFzZSkpCkBAIC0yMTIsMTIg
KzIxMiwxNiBAQCBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVk
aWEsIGtDTVNhbXBsZUJ1ZmZlckF0dGFjaG1lbnRLZXlfRAogI2RlZmluZSBrQ01TYW1wbGVCdWZm
ZXJBdHRhY2htZW50S2V5X0RyYWluQWZ0ZXJEZWNvZGluZyBnZXRfQ29yZU1lZGlhX2tDTVNhbXBs
ZUJ1ZmZlckF0dGFjaG1lbnRLZXlfRHJhaW5BZnRlckRlY29kaW5nKCkKIFNPRlRfTElOS19DT05T
VEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2FtcGxlQnVmZmVyQXR0YWNo
bWVudEtleV9FbXB0eU1lZGlhLCBDRlN0cmluZ1JlZikKICNkZWZpbmUga0NNU2FtcGxlQnVmZmVy
QXR0YWNobWVudEtleV9FbXB0eU1lZGlhIGdldF9Db3JlTWVkaWFfa0NNU2FtcGxlQnVmZmVyQXR0
YWNobWVudEtleV9FbXB0eU1lZGlhKCkKK1NPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdl
YkNvcmUsIENvcmVNZWRpYSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9Qb3N0Tm90aWZp
Y2FudGlvbldoZW5Db25zdW1lZCwgQ0ZTdHJpbmdSZWYpCisjZGVmaW5lIGtDTVNhbXBsZUJ1ZmZl
ckF0dGFjaG1lbnRLZXlfUG9zdE5vdGlmaWNhbnRpb25XaGVuQ29uc3VtZWQgZ2V0X0NvcmVNZWRp
YV9rQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYW50aW9uV2hlbkNvbnN1
bWVkKCkKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwg
a0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9SZXNldERlY29kZXJCZWZvcmVEZWNvZGluZywg
Q0ZTdHJpbmdSZWYpCiAjZGVmaW5lIGtDTVNhbXBsZUJ1ZmZlckF0dGFjaG1lbnRLZXlfUmVzZXRE
ZWNvZGVyQmVmb3JlRGVjb2RpbmcgZ2V0X0NvcmVNZWRpYV9rQ01TYW1wbGVCdWZmZXJBdHRhY2ht
ZW50S2V5X1Jlc2V0RGVjb2RlckJlZm9yZURlY29kaW5nKCkKIFNPRlRfTElOS19DT05TVEFOVF9G
T1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fRWZm
ZWN0aXZlUmF0ZUNoYW5nZWQsIENGU3RyaW5nUmVmKQogI2RlZmluZSBrQ01UaW1lYmFzZU5vdGlm
aWNhdGlvbl9FZmZlY3RpdmVSYXRlQ2hhbmdlZCBnZXRfQ29yZU1lZGlhX2tDTVRpbWViYXNlTm90
aWZpY2F0aW9uX0VmZmVjdGl2ZVJhdGVDaGFuZ2VkKCkKIFNPRlRfTElOS19DT05TVEFOVF9GT1Jf
SEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fVGltZUp1
bXBlZCwgQ0ZTdHJpbmdSZWYpCiAjZGVmaW5lIGtDTVRpbWViYXNlTm90aWZpY2F0aW9uX1RpbWVK
dW1wZWQgZ2V0X0NvcmVNZWRpYV9rQ01UaW1lYmFzZU5vdGlmaWNhdGlvbl9UaW1lSnVtcGVkKCkK
K1NPRlRfTElOS19DT05TVEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2Ft
cGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIENGU3RyaW5nUmVm
KQorI2RlZmluZSBrQ01TYW1wbGVCdWZmZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25z
dW1lZCBnZXRfQ29yZU1lZGlhX2tDTVNhbXBsZUJ1ZmZlckNvbnN1bWVyTm90aWZpY2F0aW9uX0J1
ZmZlckNvbnN1bWVkKCkKIFNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFdlYkNvcmUsIENv
cmVNZWRpYSwgQ01BdWRpb0Zvcm1hdERlc2NyaXB0aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlv
biwgY29uc3QgQXVkaW9TdHJlYW1CYXNpY0Rlc2NyaXB0aW9uICosIChDTUF1ZGlvRm9ybWF0RGVz
Y3JpcHRpb25SZWYgZGVzYyksIChkZXNjKSkKICNkZWZpbmUgQ01BdWRpb0Zvcm1hdERlc2NyaXB0
aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlvbiBzb2Z0TGlua19Db3JlTWVkaWFfQ01BdWRpb0Zv
cm1hdERlc2NyaXB0aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlvbgogU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldEF1ZGlv
QnVmZmVyTGlzdFdpdGhSZXRhaW5lZEJsb2NrQnVmZmVyLCBPU1N0YXR1cywgKENNU2FtcGxlQnVm
ZmVyUmVmIHNidWYsIHNpemVfdCAqYnVmZmVyTGlzdFNpemVOZWVkZWRPdXQsIEF1ZGlvQnVmZmVy
TGlzdCAqYnVmZmVyTGlzdE91dCwgc2l6ZV90IGJ1ZmZlckxpc3RTaXplLCBDRkFsbG9jYXRvclJl
ZiBiYnVmU3RydWN0QWxsb2NhdG9yLCBDRkFsbG9jYXRvclJlZiBiYnVmTWVtb3J5QWxsb2NhdG9y
LCB1aW50MzJfdCBmbGFncywgQ01CbG9ja0J1ZmZlclJlZiAqYmxvY2tCdWZmZXJPdXQpLCAoc2J1
ZiwgYnVmZmVyTGlzdFNpemVOZWVkZWRPdXQsIGJ1ZmZlckxpc3RPdXQsIGJ1ZmZlckxpc3RTaXpl
LCBiYnVmU3RydWN0QWxsb2NhdG9yLCBiYnVmTWVtb3J5QWxsb2NhdG9yLCBmbGFncywgYmxvY2tC
dWZmZXJPdXQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAppbmRleCA3YzlmMmY3MzliMTU0NDc5
OGJhNDg4YzdmYjg1N2FkYjU4ZTBjZDU1Li5mN2Q4Yzc2N2E3MTYxNThkMGQ2MDU4NjRmZWU4YzBl
NWY2YzBmNzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaApAQCAtODMsNiArODMsNyBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzZWVrQ29tcGxldGVkKCk7CiAgICAgdm9pZCBzZXRMb2FkaW5nUHJv
Z3Jlc3NzZWQoYm9vbCBmbGFnKSB7IG1fbG9hZGluZ1Byb2dyZXNzZWQgPSBmbGFnOyB9CiAgICAg
dm9pZCBzZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKGJvb2wpOworICAgIGJvb2wgaGFzQXZhaWxh
YmxlVmlkZW9GcmFtZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIHZvaWQgc2V0SGFzQXZhaWxhYmxl
QXVkaW9TYW1wbGUoQVZTYW1wbGVCdWZmZXJBdWRpb1JlbmRlcmVyKiwgYm9vbCk7CiAgICAgYm9v
bCBhbGxSZW5kZXJlcnNIYXZlQXZhaWxhYmxlU2FtcGxlcygpIGNvbnN0IHsgcmV0dXJuIG1fYWxs
UmVuZGVyZXJzSGF2ZUF2YWlsYWJsZVNhbXBsZXM7IH0KICAgICB2b2lkIHVwZGF0ZUFsbFJlbmRl
cmVyc0hhdmVBdmFpbGFibGVTYW1wbGVzKCk7CkBAIC0xODMsOCArMTg0LDYgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHBhaW50KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYpIG92ZXJy
aWRlOwogICAgIHZvaWQgcGFpbnRDdXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250ZXh0
JiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBjb3B5VmlkZW9UZXh0dXJl
VG9QbGF0Zm9ybVRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0QqLCBQbGF0Zm9ybTNET2JqZWN0LCBH
QzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVybmFsRm9ybWF0LCBH
QzNEZW51bSBmb3JtYXQsIEdDM0RlbnVtIHR5cGUsIGJvb2wgcHJlbXVsdGlwbHlBbHBoYSwgYm9v
bCBmbGlwWSkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBoYXNBdmFpbGFibGVWaWRlb0ZyYW1l
KCkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICBib29sIHN1cHBvcnRzQWNjZWxlcmF0ZWRSZW5kZXJp
bmcoKSBjb25zdCBvdmVycmlkZTsKICAgICAvLyBjYWxsZWQgd2hlbiB0aGUgcmVuZGVyaW5nIHN5
c3RlbSBmbGlwcyB0aGUgaW50byBvciBvdXQgb2YgYWNjZWxlcmF0ZWQgcmVuZGVyaW5nIG1vZGUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akMuaAppbmRleCBhMGEwMTdlMzczMzExMzM4Nzc0YzZmYTIwNjQyNzQzODBmM2UxZWFlLi4wODFh
YTA4ODUzZTc2OWZlMzkyNDZjMjE2ZmY4M2RhMmRiNmQyMTcyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQ
cml2YXRlQVZGT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLmgKQEAgLTExNCw2ICsx
MTQsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRWaWRlb0xheWVyKEFWU2FtcGxlQnVmZmVyRGlz
cGxheUxheWVyKik7CiAgICAgdm9pZCBzZXREZWNvbXByZXNzaW9uU2Vzc2lvbihXZWJDb3JlRGVj
b21wcmVzc2lvblNlc3Npb24qKTsKIAorICAgIHZvaWQgYnVmZmVyV2FzQ29uc3VtZWQoKTsKKwog
cHJpdmF0ZToKICAgICBleHBsaWNpdCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyhNZWRpYVNv
dXJjZVByaXZhdGVBVkZPYmpDKik7CiAKQEAgLTEzNiw3ICsxMzgsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgZGVzdHJveVBhcnNlcigpOwogICAgIHZvaWQgZGVzdHJveVJlbmRlcmVycygpOwogCi0g
ICAgdm9pZCBmbHVzaChBVlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllciAqKTsKKyAgICB2b2lkIGZs
dXNoVmlkZW8oKTsKICAgICB2b2lkIGZsdXNoKEFWU2FtcGxlQnVmZmVyQXVkaW9SZW5kZXJlciAq
KTsKIAogICAgIFdlYWtQdHI8U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IGNyZWF0ZVdlYWtQ
dHIoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbQppbmRl
eCAxYmRkOTg3YjVmNjU2MDkzODdiMmMyODE5NmZjZDdkODIzZmJjMWYwLi4zMDA4MmI3Y2VhZjhi
ZGI0NDY5MzQzOTkwMjBjNzBkMTk5NTY5ZmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZG
T2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbQpAQCAtMzY0LDYgKzM2NCwzMCBA
QCAtICh2b2lkKWxheWVyRmFpbGVkVG9EZWNvZGU6KE5TTm90aWZpY2F0aW9uKilub3RlCiB9CiBA
ZW5kCiAKKyNwcmFnbWEgbWFyayAtCisKK0BpbnRlcmZhY2UgV2ViQnVmZmVyQ29uc3VtZWRDb250
ZXh0IDogTlNPYmplY3QgeworICAgIFdlYWtQdHI8V2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0
ZUFWRk9iakM+IF9wYXJlbnQ7Cit9CitAcHJvcGVydHkgKHJlYWRvbmx5KSBXZWJDb3JlOjpTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQyogcGFyZW50OworQGVuZAorCitAaW1wbGVtZW50YXRpb24g
V2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0CistIChpZClpbml0V2l0aFBhcmVudDooV2Vha1B0cjxX
ZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQz4pcGFyZW50Cit7CisgICAgc2VsZiA9
IFtzdXBlciBpbml0XTsKKyAgICBpZiAoc2VsZikKKyAgICAgICAgX3BhcmVudCA9IHBhcmVudDsK
KyAgICByZXR1cm4gc2VsZjsKK30KKworQGR5bmFtaWMgcGFyZW50OworLSAoV2ViQ29yZTo6U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMqKXBhcmVudAoreworICAgIHJldHVybiBfcGFyZW50Lmdl
dCgpOworfQorQGVuZAorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICNwcmFnbWEgbWFyayAtCkBA
IC00MDIsNiArNDI2LDI5IEBAIHByb3RlY3RlZDoKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1h
cmsgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMKIAorc3RhdGljIE5TU3RyaW5nICprQnVmZmVy
Q29uc3VtZWRDb250ZXh0ID0gQCJCdWZmZXJDb25zdW1lZENvbnRleHQiOworCitzdGF0aWMgdm9p
ZCBidWZmZXJXYXNDb25zdW1lZENhbGxiYWNrKENNTm90aWZpY2F0aW9uQ2VudGVyUmVmLCBjb25z
dCB2b2lkKiwgQ0ZTdHJpbmdSZWYgbm90aWZpY2F0aW9uTmFtZSwgY29uc3Qgdm9pZCosIENGVHlw
ZVJlZiBwYXlsb2FkKQoreworICAgIGlmICghaXNNYWluVGhyZWFkKCkpIHsKKyAgICAgICAgY2Fs
bE9uTWFpblRocmVhZChbbm90aWZpY2F0aW9uTmFtZSwgcGF5bG9hZCA9IHJldGFpblB0cihwYXls
b2FkKV0geworICAgICAgICAgICAgYnVmZmVyV2FzQ29uc3VtZWRDYWxsYmFjayhudWxscHRyLCBu
dWxscHRyLCBub3RpZmljYXRpb25OYW1lLCBudWxscHRyLCBwYXlsb2FkLmdldCgpKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIUNGRXF1YWwoa0NNU2Ft
cGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIG5vdGlmaWNhdGlv
bk5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NFUlQoQ0ZHZXRUeXBlSUQocGF5bG9h
ZCkgPT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpOworICAgIGF1dG8gY29udGV4dCA9IChXZWJC
dWZmZXJDb25zdW1lZENvbnRleHQgKilbKE5TRGljdGlvbmFyeSAqKXBheWxvYWQgdmFsdWVGb3JL
ZXk6a0J1ZmZlckNvbnN1bWVkQ29udGV4dF07CisgICAgaWYgKCFjb250ZXh0KQorICAgICAgICBy
ZXR1cm47CisKKyAgICBpZiAoYXV0byBzb3VyY2VCdWZmZXIgPSBjb250ZXh0LnBhcmVudCkKKyAg
ICAgICAgc291cmNlQnVmZmVyLT5idWZmZXJXYXNDb25zdW1lZCgpOworfQorCiBSZWZQdHI8U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpjcmVh
dGUoTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyogcGFyZW50KQogewogICAgIHJldHVybiBhZG9w
dFJlZihuZXcgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMocGFyZW50KSk7CkBAIC00MTYsNiAr
NDYzLDcgQEAgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OlNvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDKE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMKICAgICAsIG1faXNBcHBlbmRpbmdHcm91
cChhZG9wdE9TT2JqZWN0KGRpc3BhdGNoX2dyb3VwX2NyZWF0ZSgpKSkKICAgICAsIG1fbWVkaWFT
b3VyY2UocGFyZW50KQogeworICAgIENNTm90aWZpY2F0aW9uQ2VudGVyQWRkTGlzdGVuZXIoQ01O
b3RpZmljYXRpb25DZW50ZXJHZXREZWZhdWx0TG9jYWxDZW50ZXIoKSwgdGhpcywgYnVmZmVyV2Fz
Q29uc3VtZWRDYWxsYmFjaywga0NNU2FtcGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVm
ZmVyQ29uc3VtZWQsIG51bGxwdHIsIDApOwogfQogCiBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKCkKQEAgLTQyNCw2ICs0NzIsOCBAQCBTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKCkKICAg
ICBkZXN0cm95UGFyc2VyKCk7CiAgICAgZGVzdHJveVJlbmRlcmVycygpOwogCisgICAgQ01Ob3Rp
ZmljYXRpb25DZW50ZXJSZW1vdmVMaXN0ZW5lcihDTU5vdGlmaWNhdGlvbkNlbnRlckdldERlZmF1
bHRMb2NhbENlbnRlcigpLCB0aGlzLCBidWZmZXJXYXNDb25zdW1lZENhbGxiYWNrLCBrQ01TYW1w
bGVCdWZmZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25zdW1lZCwgbnVsbHB0cik7CisK
ICAgICBpZiAobV9oYXNTZXNzaW9uU2VtYXBob3JlKQogICAgICAgICBkaXNwYXRjaF9zZW1hcGhv
cmVfc2lnbmFsKG1faGFzU2Vzc2lvblNlbWFwaG9yZS5nZXQoKSk7CiB9CkBAIC03OTksMTkgKzg0
OSwxMCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpzZXRDRE1TZXNzaW9uKENE
TVNlc3Npb25NZWRpYVNvdXJjZUFWRk9iakMqIHNlcwogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjpmbHVzaCgpCiB7Ci0gICAgaWYgKG1fZGlzcGxheUxheWVyKQotICAgICAgICBb
bV9kaXNwbGF5TGF5ZXIgZmx1c2hBbmRSZW1vdmVJbWFnZV07Ci0KLSAgICBpZiAobV9kZWNvbXBy
ZXNzaW9uU2Vzc2lvbikgewotICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5mbHVzaCgp
OwotICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5ub3RpZnlXaGVuSGFzQXZhaWxhYmxl
VmlkZW9GcmFtZShbd2Vha1RoaXMgPSBjcmVhdGVXZWFrUHRyKCldIHsKLSAgICAgICAgICAgIGlm
ICh3ZWFrVGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkKLSAgICAgICAgICAgICAgICB3
ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJh
bWUodHJ1ZSk7Ci0gICAgICAgIH0pOwotICAgIH0KKyAgICBmbHVzaFZpZGVvKCk7CiAKICAgICBm
b3IgKGF1dG8mIHJlbmRlcmVyIDogbV9hdWRpb1JlbmRlcmVycy52YWx1ZXMoKSkKLSAgICAgICAg
W3JlbmRlcmVyIGZsdXNoXTsKKyAgICAgICAgZmx1c2gocmVuZGVyZXIuZ2V0KCkpOwogfQogCiB2
b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpyZWdpc3RlckZvckVycm9yTm90aWZpY2F0
aW9ucyhTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQ0Vycm9yQ2xpZW50KiBjbGllbnQpCkBAIC04
NzAsMjEgKzkxMSwyMyBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaChj
b25zdCBBdG9taWNTdHJpbmcmIHRyYWNrSURTdHJpbmcpCiAgICAgTE9HKE1lZGlhU291cmNlLCAi
U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZsdXNoKCVwKSAtIHRyYWNrSWQ6ICVkIiwgdGhp
cywgdHJhY2tJRCk7CiAKICAgICBpZiAodHJhY2tJRCA9PSBtX2VuYWJsZWRWaWRlb1RyYWNrSUQp
IHsKLSAgICAgICAgZmx1c2gobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOwotICAgICAgICBpZiAobV9k
ZWNvbXByZXNzaW9uU2Vzc2lvbikgewotICAgICAgICAgICAgbV9kZWNvbXByZXNzaW9uU2Vzc2lv
bi0+Zmx1c2goKTsKLSAgICAgICAgICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPm5vdGlmeVdo
ZW5IYXNBdmFpbGFibGVWaWRlb0ZyYW1lKFt3ZWFrVGhpcyA9IGNyZWF0ZVdlYWtQdHIoKV0gewot
ICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkK
LSAgICAgICAgICAgICAgICAgICAgd2Vha1RoaXMtPm1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5z
ZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKHRydWUpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAg
IH0KKyAgICAgICAgZmx1c2hWaWRlbygpOwogICAgIH0gZWxzZSBpZiAobV9hdWRpb1JlbmRlcmVy
cy5jb250YWlucyh0cmFja0lEKSkKICAgICAgICAgZmx1c2gobV9hdWRpb1JlbmRlcmVycy5nZXQo
dHJhY2tJRCkuZ2V0KCkpOwogfQogCi12b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpm
bHVzaChBVlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllciAqcmVuZGVyZXIpCit2b2lkIFNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaFZpZGVvKCkKIHsKLSAgICBbcmVuZGVyZXIgZmx1c2hd
OworICAgIFttX2Rpc3BsYXlMYXllciBmbHVzaF07CisKKyAgICBpZiAobV9kZWNvbXByZXNzaW9u
U2Vzc2lvbikgeworICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5mbHVzaCgpOworICAg
ICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5ub3RpZnlXaGVuSGFzQXZhaWxhYmxlVmlkZW9G
cmFtZShbd2Vha1RoaXMgPSBjcmVhdGVXZWFrUHRyKCldIHsKKyAgICAgICAgICAgIGlmICh3ZWFr
VGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkKKyAgICAgICAgICAgICAgICB3ZWFrVGhp
cy0+bV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUodHJ1
ZSk7CisgICAgICAgIH0pOworICAgIH0KKwogICAgIG1fY2FjaGVkU2l6ZSA9IHN0ZDo6bnVsbG9w
dDsKIAogICAgIGlmIChtX21lZGlhU291cmNlKSB7CkBAIC05MzIsMTggKzk3NSwzMCBAQCB2b2lk
IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjplbnF1ZXVlU2FtcGxlKFJlZjxNZWRpYVNhbXBs
ZT4mJiBzYW1wbGUsIGNvbnN0CiAgICAgICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5l
bnF1ZXVlU2FtcGxlKHBsYXRmb3JtU2FtcGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CiAKICAg
ICAgICAgaWYgKG1fZGlzcGxheUxheWVyKSB7Ci0gICAgICAgICAgICBbbV9kaXNwbGF5TGF5ZXIg
ZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJd
OwotICAgICAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UpCi0gICAgICAgICAgICAgICAgbV9tZWRp
YVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoIXNhbXBsZS0+aXNO
b25EaXNwbGF5aW5nKCkpOworICAgICAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UgJiYgIW1fbWVk
aWFTb3VyY2UtPnBsYXllcigpLT5oYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkgJiYgIXNhbXBsZS0+
aXNOb25EaXNwbGF5aW5nKCkpIHsKKyAgICAgICAgICAgICAgICBhdXRvIGNvbnRleHQgPSBhZG9w
dE5TKFtbV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGFsbG9jXSBpbml0V2l0aFBhcmVudDpjcmVh
dGVXZWFrUHRyKCldKTsKKyAgICAgICAgICAgICAgICBDTVNhbXBsZUJ1ZmZlclJlZiByYXdTYW1w
bGVDb3B5OworICAgICAgICAgICAgICAgIENNU2FtcGxlQnVmZmVyQ3JlYXRlQ29weShrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCBwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXIsICZyYXdT
YW1wbGVDb3B5KTsKKyAgICAgICAgICAgICAgICBhdXRvIHNhbXBsZUNvcHkgPSBhZG9wdENGKHJh
d1NhbXBsZUNvcHkpOworICAgICAgICAgICAgICAgIENNU2V0QXR0YWNobWVudChzYW1wbGVDb3B5
LmdldCgpLCBrQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYXRpb25XaGVu
Q29uc3VtZWQsIEB7a0J1ZmZlckNvbnN1bWVkQ29udGV4dDogY29udGV4dC5nZXQoKX0sIGtDTUF0
dGFjaG1lbnRNb2RlX1Nob3VsZE5vdFByb3BhZ2F0ZSk7CisgICAgICAgICAgICAgICAgW21fZGlz
cGxheUxheWVyIGVucXVldWVTYW1wbGVCdWZmZXI6c2FtcGxlQ29weS5nZXQoKV07CisgICAgICAg
ICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgZW5xdWV1ZVNhbXBs
ZUJ1ZmZlcjpwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJdOwogICAgICAgICB9
CiAgICAgfSBlbHNlIHsKICAgICAgICAgYXV0byByZW5kZXJlciA9IG1fYXVkaW9SZW5kZXJlcnMu
Z2V0KHRyYWNrSUQpOwogICAgICAgICBbcmVuZGVyZXIgZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpwbGF0
Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJdOwotICAgICAgICBpZiAobV9tZWRpYVNv
dXJjZSkKLSAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFi
bGVBdWRpb1NhbXBsZShyZW5kZXJlci5nZXQoKSwgIXNhbXBsZS0+aXNOb25EaXNwbGF5aW5nKCkp
OworICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSAmJiAhc2FtcGxlLT5pc05vbkRpc3BsYXlpbmco
KSkKKyAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFibGVB
dWRpb1NhbXBsZShyZW5kZXJlci5nZXQoKSwgdHJ1ZSk7CiAgICAgfQogfQogCit2b2lkIFNvdXJj
ZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpidWZmZXJXYXNDb25zdW1lZCgpCit7CisgICAgaWYgKG1f
bWVkaWFTb3VyY2UpCisgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFp
bGFibGVWaWRlb0ZyYW1lKHRydWUpOworfQorCiBib29sIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZP
YmpDOjppc1JlYWR5Rm9yTW9yZVNhbXBsZXMoY29uc3QgQXRvbWljU3RyaW5nJiB0cmFja0lEU3Ry
aW5nKQogewogICAgIGludCB0cmFja0lEID0gdHJhY2tJRFN0cmluZy50b0ludCgpOwpAQCAtOTcx
LDExICsxMDI2LDcgQEAgTWVkaWFUaW1lIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmYXN0
U2Vla1RpbWVGb3JNZWRpYVRpbWUoTWVkaWFUaW1lIHRpbWUsIE0KIAogdm9pZCBTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQzo6d2lsbFNlZWsoKQogewotICAgIGlmIChtX2Rpc3BsYXlMYXllcikK
LSAgICAgICAgZmx1c2gobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOwotCi0gICAgZm9yIChhdXRvJiBy
ZW5kZXJlciA6IG1fYXVkaW9SZW5kZXJlcnMudmFsdWVzKCkpCi0gICAgICAgIGZsdXNoKHJlbmRl
cmVyLmdldCgpKTsKKyAgICBmbHVzaCgpOwogfQogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDOjpzZWVrVG9UaW1lKE1lZGlhVGltZSB0aW1lKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312711</attachid>
            <date>2017-06-12 15:42:48 -0700</date>
            <delta_ts>2017-06-12 15:57:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-173269-20170612154247.patch</filename>
            <type>text/plain</type>
            <size>17363</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3ODkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRiMjg1MjBhNTJjNThk
ZjFiNDU5ZTA3NTEwZTliZDNmOTJmODVlNi4uNDdiMTUxNjg2MTlhZWQ1NTQwMmM4ZGQwNzc2MWY0
N2FmY2YyOTgxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTA2LTEyICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFNlZWtpbmcgYW4gTVNFIHZp
ZGVvIHdpbGwgYmVnaW4gcGxheWluZyBhdWRpbyBsb25nIGJlZm9yZSByZW5kZXJpbmcgdmlkZW8K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzI2OQor
CisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICBBZGQgYSBub3Rp
ZmljYXRpb24gbGlzdGVuZXIgd2hpY2ggd2lsbCBiZSBtZXNzYWdlZCB3aGVuIGEgdG8tYmUtZGlz
cGxheWVkIHNhbXBsZQorICAgICAgICBpcyBkZWNvZGVkIHRvIHNpZ25hbCB0aGF0IHRoZSAnc2Vl
a2VkJyBldmVudCBzaG91bGQgZmlyZS4gQ29uc29saWRhdGUgYWxsIHRoZSB2YXJpb3VzCisgICAg
ICAgIGZsdXNoIG1ldGhvZHMgdG8gZnVubmVsIGludG8gYSBzaW5nbGUgZmx1c2hWaWRlbygpLgor
CisgICAgICAgICogcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwOgorICAgICAgICAq
IHBsYXRmb3JtL2NmL0NvcmVNZWRpYVNvZnRMaW5rLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbToKKyAgICAgICAg
KC1bV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGluaXRXaXRoUGFyZW50OmJ1ZmZlcjpdKToKKyAg
ICAgICAgKC1bV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGRlYWxsb2NdKToKKyAgICAgICAgKC1b
V2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IHBhcmVudF0pOgorICAgICAgICAoLVtXZWJCdWZmZXJD
b25zdW1lZENvbnRleHQgYnVmZmVyXSk6CisgICAgICAgIChXZWJDb3JlOjpidWZmZXJXYXNDb25z
dW1lZENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZP
YmpDOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyk6CisgICAgICAgIChXZWJDb3JlOjpTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaCk6CisgICAg
ICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6Zmx1c2hWaWRlbyk6Cisg
ICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6ZW5xdWV1ZVNhbXBs
ZSk6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6YnVmZmVy
V2FzQ29uc3VtZWQpOgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OndpbGxTZWVrKToKKwogMjAxNy0wNi0wOSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxl
LmNvbT4KIAogICAgICAgICBNZWRpYSBlbGVtZW50cyBhcmUgYWxsb3dlZCB0byBjb250aW51ZSB0
byBsb2FkIG1lZGlhIGRhdGEgYWZ0ZXIgbmF2aWdhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuY3BwCmluZGV4IGNiZjcxZTEwYzJmYjQ3Y2I2
NDFiMzliOGM5ZDkzMTk2MDQzYjkzZTAuLmUxODBmODEzYzVkMjlkNGU1ODdkZDNhMzQwOGUxZDUw
NzJlMGJiOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL0NvcmVNZWRp
YVNvZnRMaW5rLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9Db3JlTWVkaWFT
b2Z0TGluay5jcHAKQEAgLTEyNiw4ICsxMjYsMTAgQEAgU09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9T
T1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlhLCBrQ01TYW1wbGVBdHRhY2htZW50S2V5X05vdFN5bmMK
IFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2Ft
cGxlQnVmZmVyQXR0YWNobWVudEtleV9EaXNwbGF5RW1wdHlNZWRpYUltbWVkaWF0ZWx5LCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9EcmFpbkFmdGVyRGVjb2RpbmcsIENGU3Ry
aW5nUmVmKQogU09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlh
LCBrQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X0VtcHR5TWVkaWEsIENGU3RyaW5nUmVmKQor
U09GVF9MSU5LX0NPTlNUQU5UX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgQ29yZU1lZGlhLCBrQ01TYW1w
bGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYW50aW9uV2hlbkNvbnN1bWVkLCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9SZXNldERlY29kZXJCZWZvcmVEZWNvZGlu
ZywgQ0ZTdHJpbmdSZWYpCiBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX1NPVVJDRShXZWJDb3JlLCBD
b3JlTWVkaWEsIGtDTVNhbXBsZUF0dGFjaG1lbnRLZXlfRGlzcGxheUltbWVkaWF0ZWx5LCBDRlN0
cmluZ1JlZikKK1NPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNU2FtcGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIENG
U3RyaW5nUmVmKQogCiBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX1NPVVJDRShXZWJDb3JlLCBDb3Jl
TWVkaWEsIGtDTVRpbWViYXNlTm90aWZpY2F0aW9uX0VmZmVjdGl2ZVJhdGVDaGFuZ2VkLCBDRlN0
cmluZ1JlZikKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfU09VUkNFKFdlYkNvcmUsIENvcmVNZWRp
YSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fVGltZUp1bXBlZCwgQ0ZTdHJpbmdSZWYpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9Db3JlTWVkaWFTb2Z0TGluay5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvQ29yZU1lZGlhU29mdExpbmsuaAppbmRleCBjZTQ0
ZmFlZmM3MWYzZDg0NzdkMDM0ODMwNmY1NWM5YmVmM2Q1NzJlLi4yYzZjZmExMmE0YzE4ZTM0MzI5
YzdkZmM2OTJjYjlhYWNmY2UyZDcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jZi9Db3JlTWVkaWFTb2Z0TGluay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nm
L0NvcmVNZWRpYVNvZnRMaW5rLmgKQEAgLTE1Miw3ICsxNTIsNyBAQCBTT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0U2FtcGxl
VGltaW5nSQogU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlh
LCBDTVNhbXBsZUJ1ZmZlckdldFRvdGFsU2FtcGxlU2l6ZSwgc2l6ZV90LCAoQ01TYW1wbGVCdWZm
ZXJSZWYgc2J1ZiksIChzYnVmKSkKICNkZWZpbmUgQ01TYW1wbGVCdWZmZXJHZXRUb3RhbFNhbXBs
ZVNpemUgc29mdExpbmtfQ29yZU1lZGlhX0NNU2FtcGxlQnVmZmVyR2V0VG90YWxTYW1wbGVTaXpl
CiBTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVkaWEsIENNU2V0
QXR0YWNobWVudCwgdm9pZCwgKENNQXR0YWNobWVudEJlYXJlclJlZiB0YXJnZXQsIENGU3RyaW5n
UmVmIGtleSwgQ0ZUeXBlUmVmIHZhbHVlLCBDTUF0dGFjaG1lbnRNb2RlIGF0dGFjaG1lbnRNb2Rl
KSwgKHRhcmdldCwga2V5LCB2YWx1ZSwgYXR0YWNobWVudE1vZGUpKQotI2RlZmluZSBDTVNhbXBs
ZUJ1ZmZlckdldFRvdGFsU2FtcGxlU2l6ZSBzb2Z0TGlua19Db3JlTWVkaWFfQ01TYW1wbGVCdWZm
ZXJHZXRUb3RhbFNhbXBsZVNpemUKKyNkZWZpbmUgQ01TZXRBdHRhY2htZW50IHNvZnRMaW5rX0Nv
cmVNZWRpYV9DTVNldEF0dGFjaG1lbnQKIFNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFdl
YkNvcmUsIENvcmVNZWRpYSwgQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jaywgT1NTdGF0
dXMsIChDRkFsbG9jYXRvclJlZiBhbGxvY2F0b3IsIENNQ2xvY2tSZWYgbWFzdGVyQ2xvY2ssIENN
VGltZWJhc2VSZWYgKnRpbWViYXNlT3V0KSwgKGFsbG9jYXRvciwgbWFzdGVyQ2xvY2ssIHRpbWVi
YXNlT3V0KSkKICNkZWZpbmUgQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jayBzb2Z0TGlu
a19Db3JlTWVkaWFfQ01UaW1lYmFzZUNyZWF0ZVdpdGhNYXN0ZXJDbG9jawogU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlhLCBDTVRpbWViYXNlR2V0VGltZSwg
Q01UaW1lLCAoQ01UaW1lYmFzZVJlZiB0aW1lYmFzZSksICh0aW1lYmFzZSkpCkBAIC0yMTIsMTIg
KzIxMiwxNiBAQCBTT0ZUX0xJTktfQ09OU1RBTlRfRk9SX0hFQURFUihXZWJDb3JlLCBDb3JlTWVk
aWEsIGtDTVNhbXBsZUJ1ZmZlckF0dGFjaG1lbnRLZXlfRAogI2RlZmluZSBrQ01TYW1wbGVCdWZm
ZXJBdHRhY2htZW50S2V5X0RyYWluQWZ0ZXJEZWNvZGluZyBnZXRfQ29yZU1lZGlhX2tDTVNhbXBs
ZUJ1ZmZlckF0dGFjaG1lbnRLZXlfRHJhaW5BZnRlckRlY29kaW5nKCkKIFNPRlRfTElOS19DT05T
VEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2FtcGxlQnVmZmVyQXR0YWNo
bWVudEtleV9FbXB0eU1lZGlhLCBDRlN0cmluZ1JlZikKICNkZWZpbmUga0NNU2FtcGxlQnVmZmVy
QXR0YWNobWVudEtleV9FbXB0eU1lZGlhIGdldF9Db3JlTWVkaWFfa0NNU2FtcGxlQnVmZmVyQXR0
YWNobWVudEtleV9FbXB0eU1lZGlhKCkKK1NPRlRfTElOS19DT05TVEFOVF9GT1JfSEVBREVSKFdl
YkNvcmUsIENvcmVNZWRpYSwga0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9Qb3N0Tm90aWZp
Y2FudGlvbldoZW5Db25zdW1lZCwgQ0ZTdHJpbmdSZWYpCisjZGVmaW5lIGtDTVNhbXBsZUJ1ZmZl
ckF0dGFjaG1lbnRLZXlfUG9zdE5vdGlmaWNhbnRpb25XaGVuQ29uc3VtZWQgZ2V0X0NvcmVNZWRp
YV9rQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYW50aW9uV2hlbkNvbnN1
bWVkKCkKIFNPRlRfTElOS19DT05TVEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwg
a0NNU2FtcGxlQnVmZmVyQXR0YWNobWVudEtleV9SZXNldERlY29kZXJCZWZvcmVEZWNvZGluZywg
Q0ZTdHJpbmdSZWYpCiAjZGVmaW5lIGtDTVNhbXBsZUJ1ZmZlckF0dGFjaG1lbnRLZXlfUmVzZXRE
ZWNvZGVyQmVmb3JlRGVjb2RpbmcgZ2V0X0NvcmVNZWRpYV9rQ01TYW1wbGVCdWZmZXJBdHRhY2ht
ZW50S2V5X1Jlc2V0RGVjb2RlckJlZm9yZURlY29kaW5nKCkKIFNPRlRfTElOS19DT05TVEFOVF9G
T1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fRWZm
ZWN0aXZlUmF0ZUNoYW5nZWQsIENGU3RyaW5nUmVmKQogI2RlZmluZSBrQ01UaW1lYmFzZU5vdGlm
aWNhdGlvbl9FZmZlY3RpdmVSYXRlQ2hhbmdlZCBnZXRfQ29yZU1lZGlhX2tDTVRpbWViYXNlTm90
aWZpY2F0aW9uX0VmZmVjdGl2ZVJhdGVDaGFuZ2VkKCkKIFNPRlRfTElOS19DT05TVEFOVF9GT1Jf
SEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNVGltZWJhc2VOb3RpZmljYXRpb25fVGltZUp1
bXBlZCwgQ0ZTdHJpbmdSZWYpCiAjZGVmaW5lIGtDTVRpbWViYXNlTm90aWZpY2F0aW9uX1RpbWVK
dW1wZWQgZ2V0X0NvcmVNZWRpYV9rQ01UaW1lYmFzZU5vdGlmaWNhdGlvbl9UaW1lSnVtcGVkKCkK
K1NPRlRfTElOS19DT05TVEFOVF9GT1JfSEVBREVSKFdlYkNvcmUsIENvcmVNZWRpYSwga0NNU2Ft
cGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIENGU3RyaW5nUmVm
KQorI2RlZmluZSBrQ01TYW1wbGVCdWZmZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25z
dW1lZCBnZXRfQ29yZU1lZGlhX2tDTVNhbXBsZUJ1ZmZlckNvbnN1bWVyTm90aWZpY2F0aW9uX0J1
ZmZlckNvbnN1bWVkKCkKIFNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFdlYkNvcmUsIENv
cmVNZWRpYSwgQ01BdWRpb0Zvcm1hdERlc2NyaXB0aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlv
biwgY29uc3QgQXVkaW9TdHJlYW1CYXNpY0Rlc2NyaXB0aW9uICosIChDTUF1ZGlvRm9ybWF0RGVz
Y3JpcHRpb25SZWYgZGVzYyksIChkZXNjKSkKICNkZWZpbmUgQ01BdWRpb0Zvcm1hdERlc2NyaXB0
aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlvbiBzb2Z0TGlua19Db3JlTWVkaWFfQ01BdWRpb0Zv
cm1hdERlc2NyaXB0aW9uR2V0U3RyZWFtQmFzaWNEZXNjcmlwdGlvbgogU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldEF1ZGlv
QnVmZmVyTGlzdFdpdGhSZXRhaW5lZEJsb2NrQnVmZmVyLCBPU1N0YXR1cywgKENNU2FtcGxlQnVm
ZmVyUmVmIHNidWYsIHNpemVfdCAqYnVmZmVyTGlzdFNpemVOZWVkZWRPdXQsIEF1ZGlvQnVmZmVy
TGlzdCAqYnVmZmVyTGlzdE91dCwgc2l6ZV90IGJ1ZmZlckxpc3RTaXplLCBDRkFsbG9jYXRvclJl
ZiBiYnVmU3RydWN0QWxsb2NhdG9yLCBDRkFsbG9jYXRvclJlZiBiYnVmTWVtb3J5QWxsb2NhdG9y
LCB1aW50MzJfdCBmbGFncywgQ01CbG9ja0J1ZmZlclJlZiAqYmxvY2tCdWZmZXJPdXQpLCAoc2J1
ZiwgYnVmZmVyTGlzdFNpemVOZWVkZWRPdXQsIGJ1ZmZlckxpc3RPdXQsIGJ1ZmZlckxpc3RTaXpl
LCBiYnVmU3RydWN0QWxsb2NhdG9yLCBiYnVmTWVtb3J5QWxsb2NhdG9yLCBmbGFncywgYmxvY2tC
dWZmZXJPdXQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAppbmRleCA3YzlmMmY3MzliMTU0NDc5
OGJhNDg4YzdmYjg1N2FkYjU4ZTBjZDU1Li5mN2Q4Yzc2N2E3MTYxNThkMGQ2MDU4NjRmZWU4YzBl
NWY2YzBmNzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaApAQCAtODMsNiArODMsNyBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzZWVrQ29tcGxldGVkKCk7CiAgICAgdm9pZCBzZXRMb2FkaW5nUHJv
Z3Jlc3NzZWQoYm9vbCBmbGFnKSB7IG1fbG9hZGluZ1Byb2dyZXNzZWQgPSBmbGFnOyB9CiAgICAg
dm9pZCBzZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKGJvb2wpOworICAgIGJvb2wgaGFzQXZhaWxh
YmxlVmlkZW9GcmFtZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIHZvaWQgc2V0SGFzQXZhaWxhYmxl
QXVkaW9TYW1wbGUoQVZTYW1wbGVCdWZmZXJBdWRpb1JlbmRlcmVyKiwgYm9vbCk7CiAgICAgYm9v
bCBhbGxSZW5kZXJlcnNIYXZlQXZhaWxhYmxlU2FtcGxlcygpIGNvbnN0IHsgcmV0dXJuIG1fYWxs
UmVuZGVyZXJzSGF2ZUF2YWlsYWJsZVNhbXBsZXM7IH0KICAgICB2b2lkIHVwZGF0ZUFsbFJlbmRl
cmVyc0hhdmVBdmFpbGFibGVTYW1wbGVzKCk7CkBAIC0xODMsOCArMTg0LDYgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHBhaW50KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYpIG92ZXJy
aWRlOwogICAgIHZvaWQgcGFpbnRDdXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250ZXh0
JiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CiAgICAgYm9vbCBjb3B5VmlkZW9UZXh0dXJl
VG9QbGF0Zm9ybVRleHR1cmUoR3JhcGhpY3NDb250ZXh0M0QqLCBQbGF0Zm9ybTNET2JqZWN0LCBH
QzNEZW51bSB0YXJnZXQsIEdDM0RpbnQgbGV2ZWwsIEdDM0RlbnVtIGludGVybmFsRm9ybWF0LCBH
QzNEZW51bSBmb3JtYXQsIEdDM0RlbnVtIHR5cGUsIGJvb2wgcHJlbXVsdGlwbHlBbHBoYSwgYm9v
bCBmbGlwWSkgb3ZlcnJpZGU7Ci0gICAgCi0gICAgYm9vbCBoYXNBdmFpbGFibGVWaWRlb0ZyYW1l
KCkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICBib29sIHN1cHBvcnRzQWNjZWxlcmF0ZWRSZW5kZXJp
bmcoKSBjb25zdCBvdmVycmlkZTsKICAgICAvLyBjYWxsZWQgd2hlbiB0aGUgcmVuZGVyaW5nIHN5
c3RlbSBmbGlwcyB0aGUgaW50byBvciBvdXQgb2YgYWNjZWxlcmF0ZWQgcmVuZGVyaW5nIG1vZGUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akMuaAppbmRleCBhMGEwMTdlMzczMzExMzM4Nzc0YzZmYTIwNjQyNzQzODBmM2UxZWFlLi4wODFh
YTA4ODUzZTc2OWZlMzkyNDZjMjE2ZmY4M2RhMmRiNmQyMTcyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQ
cml2YXRlQVZGT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLmgKQEAgLTExNCw2ICsx
MTQsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRWaWRlb0xheWVyKEFWU2FtcGxlQnVmZmVyRGlz
cGxheUxheWVyKik7CiAgICAgdm9pZCBzZXREZWNvbXByZXNzaW9uU2Vzc2lvbihXZWJDb3JlRGVj
b21wcmVzc2lvblNlc3Npb24qKTsKIAorICAgIHZvaWQgYnVmZmVyV2FzQ29uc3VtZWQoKTsKKwog
cHJpdmF0ZToKICAgICBleHBsaWNpdCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyhNZWRpYVNv
dXJjZVByaXZhdGVBVkZPYmpDKik7CiAKQEAgLTEzNiw3ICsxMzgsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgZGVzdHJveVBhcnNlcigpOwogICAgIHZvaWQgZGVzdHJveVJlbmRlcmVycygpOwogCi0g
ICAgdm9pZCBmbHVzaChBVlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllciAqKTsKKyAgICB2b2lkIGZs
dXNoVmlkZW8oKTsKICAgICB2b2lkIGZsdXNoKEFWU2FtcGxlQnVmZmVyQXVkaW9SZW5kZXJlciAq
KTsKIAogICAgIFdlYWtQdHI8U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IGNyZWF0ZVdlYWtQ
dHIoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbQppbmRl
eCAxYmRkOTg3YjVmNjU2MDkzODdiMmMyODE5NmZjZDdkODIzZmJjMWYwLi4zMDA4MmI3Y2VhZjhi
ZGI0NDY5MzQzOTkwMjBjNzBkMTk5NTY5ZmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZG
T2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbQpAQCAtMzY0LDYgKzM2NCwzMCBA
QCAtICh2b2lkKWxheWVyRmFpbGVkVG9EZWNvZGU6KE5TTm90aWZpY2F0aW9uKilub3RlCiB9CiBA
ZW5kCiAKKyNwcmFnbWEgbWFyayAtCisKK0BpbnRlcmZhY2UgV2ViQnVmZmVyQ29uc3VtZWRDb250
ZXh0IDogTlNPYmplY3QgeworICAgIFdlYWtQdHI8V2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0
ZUFWRk9iakM+IF9wYXJlbnQ7Cit9CitAcHJvcGVydHkgKHJlYWRvbmx5KSBXZWJDb3JlOjpTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQyogcGFyZW50OworQGVuZAorCitAaW1wbGVtZW50YXRpb24g
V2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0CistIChpZClpbml0V2l0aFBhcmVudDooV2Vha1B0cjxX
ZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQz4pcGFyZW50Cit7CisgICAgc2VsZiA9
IFtzdXBlciBpbml0XTsKKyAgICBpZiAoc2VsZikKKyAgICAgICAgX3BhcmVudCA9IHBhcmVudDsK
KyAgICByZXR1cm4gc2VsZjsKK30KKworQGR5bmFtaWMgcGFyZW50OworLSAoV2ViQ29yZTo6U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMqKXBhcmVudAoreworICAgIHJldHVybiBfcGFyZW50Lmdl
dCgpOworfQorQGVuZAorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICNwcmFnbWEgbWFyayAtCkBA
IC00MDIsNiArNDI2LDI5IEBAIHByb3RlY3RlZDoKICNwcmFnbWEgbWFyayAtCiAjcHJhZ21hIG1h
cmsgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMKIAorc3RhdGljIE5TU3RyaW5nICprQnVmZmVy
Q29uc3VtZWRDb250ZXh0ID0gQCJCdWZmZXJDb25zdW1lZENvbnRleHQiOworCitzdGF0aWMgdm9p
ZCBidWZmZXJXYXNDb25zdW1lZENhbGxiYWNrKENNTm90aWZpY2F0aW9uQ2VudGVyUmVmLCBjb25z
dCB2b2lkKiwgQ0ZTdHJpbmdSZWYgbm90aWZpY2F0aW9uTmFtZSwgY29uc3Qgdm9pZCosIENGVHlw
ZVJlZiBwYXlsb2FkKQoreworICAgIGlmICghaXNNYWluVGhyZWFkKCkpIHsKKyAgICAgICAgY2Fs
bE9uTWFpblRocmVhZChbbm90aWZpY2F0aW9uTmFtZSwgcGF5bG9hZCA9IHJldGFpblB0cihwYXls
b2FkKV0geworICAgICAgICAgICAgYnVmZmVyV2FzQ29uc3VtZWRDYWxsYmFjayhudWxscHRyLCBu
dWxscHRyLCBub3RpZmljYXRpb25OYW1lLCBudWxscHRyLCBwYXlsb2FkLmdldCgpKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIUNGRXF1YWwoa0NNU2Ft
cGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVmZmVyQ29uc3VtZWQsIG5vdGlmaWNhdGlv
bk5hbWUpKQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NFUlQoQ0ZHZXRUeXBlSUQocGF5bG9h
ZCkgPT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpOworICAgIGF1dG8gY29udGV4dCA9IChXZWJC
dWZmZXJDb25zdW1lZENvbnRleHQgKilbKE5TRGljdGlvbmFyeSAqKXBheWxvYWQgdmFsdWVGb3JL
ZXk6a0J1ZmZlckNvbnN1bWVkQ29udGV4dF07CisgICAgaWYgKCFjb250ZXh0KQorICAgICAgICBy
ZXR1cm47CisKKyAgICBpZiAoYXV0byBzb3VyY2VCdWZmZXIgPSBjb250ZXh0LnBhcmVudCkKKyAg
ICAgICAgc291cmNlQnVmZmVyLT5idWZmZXJXYXNDb25zdW1lZCgpOworfQorCiBSZWZQdHI8U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpjcmVh
dGUoTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQyogcGFyZW50KQogewogICAgIHJldHVybiBhZG9w
dFJlZihuZXcgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMocGFyZW50KSk7CkBAIC00MTYsNiAr
NDYzLDcgQEAgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OlNvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDKE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMKICAgICAsIG1faXNBcHBlbmRpbmdHcm91
cChhZG9wdE9TT2JqZWN0KGRpc3BhdGNoX2dyb3VwX2NyZWF0ZSgpKSkKICAgICAsIG1fbWVkaWFT
b3VyY2UocGFyZW50KQogeworICAgIENNTm90aWZpY2F0aW9uQ2VudGVyQWRkTGlzdGVuZXIoQ01O
b3RpZmljYXRpb25DZW50ZXJHZXREZWZhdWx0TG9jYWxDZW50ZXIoKSwgdGhpcywgYnVmZmVyV2Fz
Q29uc3VtZWRDYWxsYmFjaywga0NNU2FtcGxlQnVmZmVyQ29uc3VtZXJOb3RpZmljYXRpb25fQnVm
ZmVyQ29uc3VtZWQsIG51bGxwdHIsIDApOwogfQogCiBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKCkKQEAgLTQyNCw2ICs0NzIsOCBAQCBTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKCkKICAg
ICBkZXN0cm95UGFyc2VyKCk7CiAgICAgZGVzdHJveVJlbmRlcmVycygpOwogCisgICAgQ01Ob3Rp
ZmljYXRpb25DZW50ZXJSZW1vdmVMaXN0ZW5lcihDTU5vdGlmaWNhdGlvbkNlbnRlckdldERlZmF1
bHRMb2NhbENlbnRlcigpLCB0aGlzLCBidWZmZXJXYXNDb25zdW1lZENhbGxiYWNrLCBrQ01TYW1w
bGVCdWZmZXJDb25zdW1lck5vdGlmaWNhdGlvbl9CdWZmZXJDb25zdW1lZCwgbnVsbHB0cik7CisK
ICAgICBpZiAobV9oYXNTZXNzaW9uU2VtYXBob3JlKQogICAgICAgICBkaXNwYXRjaF9zZW1hcGhv
cmVfc2lnbmFsKG1faGFzU2Vzc2lvblNlbWFwaG9yZS5nZXQoKSk7CiB9CkBAIC03OTksMTkgKzg0
OSwxMCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpzZXRDRE1TZXNzaW9uKENE
TVNlc3Npb25NZWRpYVNvdXJjZUFWRk9iakMqIHNlcwogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjpmbHVzaCgpCiB7Ci0gICAgaWYgKG1fZGlzcGxheUxheWVyKQotICAgICAgICBb
bV9kaXNwbGF5TGF5ZXIgZmx1c2hBbmRSZW1vdmVJbWFnZV07Ci0KLSAgICBpZiAobV9kZWNvbXBy
ZXNzaW9uU2Vzc2lvbikgewotICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5mbHVzaCgp
OwotICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5ub3RpZnlXaGVuSGFzQXZhaWxhYmxl
VmlkZW9GcmFtZShbd2Vha1RoaXMgPSBjcmVhdGVXZWFrUHRyKCldIHsKLSAgICAgICAgICAgIGlm
ICh3ZWFrVGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkKLSAgICAgICAgICAgICAgICB3
ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJh
bWUodHJ1ZSk7Ci0gICAgICAgIH0pOwotICAgIH0KKyAgICBmbHVzaFZpZGVvKCk7CiAKICAgICBm
b3IgKGF1dG8mIHJlbmRlcmVyIDogbV9hdWRpb1JlbmRlcmVycy52YWx1ZXMoKSkKLSAgICAgICAg
W3JlbmRlcmVyIGZsdXNoXTsKKyAgICAgICAgZmx1c2gocmVuZGVyZXIuZ2V0KCkpOwogfQogCiB2
b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpyZWdpc3RlckZvckVycm9yTm90aWZpY2F0
aW9ucyhTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQ0Vycm9yQ2xpZW50KiBjbGllbnQpCkBAIC04
NzAsMjEgKzkxMSwyMyBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaChj
b25zdCBBdG9taWNTdHJpbmcmIHRyYWNrSURTdHJpbmcpCiAgICAgTE9HKE1lZGlhU291cmNlLCAi
U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZsdXNoKCVwKSAtIHRyYWNrSWQ6ICVkIiwgdGhp
cywgdHJhY2tJRCk7CiAKICAgICBpZiAodHJhY2tJRCA9PSBtX2VuYWJsZWRWaWRlb1RyYWNrSUQp
IHsKLSAgICAgICAgZmx1c2gobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOwotICAgICAgICBpZiAobV9k
ZWNvbXByZXNzaW9uU2Vzc2lvbikgewotICAgICAgICAgICAgbV9kZWNvbXByZXNzaW9uU2Vzc2lv
bi0+Zmx1c2goKTsKLSAgICAgICAgICAgIG1fZGVjb21wcmVzc2lvblNlc3Npb24tPm5vdGlmeVdo
ZW5IYXNBdmFpbGFibGVWaWRlb0ZyYW1lKFt3ZWFrVGhpcyA9IGNyZWF0ZVdlYWtQdHIoKV0gewot
ICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkK
LSAgICAgICAgICAgICAgICAgICAgd2Vha1RoaXMtPm1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5z
ZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKHRydWUpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAg
IH0KKyAgICAgICAgZmx1c2hWaWRlbygpOwogICAgIH0gZWxzZSBpZiAobV9hdWRpb1JlbmRlcmVy
cy5jb250YWlucyh0cmFja0lEKSkKICAgICAgICAgZmx1c2gobV9hdWRpb1JlbmRlcmVycy5nZXQo
dHJhY2tJRCkuZ2V0KCkpOwogfQogCi12b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpm
bHVzaChBVlNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllciAqcmVuZGVyZXIpCit2b2lkIFNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOjpmbHVzaFZpZGVvKCkKIHsKLSAgICBbcmVuZGVyZXIgZmx1c2hd
OworICAgIFttX2Rpc3BsYXlMYXllciBmbHVzaF07CisKKyAgICBpZiAobV9kZWNvbXByZXNzaW9u
U2Vzc2lvbikgeworICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5mbHVzaCgpOworICAg
ICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5ub3RpZnlXaGVuSGFzQXZhaWxhYmxlVmlkZW9G
cmFtZShbd2Vha1RoaXMgPSBjcmVhdGVXZWFrUHRyKCldIHsKKyAgICAgICAgICAgIGlmICh3ZWFr
VGhpcyAmJiB3ZWFrVGhpcy0+bV9tZWRpYVNvdXJjZSkKKyAgICAgICAgICAgICAgICB3ZWFrVGhp
cy0+bV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUodHJ1
ZSk7CisgICAgICAgIH0pOworICAgIH0KKwogICAgIG1fY2FjaGVkU2l6ZSA9IHN0ZDo6bnVsbG9w
dDsKIAogICAgIGlmIChtX21lZGlhU291cmNlKSB7CkBAIC05MzIsMTggKzk3NSwzMCBAQCB2b2lk
IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjplbnF1ZXVlU2FtcGxlKFJlZjxNZWRpYVNhbXBs
ZT4mJiBzYW1wbGUsIGNvbnN0CiAgICAgICAgICAgICBtX2RlY29tcHJlc3Npb25TZXNzaW9uLT5l
bnF1ZXVlU2FtcGxlKHBsYXRmb3JtU2FtcGxlLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CiAKICAg
ICAgICAgaWYgKG1fZGlzcGxheUxheWVyKSB7Ci0gICAgICAgICAgICBbbV9kaXNwbGF5TGF5ZXIg
ZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJd
OwotICAgICAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UpCi0gICAgICAgICAgICAgICAgbV9tZWRp
YVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUoIXNhbXBsZS0+aXNO
b25EaXNwbGF5aW5nKCkpOworICAgICAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UgJiYgIW1fbWVk
aWFTb3VyY2UtPnBsYXllcigpLT5oYXNBdmFpbGFibGVWaWRlb0ZyYW1lKCkgJiYgIXNhbXBsZS0+
aXNOb25EaXNwbGF5aW5nKCkpIHsKKyAgICAgICAgICAgICAgICBhdXRvIGNvbnRleHQgPSBhZG9w
dE5TKFtbV2ViQnVmZmVyQ29uc3VtZWRDb250ZXh0IGFsbG9jXSBpbml0V2l0aFBhcmVudDpjcmVh
dGVXZWFrUHRyKCldKTsKKyAgICAgICAgICAgICAgICBDTVNhbXBsZUJ1ZmZlclJlZiByYXdTYW1w
bGVDb3B5OworICAgICAgICAgICAgICAgIENNU2FtcGxlQnVmZmVyQ3JlYXRlQ29weShrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCBwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXIsICZyYXdT
YW1wbGVDb3B5KTsKKyAgICAgICAgICAgICAgICBhdXRvIHNhbXBsZUNvcHkgPSBhZG9wdENGKHJh
d1NhbXBsZUNvcHkpOworICAgICAgICAgICAgICAgIENNU2V0QXR0YWNobWVudChzYW1wbGVDb3B5
LmdldCgpLCBrQ01TYW1wbGVCdWZmZXJBdHRhY2htZW50S2V5X1Bvc3ROb3RpZmljYXRpb25XaGVu
Q29uc3VtZWQsIEB7a0J1ZmZlckNvbnN1bWVkQ29udGV4dDogY29udGV4dC5nZXQoKX0sIGtDTUF0
dGFjaG1lbnRNb2RlX1Nob3VsZE5vdFByb3BhZ2F0ZSk7CisgICAgICAgICAgICAgICAgW21fZGlz
cGxheUxheWVyIGVucXVldWVTYW1wbGVCdWZmZXI6c2FtcGxlQ29weS5nZXQoKV07CisgICAgICAg
ICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgZW5xdWV1ZVNhbXBs
ZUJ1ZmZlcjpwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJdOwogICAgICAgICB9
CiAgICAgfSBlbHNlIHsKICAgICAgICAgYXV0byByZW5kZXJlciA9IG1fYXVkaW9SZW5kZXJlcnMu
Z2V0KHRyYWNrSUQpOwogICAgICAgICBbcmVuZGVyZXIgZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpwbGF0
Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJdOwotICAgICAgICBpZiAobV9tZWRpYVNv
dXJjZSkKLSAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFi
bGVBdWRpb1NhbXBsZShyZW5kZXJlci5nZXQoKSwgIXNhbXBsZS0+aXNOb25EaXNwbGF5aW5nKCkp
OworICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSAmJiAhc2FtcGxlLT5pc05vbkRpc3BsYXlpbmco
KSkKKyAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFibGVB
dWRpb1NhbXBsZShyZW5kZXJlci5nZXQoKSwgdHJ1ZSk7CiAgICAgfQogfQogCit2b2lkIFNvdXJj
ZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpidWZmZXJXYXNDb25zdW1lZCgpCit7CisgICAgaWYgKG1f
bWVkaWFTb3VyY2UpCisgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFp
bGFibGVWaWRlb0ZyYW1lKHRydWUpOworfQorCiBib29sIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZP
YmpDOjppc1JlYWR5Rm9yTW9yZVNhbXBsZXMoY29uc3QgQXRvbWljU3RyaW5nJiB0cmFja0lEU3Ry
aW5nKQogewogICAgIGludCB0cmFja0lEID0gdHJhY2tJRFN0cmluZy50b0ludCgpOwpAQCAtOTcx
LDExICsxMDI2LDcgQEAgTWVkaWFUaW1lIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpmYXN0
U2Vla1RpbWVGb3JNZWRpYVRpbWUoTWVkaWFUaW1lIHRpbWUsIE0KIAogdm9pZCBTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQzo6d2lsbFNlZWsoKQogewotICAgIGlmIChtX2Rpc3BsYXlMYXllcikK
LSAgICAgICAgZmx1c2gobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOwotCi0gICAgZm9yIChhdXRvJiBy
ZW5kZXJlciA6IG1fYXVkaW9SZW5kZXJlcnMudmFsdWVzKCkpCi0gICAgICAgIGZsdXNoKHJlbmRl
cmVyLmdldCgpKTsKKyAgICBmbHVzaCgpOwogfQogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDOjpzZWVrVG9UaW1lKE1lZGlhVGltZSB0aW1lKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>