<?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>188823</bug_id>
          
          <creation_ts>2018-08-21 15:29:08 -0700</creation_ts>
          <short_desc>[Attachment Support] Attachment elements don&apos;t appear in drag images on macOS</short_desc>
          <delta_ts>2018-08-23 10:20:46 -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>HTML Editing</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>181294</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>aestes</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mitz</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1452346</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-08-21 15:29:08 -0700</bug_when>
    <thetext>To reproduce, drag an attachment element in a web view (where the attachment element is enabled). The attachment should appear in the drag image snapshot, but it does not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452751</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-22 12:42:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/43616378&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452854</commentid>
    <comment_count>2</comment_count>
      <attachid>347862</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-08-22 15:47:03 -0700</bug_when>
    <thetext>Created attachment 347862
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452900</commentid>
    <comment_count>3</comment_count>
      <attachid>347881</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-08-22 17:21:25 -0700</bug_when>
    <thetext>Created attachment 347881
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453106</commentid>
    <comment_count>4</comment_count>
      <attachid>347881</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-23 10:20:44 -0700</bug_when>
    <thetext>Comment on attachment 347881
Patch

Clearing flags on attachment: 347881

Committed r235229: &lt;https://trac.webkit.org/changeset/235229&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453107</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-23 10:20:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347862</attachid>
            <date>2018-08-22 15:47:03 -0700</date>
            <delta_ts>2018-08-22 17:21:24 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>bug-188823-20180822154703.patch</filename>
            <type>text/plain</type>
            <size>12928</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzQzYWU3ZGRlMDVlYjJl
ZWM2YzJlYjg1MTg2YjNhMDliOTNmNWIwYi4uYjRlYTc3Mzk2MDcyNmE1ZjlkMmRjN2JiMjc4MjI2
YWFjZTRkMmI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE4LTA4LTIyICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtBdHRhY2htZW50
IFN1cHBvcnRdIEF0dGFjaG1lbnQgZWxlbWVudHMgZG9uJ3QgYXBwZWFyIGluIGRyYWcgaW1hZ2Vz
IG9uIG1hY09TCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODg4MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQzNjE2Mzc4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSwgYXR0YWNobWVu
dCBlbGVtZW50cyBkb24ndCBzaG93IHVwIGluIHRoZSBkcmFnIGltYWdlIHNuYXBzaG90IG9uIG1h
Y09TLiBUaGlzIGlzIGJlY2F1c2Ugb25seSB0aGUKKyAgICAgICAgIlNlbGVjdGlvbiIgcGhhc2Ug
aXMgcGFpbnRlZCB3aGVuIGdlbmVyYXRpbmcgYSBkcmFnIGltYWdlIG9uIG1hY09TLCBhbmQgbWFu
eSByZXBsYWNlZCByZW5kZXJlcnMgKHdpdGggc29tZQorICAgICAgICBleGNlcHRpb25zLCBzdWNo
IGFzIFJlbmRlckltYWdlKSBvbmx5IHBhaW50IHZpc2libGUgY29udGVudCBkdXJpbmcgdGhlICJG
b3JlZ3JvdW5kIiBwaGFzZS4gVG8gZml4IHRoaXMsIHdlCisgICAgICAgIG92ZXJyaWRlIFJlbmRl
ckF0dGFjaG1lbnQ6OnBhaW50UmVwbGFjZWQgdG8gcGFpbnQgdGhlIGF0dGFjaG1lbnQgaW4gdGhl
IGNhc2Ugd2hlcmUgdGhlIFNlbGVjdGlvbiBwaGFzZSBpcyBiZWluZworICAgICAgICBwYWludGVk
LgorCisgICAgICAgIFRlc3RzOiAgV0tBdHRhY2htZW50VGVzdHNNYWMuRHJhZ0F0dGFjaG1lbnRB
c0ZpbGVQcm9taXNlCisgICAgICAgICAgICAgICAgV0tBdHRhY2htZW50VGVzdHMuTW92ZUF0dGFj
aG1lbnRFbGVtZW50QXNJY29uQnlEcmFnZ2luZworCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckF0dGFjaG1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudDo6cGFp
bnRSZXBsYWNlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1lbnQuaDoKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjp0
aXRsZVRleHRDb2xvckZvckF0dGFjaG1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6QXR0YWNobWVu
dExheW91dDo6bGF5T3V0VGl0bGUpOgorCisgICAgICAgIFBsdW1iIGFuIEF0dGFjaG1lbnRMYXlv
dXRTdHlsZSAoaS5lLiBOb25TZWxlY3RlZCBvciBTZWxlY3RlZCkgdG8gQXR0YWNobWVudExheW91
dCwgYW5kIHVzZSB0aGlzIGJpdCB3aGVuCisgICAgICAgIGRldGVybWluaW5nIHRoZSB0aXRsZSB0
ZXh0IGNvbG9yLCBhcyB3ZWxsIHdoZXRoZXIgdG8gcGFpbnQgYmFja2dyb3VuZHMgZm9yIHRoZSBp
Y29uIGFuZCB0aXRsZS4KKworICAgICAgICAoV2ViQ29yZTo6QXR0YWNobWVudExheW91dDo6QXR0
YWNobWVudExheW91dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1hYzo6YXR0YWNo
bWVudEludHJpbnNpY1NpemUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVN
YWM6OmF0dGFjaG1lbnRCYXNlbGluZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpwYWludEF0
dGFjaG1lbnRJY29uQmFja2dyb3VuZCk6CisgICAgICAgIChXZWJDb3JlOjpwYWludEF0dGFjaG1l
bnRUaXRsZUJhY2tncm91bmQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnBh
aW50QXR0YWNobWVudCk6CisKKyAgICAgICAgUmF0aGVyIHRoYW4gY2hlY2sgdGhlIFJlbmRlckF0
dGFjaG1lbnQncyBzZWxlY3Rpb24gc3RhdGUgV2hlbiBkZXRlcm1pbmluZyB3aGV0aGVyIHRvIHBh
aW50IHdpdGggYSBub24tc2VsZWN0ZWQKKyAgICAgICAgb3Igc2VsZWN0ZWQgc3R5bGUsIG9ubHkg
dXNlIHNlbGVjdGVkIHN0eWxlIGlmIHRoZSBSZW5kZXJBdHRhY2htZW50IGhhcyBhIHNlbGVjdGlv
biBfYW5kXyB0aGUgcGFpbnRpbmcgcGhhc2UgaXMKKyAgICAgICAgbm90ICJTZWxlY3Rpb24iLiBU
aGlzIHNvdW5kcyBleHRyZW1lbHkgY291bnRlci1pbnR1aXRpdmU7IGJ1dCB0aGUgIlNlbGVjdGlv
biIgcGFpbnRpbmcgcGhhc2UgcmVmZXJzIHRvIHBhaW50aW5nCisgICAgICAgIHRoZSBzZWxlY3Rl
ZCBjb250ZW50IF93aXRob3V0XyBpbmNsdWRpbmcgYW55IHBhcnQgb2YgdGhlIHNlbGVjdGlvbiBo
aWdobGlnaHQgaXRzZWxmLgorCiAyMDE4LTA4LTIyICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNp
ZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFtBdHRhY2htZW50IFN1cHBvcnRdIFN1cHBvcnQgZHJh
Z2dpbmcgYXR0YWNobWVudCBlbGVtZW50cyBvdXQgYXMgZmlsZXMgb24gbWFjT1MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBdHRhY2htZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBdHRhY2htZW50LmNwcAppbmRleCBhNjlmYzkzNGQ1
YjA2Mzc1OTkxOGNmNjcxMzY0MGYzODdlMTBkYjE5Li5lZDMzMzVlMTM3NGQ4ZjcyMjkyNTJkNTRj
ZTA2N2NjMzg0NzY4MWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQXR0YWNobWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckF0
dGFjaG1lbnQuY3BwCkBAIC04MCw2ICs4MCwxOCBAQCBib29sIFJlbmRlckF0dGFjaG1lbnQ6OnNo
b3VsZERyYXdCb3JkZXIoKSBjb25zdAogICAgIHJldHVybiBtX3Nob3VsZERyYXdCb3JkZXI7CiB9
CiAKK3ZvaWQgUmVuZGVyQXR0YWNobWVudDo6cGFpbnRSZXBsYWNlZChQYWludEluZm8mIHBhaW50
SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIG9mZnNldCkKK3sKKyAgICBpZiAocGFpbnRJbmZvLnBo
YXNlICE9IFBhaW50UGhhc2U6OlNlbGVjdGlvbiB8fCAhaGFzVmlzaWJsZUJveERlY29yYXRpb25z
KCkgfHwgIXN0eWxlKCkuaGFzQXBwZWFyYW5jZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBh
dXRvIHBhaW50UmVjdCA9IGJvcmRlckJveFJlY3QoKTsKKyAgICBwYWludFJlY3QubW92ZUJ5KG9m
ZnNldCk7CisKKyAgICBDb250cm9sU3RhdGVzIGNvbnRyb2xTdGF0ZXM7CisgICAgdGhlbWUoKS5w
YWludCgqdGhpcywgY29udHJvbFN0YXRlcywgcGFpbnRJbmZvLCBwYWludFJlY3QpOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJBdHRhY2htZW50LmgKaW5kZXggNGNhYWUwMzcwOWQ5Y2E0NjQ3ZTk4MDZmMGNjMzZm
Mjc3OWRkMWEyYS4uZDMyOTIyYTYwYjI1MTQ4ZjNlYTFmMmZjMzAxMWNmMzRmMGExYmYyMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQXR0YWNobWVudC5oCkBAIC01MCw2ICs1
MCw3IEBAIHByaXZhdGU6CiAgICAgY29uc3QgY2hhciogcmVuZGVyTmFtZSgpIGNvbnN0IG92ZXJy
aWRlIHsgcmV0dXJuICJSZW5kZXJBdHRhY2htZW50IjsgfQogCiAgICAgYm9vbCBzaG91bGREcmF3
U2VsZWN0aW9uVGludCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgdm9p
ZCBwYWludFJlcGxhY2VkKFBhaW50SW5mbyYsIGNvbnN0IExheW91dFBvaW50JiBvZmZzZXQpIGZp
bmFsOwogCiAgICAgdm9pZCBsYXlvdXQoKSBvdmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRoZW1lTWFjLm1tCmluZGV4IGI4ODlkYWM0ZDRhMTIyMWNkNTdlZWIwZmQx
MmJjNTU2MTBjOTNiNDMuLjEwMDljMjFmODIwNTk3NmZkMTlkNTQ3ODVjMWQxOGNkY2IwODYyZjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KQEAgLTI1NDQs
OCArMjU0NCwxMCBAQCBjb25zdCBDR0Zsb2F0IGF0dGFjaG1lbnRQbGFjZWhvbGRlckJvcmRlckRh
c2hMZW5ndGggPSA2OwogCiBjb25zdCBDR0Zsb2F0IGF0dGFjaG1lbnRNYXJnaW4gPSAzOwogCitl
bnVtIGNsYXNzIEF0dGFjaG1lbnRMYXlvdXRTdHlsZSA6IHVpbnQ4X3QgeyBOb25TZWxlY3RlZCwg
U2VsZWN0ZWQgfTsKKwogc3RydWN0IEF0dGFjaG1lbnRMYXlvdXQgewotICAgIGV4cGxpY2l0IEF0
dGFjaG1lbnRMYXlvdXQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYpOworICAgIGV4cGxpY2l0IEF0
dGFjaG1lbnRMYXlvdXQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYsIEF0dGFjaG1lbnRMYXlvdXRT
dHlsZSk7CiAKICAgICBzdHJ1Y3QgTGFiZWxMaW5lIHsKICAgICAgICAgRmxvYXRSZWN0IGJhY2tn
cm91bmRSZWN0OwpAQCAtMjU2MCw2ICsyNTYyLDcgQEAgc3RydWN0IEF0dGFjaG1lbnRMYXlvdXQg
ewogICAgIEZsb2F0UmVjdCBhdHRhY2htZW50UmVjdDsKIAogICAgIGludCBiYXNlbGluZTsKKyAg
ICBBdHRhY2htZW50TGF5b3V0U3R5bGUgc3R5bGU7CiAKICAgICBSZXRhaW5QdHI8Q1RMaW5lUmVm
PiBzdWJ0aXRsZUxpbmU7CiAgICAgRmxvYXRSZWN0IHN1YnRpdGxlVGV4dFJlY3Q7CkBAIC0yNTcx
LDExICsyNTc0LDExIEBAIHByaXZhdGU6CiAgICAgdm9pZCBhZGRUaXRsZUxpbmUoQ1RMaW5lUmVm
LCBDR0Zsb2F0JiB5T2Zmc2V0LCBWZWN0b3I8Q0dQb2ludD4gb3JpZ2lucywgQ0ZJbmRleCBsaW5l
SW5kZXgsIGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmKTsKIH07CiAKLXN0YXRpYyBDb2xvciB0aXRs
ZVRleHRDb2xvckZvckF0dGFjaG1lbnQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVu
dCkKK3N0YXRpYyBDb2xvciB0aXRsZVRleHRDb2xvckZvckF0dGFjaG1lbnQoY29uc3QgUmVuZGVy
QXR0YWNobWVudCYgYXR0YWNobWVudCwgQXR0YWNobWVudExheW91dFN0eWxlIHN0eWxlKQogewog
ICAgIENvbG9yIHJlc3VsdCA9IENvbG9yOjpibGFjazsKICAgICAKLSAgICBpZiAoYXR0YWNobWVu
dC5zZWxlY3Rpb25TdGF0ZSgpICE9IFJlbmRlck9iamVjdDo6U2VsZWN0aW9uTm9uZSkgeworICAg
IGlmIChzdHlsZSA9PSBBdHRhY2htZW50TGF5b3V0U3R5bGU6OlNlbGVjdGVkKSB7CiAgICAgICAg
IGlmIChhdHRhY2htZW50LmZyYW1lKCkuc2VsZWN0aW9uKCkuaXNGb2N1c2VkQW5kQWN0aXZlKCkp
CiAgICAgICAgICAgICByZXN1bHQgPSBjb2xvckZyb21OU0NvbG9yKFtOU0NvbG9yIGFsdGVybmF0
ZVNlbGVjdGVkQ29udHJvbFRleHRDb2xvcl0pOwogICAgICAgICBlbHNlCkBAIC0yNjMxLDcgKzI2
MzQsNyBAQCB2b2lkIEF0dGFjaG1lbnRMYXlvdXQ6OmxheU91dFRpdGxlKGNvbnN0IFJlbmRlckF0
dGFjaG1lbnQmIGF0dGFjaG1lbnQpCiAKICAgICBOU0RpY3Rpb25hcnkgKnRleHRBdHRyaWJ1dGVz
ID0gQHsKICAgICAgICAgKF9fYnJpZGdlIGlkKWtDVEZvbnRBdHRyaWJ1dGVOYW1lOiAoX19icmlk
Z2UgaWQpZm9udC5nZXQoKSwKLSAgICAgICAgKF9fYnJpZGdlIGlkKWtDVEZvcmVncm91bmRDb2xv
ckF0dHJpYnV0ZU5hbWU6IChfX2JyaWRnZSBOU0NvbG9yICopY2FjaGVkQ0dDb2xvcih0aXRsZVRl
eHRDb2xvckZvckF0dGFjaG1lbnQoYXR0YWNobWVudCkpCisgICAgICAgIChfX2JyaWRnZSBpZClr
Q1RGb3JlZ3JvdW5kQ29sb3JBdHRyaWJ1dGVOYW1lOiAoX19icmlkZ2UgTlNDb2xvciAqKWNhY2hl
ZENHQ29sb3IodGl0bGVUZXh0Q29sb3JGb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIHN0eWxlKSkK
ICAgICB9OwogICAgIFJldGFpblB0cjxOU0F0dHJpYnV0ZWRTdHJpbmc+IGF0dHJpYnV0ZWRUaXRs
ZSA9IGFkb3B0TlMoW1tOU0F0dHJpYnV0ZWRTdHJpbmcgYWxsb2NdIGluaXRXaXRoU3RyaW5nOnRp
dGxlIGF0dHJpYnV0ZXM6dGV4dEF0dHJpYnV0ZXNdKTsKICAgICBSZXRhaW5QdHI8Q1RGcmFtZXNl
dHRlclJlZj4gdGl0bGVGcmFtZXNldHRlciA9IGFkb3B0Q0YoQ1RGcmFtZXNldHRlckNyZWF0ZVdp
dGhBdHRyaWJ1dGVkU3RyaW5nKChDRkF0dHJpYnV0ZWRTdHJpbmdSZWYpYXR0cmlidXRlZFRpdGxl
LmdldCgpKSk7CkBAIC0yNzA5LDcgKzI3MTIsOCBAQCB2b2lkIEF0dGFjaG1lbnRMYXlvdXQ6Omxh
eU91dFN1YnRpdGxlKGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgc3Vi
dGl0bGVUZXh0UmVjdCA9IEZsb2F0UmVjdCh4T2Zmc2V0LCB5T2Zmc2V0LCBsaW5lQm91bmRzLnNp
emUud2lkdGgsIGxpbmVCb3VuZHMuc2l6ZS5oZWlnaHQpOwogfQogCi1BdHRhY2htZW50TGF5b3V0
OjpBdHRhY2htZW50TGF5b3V0KGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFjaG1lbnQpCitB
dHRhY2htZW50TGF5b3V0OjpBdHRhY2htZW50TGF5b3V0KGNvbnN0IFJlbmRlckF0dGFjaG1lbnQm
IGF0dGFjaG1lbnQsIEF0dGFjaG1lbnRMYXlvdXRTdHlsZSBsYXlvdXRTdHlsZSkKKyAgICA6IHN0
eWxlKGxheW91dFN0eWxlKQogewogICAgIGxheU91dFRpdGxlKGF0dGFjaG1lbnQpOwogICAgIGxh
eU91dFN1YnRpdGxlKGF0dGFjaG1lbnQpOwpAQCAtMjczNCwxOCArMjczOCwyMSBAQCBBdHRhY2ht
ZW50TGF5b3V0OjpBdHRhY2htZW50TGF5b3V0KGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFj
aG1lbnQpCiAKIExheW91dFNpemUgUmVuZGVyVGhlbWVNYWM6OmF0dGFjaG1lbnRJbnRyaW5zaWNT
aXplKGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFjaG1lbnQpIGNvbnN0CiB7Ci0gICAgQXR0
YWNobWVudExheW91dCBsYXlvdXQoYXR0YWNobWVudCk7CisgICAgQXR0YWNobWVudExheW91dCBs
YXlvdXQoYXR0YWNobWVudCwgQXR0YWNobWVudExheW91dFN0eWxlOjpOb25TZWxlY3RlZCk7CiAg
ICAgcmV0dXJuIExheW91dFNpemUobGF5b3V0LmF0dGFjaG1lbnRSZWN0LnNpemUoKSk7CiB9CiAK
IGludCBSZW5kZXJUaGVtZU1hYzo6YXR0YWNobWVudEJhc2VsaW5lKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpIGNvbnN0CiB7Ci0gICAgQXR0YWNobWVudExheW91dCBsYXlvdXQo
YXR0YWNobWVudCk7CisgICAgQXR0YWNobWVudExheW91dCBsYXlvdXQoYXR0YWNobWVudCwgQXR0
YWNobWVudExheW91dFN0eWxlOjpOb25TZWxlY3RlZCk7CiAgICAgcmV0dXJuIGxheW91dC5iYXNl
bGluZTsKIH0KIAogc3RhdGljIHZvaWQgcGFpbnRBdHRhY2htZW50SWNvbkJhY2tncm91bmQoY29u
c3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0
LCBBdHRhY2htZW50TGF5b3V0JiBsYXlvdXQpCiB7CisgICAgaWYgKGxheW91dC5zdHlsZSA9PSBB
dHRhY2htZW50TGF5b3V0U3R5bGU6Ok5vblNlbGVjdGVkKQorICAgICAgICByZXR1cm47CisKICAg
ICAvLyBGSVhNRTogRmluZGVyIGhhcyBhIGRpc2NvbnRpbnVvdXMgYmVoYXZpb3IgaGVyZSB3aGVu
IHlvdSBoYXZlIGEgYmFja2dyb3VuZCBjb2xvciBvdGhlciB0aGFuIHdoaXRlLAogICAgIC8vIHdo
ZXJlIGl0IHN3aXRjaGVzIGludG8gJ2JvcmRlcmVkIG1vZGUnIGFuZCB0aGUgYm9yZGVyIHBvcHMg
aW4gb24gdG9wIG9mIHRoZSBiYWNrZ3JvdW5kLgogICAgIGJvb2wgcGFpbnRCb3JkZXIgPSB0cnVl
OwpAQCAtMjgzNCw2ICsyODQxLDkgQEAgc3RhdGljIHZvaWQgcGFpbnRBdHRhY2htZW50SWNvblBs
YWNlaG9sZGVyKGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFjaG1lbnQsIEcKIAogc3RhdGlj
IHZvaWQgcGFpbnRBdHRhY2htZW50VGl0bGVCYWNrZ3JvdW5kKGNvbnN0IFJlbmRlckF0dGFjaG1l
bnQmIGF0dGFjaG1lbnQsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgQXR0YWNobWVudExheW91
dCYgbGF5b3V0KQogeworICAgIGlmIChsYXlvdXQuc3R5bGUgPT0gQXR0YWNobWVudExheW91dFN0
eWxlOjpOb25TZWxlY3RlZCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKGxheW91dC5saW5l
cy5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtMjkzMiw3ICsyOTQyLDExIEBAIGJv
b2wgUmVuZGVyVGhlbWVNYWM6OnBhaW50QXR0YWNobWVudChjb25zdCBSZW5kZXJPYmplY3QmIHJl
bmRlcmVyLCBjb25zdCBQYWludEluCiAKICAgICBjb25zdCBSZW5kZXJBdHRhY2htZW50JiBhdHRh
Y2htZW50ID0gZG93bmNhc3Q8UmVuZGVyQXR0YWNobWVudD4ocmVuZGVyZXIpOwogCi0gICAgQXR0
YWNobWVudExheW91dCBsYXlvdXQoYXR0YWNobWVudCk7CisgICAgYXV0byBsYXlvdXRTdHlsZSA9
IEF0dGFjaG1lbnRMYXlvdXRTdHlsZTo6Tm9uU2VsZWN0ZWQ7CisgICAgaWYgKGF0dGFjaG1lbnQu
c2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJPYmplY3Q6OlNlbGVjdGlvbk5vbmUgJiYgcGFpbnRJ
bmZvLnBoYXNlICE9IFBhaW50UGhhc2U6OlNlbGVjdGlvbikKKyAgICAgICAgbGF5b3V0U3R5bGUg
PSBBdHRhY2htZW50TGF5b3V0U3R5bGU6OlNlbGVjdGVkOworCisgICAgQXR0YWNobWVudExheW91
dCBsYXlvdXQoYXR0YWNobWVudCwgbGF5b3V0U3R5bGUpOwogCiAgICAgYXV0byYgcHJvZ3Jlc3NT
dHJpbmcgPSBhdHRhY2htZW50LmF0dGFjaG1lbnRFbGVtZW50KCkuYXR0cmlidXRlV2l0aG91dFN5
bmNocm9uaXphdGlvbihwcm9ncmVzc0F0dHIpOwogICAgIGJvb2wgdmFsaWRQcm9ncmVzcyA9IGZh
bHNlOwpAQCAtMjk0NywxOCArMjk2MSwxNSBAQCBib29sIFJlbmRlclRoZW1lTWFjOjpwYWludEF0
dGFjaG1lbnQoY29uc3QgUmVuZGVyT2JqZWN0JiByZW5kZXJlciwgY29uc3QgUGFpbnRJbgogICAg
IGNvbnRleHQudHJhbnNsYXRlKHRvRmxvYXRTaXplKHBhaW50UmVjdC5sb2NhdGlvbigpKSk7CiAg
ICAgY29udGV4dC50cmFuc2xhdGUoZmxvb3JTaXplVG9EZXZpY2VQaXhlbHMoTGF5b3V0U2l6ZSgo
cGFpbnRSZWN0LndpZHRoKCkgLSBhdHRhY2htZW50SWNvbkJhY2tncm91bmRTaXplKSAvIDIsIDAp
LCByZW5kZXJlci5kb2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpKTsKIAotICAgIGJvb2wg
dXNlU2VsZWN0ZWRTdHlsZSA9IGF0dGFjaG1lbnQuc2VsZWN0aW9uU3RhdGUoKSAhPSBSZW5kZXJP
YmplY3Q6OlNlbGVjdGlvbk5vbmU7CiAgICAgYm9vbCB1c2VQbGFjZWhvbGRlciA9IHZhbGlkUHJv
Z3Jlc3MgJiYgIXByb2dyZXNzOwogCi0gICAgaWYgKHVzZVNlbGVjdGVkU3R5bGUpCi0gICAgICAg
IHBhaW50QXR0YWNobWVudEljb25CYWNrZ3JvdW5kKGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91
dCk7CisgICAgcGFpbnRBdHRhY2htZW50SWNvbkJhY2tncm91bmQoYXR0YWNobWVudCwgY29udGV4
dCwgbGF5b3V0KTsKICAgICBpZiAodXNlUGxhY2Vob2xkZXIpCiAgICAgICAgIHBhaW50QXR0YWNo
bWVudEljb25QbGFjZWhvbGRlcihhdHRhY2htZW50LCBjb250ZXh0LCBsYXlvdXQpOwogICAgIGVs
c2UKICAgICAgICAgcGFpbnRBdHRhY2htZW50SWNvbihhdHRhY2htZW50LCBjb250ZXh0LCBsYXlv
dXQpOwogCi0gICAgaWYgKHVzZVNlbGVjdGVkU3R5bGUpCi0gICAgICAgIHBhaW50QXR0YWNobWVu
dFRpdGxlQmFja2dyb3VuZChhdHRhY2htZW50LCBjb250ZXh0LCBsYXlvdXQpOworICAgIHBhaW50
QXR0YWNobWVudFRpdGxlQmFja2dyb3VuZChhdHRhY2htZW50LCBjb250ZXh0LCBsYXlvdXQpOwog
ICAgIHBhaW50QXR0YWNobWVudFRpdGxlKGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91dCk7CiAg
ICAgcGFpbnRBdHRhY2htZW50U3VidGl0bGUoYXR0YWNobWVudCwgY29udGV4dCwgbGF5b3V0KTsK
IApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDkz
MjE0OTlmZTk0ZWMyNWNjNzEzNzk2ZDZkNjJiNjhiMTFmZWI1ZmYuLmNkZjRhMWNlNWU2ZDkwNzhm
NGIzMzM4MzE4NmU4MjY4NzJjMmY5MGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysg
Yi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxOC0wOC0yMiAgV2Vuc29uIEhz
aWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbQXR0YWNobWVudCBTdXBw
b3J0XSBBdHRhY2htZW50IGVsZW1lbnRzIGRvbid0IGFwcGVhciBpbiBkcmFnIGltYWdlcyBvbiBt
YWNPUworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4
ODIzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80MzYxNjM3OD4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGp1c3RzIGEgY291cGxlIG9mIGV4aXN0
aW5nIHRlc3RzIHRvIGFkZGl0aW9uYWxseSB2ZXJpZnkgdGhhdCB0aGUgZHJhZyBpbWFnZSBnZW5l
cmF0ZWQgd2hlbiBkcmFnZ2luZyBhbgorICAgICAgICBhdHRhY2htZW50IGVsZW1lbnQgaW4gbWFj
T1MgaXMgbm90IGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL1dLQXR0YWNobWVudFRlc3RzLm1tOgorICAgICAgICAoaXND
b21wbGV0ZWx5VHJhbnNwYXJlbnQpOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisK
IDIwMTgtMDgtMjIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgW0F0dGFjaG1lbnQgU3VwcG9ydF0gU3VwcG9ydCBkcmFnZ2luZyBhdHRhY2htZW50IGVs
ZW1lbnRzIG91dCBhcyBmaWxlcyBvbiBtYWNPUwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS0F0dGFjaG1lbnRUZXN0cy5tbSBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tBdHRhY2htZW50VGVzdHMubW0KaW5kZXggZmI4
ZDUxNWYwNTg4M2Q3ZWRjMTQyZGM2MGI0N2Y3ZTAwNmQyMzgxZi4uOGFhYTFkYTYwMDRmZTA1NzVl
MDY0YmJkY2Y3MTgwYjYzZGQ4YWZhYSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9XS0F0dGFjaG1lbnRUZXN0cy5tbQorKysgYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dLQXR0YWNobWVudFRlc3RzLm1tCkBAIC0zOTQsNiAr
Mzk0LDIyIEBAIHN0YXRpYyBOU0RhdGEgKnRlc3RQREZEYXRhKCkKIAogI3ByYWdtYSBtYXJrIC0g
UGxhdGZvcm0gdGVzdGluZyBoZWxwZXIgZnVuY3Rpb25zCiAKKyNpZiBQTEFURk9STShNQUMpCisK
K0JPT0wgaXNDb21wbGV0ZWx5VHJhbnNwYXJlbnQoTlNJbWFnZSAqaW1hZ2UpCit7CisgICAgYXV0
byByZXByZXNlbnRhdGlvbiA9IGFkb3B0TlMoW1tOU0JpdG1hcEltYWdlUmVwIGFsbG9jXSBpbml0
V2l0aERhdGE6aW1hZ2UuVElGRlJlcHJlc2VudGF0aW9uXSk7CisgICAgZm9yIChpbnQgcm93ID0g
MDsgcm93IDwgaW1hZ2Uuc2l6ZS5oZWlnaHQ7ICsrcm93KSB7CisgICAgICAgIGZvciAoaW50IGNv
bHVtbiA9IDA7IGNvbHVtbiA8IGltYWdlLnNpemUud2lkdGg7ICsrY29sdW1uKSB7CisgICAgICAg
ICAgICBpZiAoW3JlcHJlc2VudGF0aW9uIGNvbG9yQXRYOmNvbHVtbiB5OnJvd10uYWxwaGFDb21w
b25lbnQpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgfQor
ICAgIHJldHVybiB0cnVlOworfQorCisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykKIAogdHlw
ZWRlZiB2b2lkKF5JdGVtUHJvdmlkZXJEYXRhTG9hZEhhbmRsZXIpKE5TRGF0YSAqLCBOU0Vycm9y
ICopOwpAQCAtMTExMiw2ICsxMTI4LDkgQEAgVEVTVChXS0F0dGFjaG1lbnRUZXN0cywgTW92ZUF0
dGFjaG1lbnRFbGVtZW50QXNJY29uQnlEcmFnZ2luZykKICAgICBbYXR0YWNobWVudCBleHBlY3RS
ZXF1ZXN0ZWREYXRhVG9CZTpkYXRhLmdldCgpXTsKICAgICBFWFBFQ1RfV0tfU1RSRVEoImRvY3Vt
ZW50LnBkZiIsIFt3ZWJWaWV3IHZhbHVlT2ZBdHRyaWJ1dGU6QCJ0aXRsZSIgZm9yUXVlcnlTZWxl
Y3RvcjpAImF0dGFjaG1lbnQiXSk7CiAgICAgRVhQRUNUX1dLX1NUUkVRKCJhcHBsaWNhdGlvbi9w
ZGYiLCBbd2ViVmlldyB2YWx1ZU9mQXR0cmlidXRlOkAidHlwZSIgZm9yUXVlcnlTZWxlY3RvcjpA
ImF0dGFjaG1lbnQiXSk7CisjaWYgUExBVEZPUk0oTUFDKQorICAgIEVYUEVDVF9GQUxTRShpc0Nv
bXBsZXRlbHlUcmFuc3BhcmVudChbc2ltdWxhdG9yIGRyYWdnaW5nSW5mb10uZHJhZ2dlZEltYWdl
KSk7CisjZW5kaWYKIAogICAgIFt3ZWJWaWV3IGV4cGVjdEVsZW1lbnRUYWc6QCJTVFJPTkciIHRv
Q29tZUJlZm9yZTpAIkFUVEFDSE1FTlQiXTsKICAgICBbc2ltdWxhdG9yIGVuZERhdGFUcmFuc2Zl
cl07CkBAIC0xMjEwLDYgKzEyMjksNyBAQCBURVNUKFdLQXR0YWNobWVudFRlc3RzTWFjLCBEcmFn
QXR0YWNobWVudEFzRmlsZVByb21pc2UpCiAgICAgTlNBcnJheTxOU1VSTCAqPiAqdXJscyA9IFtz
aW11bGF0b3IgcmVjZWl2ZVByb21pc2VkRmlsZXNdOwogICAgIEVYUEVDVF9FUSgxVSwgdXJscy5j
b3VudCk7CiAgICAgRVhQRUNUX1RSVUUoW1tOU0RhdGEgZGF0YVdpdGhDb250ZW50c09mVVJMOnVy
bHMuZmlyc3RPYmplY3RdIGlzRXF1YWxUb0RhdGE6dGVzdFBERkRhdGEoKV0pOworICAgIEVYUEVD
VF9GQUxTRShpc0NvbXBsZXRlbHlUcmFuc3BhcmVudChbc2ltdWxhdG9yIGRyYWdnaW5nSW5mb10u
ZHJhZ2dlZEltYWdlKSk7CiB9CiAKICNlbmRpZiAvLyBQTEFURk9STShNQUMpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347881</attachid>
            <date>2018-08-22 17:21:25 -0700</date>
            <delta_ts>2018-08-23 10:20:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188823-20180822172124.patch</filename>
            <type>text/plain</type>
            <size>13026</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzQzYWU3ZGRlMDVlYjJl
ZWM2YzJlYjg1MTg2YjNhMDliOTNmNWIwYi4uODQ4OTNkZTcyNDA2ZDNmZDMzYjY3MTI5MWIzODVl
ZmFkM2EyZTRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDE4LTA4LTIyICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtBdHRhY2htZW50
IFN1cHBvcnRdIEF0dGFjaG1lbnQgZWxlbWVudHMgZG9uJ3QgYXBwZWFyIGluIGRyYWcgaW1hZ2Vz
IG9uIG1hY09TCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODg4MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQzNjE2Mzc4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSwgYXR0YWNobWVu
dCBlbGVtZW50cyBkb24ndCBzaG93IHVwIGluIHRoZSBkcmFnIGltYWdlIHNuYXBzaG90IG9uIG1h
Y09TLiBUaGlzIGlzIGJlY2F1c2Ugb25seSB0aGUKKyAgICAgICAgIlNlbGVjdGlvbiIgcGhhc2Ug
aXMgcGFpbnRlZCB3aGVuIGdlbmVyYXRpbmcgYSBkcmFnIGltYWdlIG9uIG1hY09TLCBhbmQgbWFu
eSByZXBsYWNlZCByZW5kZXJlcnMgKHdpdGggc29tZQorICAgICAgICBleGNlcHRpb25zLCBzdWNo
IGFzIFJlbmRlckltYWdlKSBvbmx5IHBhaW50IHZpc2libGUgY29udGVudCBkdXJpbmcgdGhlICJG
b3JlZ3JvdW5kIiBwaGFzZS4gVG8gZml4IHRoaXMsIHdlCisgICAgICAgIG92ZXJyaWRlIFJlbmRl
ckF0dGFjaG1lbnQ6OnBhaW50UmVwbGFjZWQgdG8gcGFpbnQgdGhlIGF0dGFjaG1lbnQgaW4gdGhl
IGNhc2Ugd2hlcmUgdGhlIFNlbGVjdGlvbiBwaGFzZSBpcyBiZWluZworICAgICAgICBwYWludGVk
LgorCisgICAgICAgIFRlc3RzOiAgV0tBdHRhY2htZW50VGVzdHNNYWMuRHJhZ0F0dGFjaG1lbnRB
c0ZpbGVQcm9taXNlCisgICAgICAgICAgICAgICAgV0tBdHRhY2htZW50VGVzdHMuTW92ZUF0dGFj
aG1lbnRFbGVtZW50QXNJY29uQnlEcmFnZ2luZworCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckF0dGFjaG1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudDo6cGFp
bnRSZXBsYWNlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1lbnQuaDoKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjp0
aXRsZVRleHRDb2xvckZvckF0dGFjaG1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6QXR0YWNobWVu
dExheW91dDo6bGF5T3V0VGl0bGUpOgorCisgICAgICAgIFBsdW1iIGFuIEF0dGFjaG1lbnRMYXlv
dXRTdHlsZSAoaS5lLiBOb25TZWxlY3RlZCBvciBTZWxlY3RlZCkgdG8gQXR0YWNobWVudExheW91
dCwgYW5kIHVzZSB0aGlzIGJpdCB3aGVuCisgICAgICAgIGRldGVybWluaW5nIHRoZSB0aXRsZSB0
ZXh0IGNvbG9yLCBhcyB3ZWxsIHdoZXRoZXIgdG8gcGFpbnQgYmFja2dyb3VuZHMgZm9yIHRoZSBp
Y29uIGFuZCB0aXRsZS4KKworICAgICAgICAoV2ViQ29yZTo6QXR0YWNobWVudExheW91dDo6QXR0
YWNobWVudExheW91dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1hYzo6YXR0YWNo
bWVudEludHJpbnNpY1NpemUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVN
YWM6OmF0dGFjaG1lbnRCYXNlbGluZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpwYWludEF0
dGFjaG1lbnRJY29uQmFja2dyb3VuZCk6CisgICAgICAgIChXZWJDb3JlOjpwYWludEF0dGFjaG1l
bnRUaXRsZUJhY2tncm91bmQpOgorCisgICAgICAgIEJhaWwgZnJvbSBwYWludGluZyBiYWNrZ3Jv
dW5kcyBpZiBhIHNlbGVjdGVkIHN0eWxlIGlzIHVzZWQgZm9yIHRoZSBhdHRhY2htZW50LgorCisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1hYzo6cGFpbnRBdHRhY2htZW50KToKKworICAg
ICAgICBSYXRoZXIgdGhhbiBjaGVjayB0aGUgUmVuZGVyQXR0YWNobWVudCdzIHNlbGVjdGlvbiBz
dGF0ZSB3aGVuIGRldGVybWluaW5nIHdoZXRoZXIgdG8gcGFpbnQgd2l0aCBhIG5vbi1zZWxlY3Rl
ZAorICAgICAgICBvciBzZWxlY3RlZCBzdHlsZSwgb25seSB1c2Ugc2VsZWN0ZWQgc3R5bGUgaWYg
dGhlIFJlbmRlckF0dGFjaG1lbnQgaGFzIGEgc2VsZWN0aW9uIF9hbmRfIHRoZSBwYWludGluZyBw
aGFzZSBpcworICAgICAgICBub3QgIlNlbGVjdGlvbiIuIFdoaWxlIHRoaXMgc291bmRzIGV4dHJl
bWVseSBjb3VudGVyLWludHVpdGl2ZSwgdGhlICJTZWxlY3Rpb24iIHBhaW50aW5nIHBoYXNlIHJl
ZmVycyB0bworICAgICAgICBwYWludGluZyB0aGUgc2VsZWN0ZWQgZm9yZWdyb3VuZCBjb250ZW50
IF93aXRob3V0XyBpbmNsdWRpbmcgYW55IHBhcnQgb2YgdGhlIHNlbGVjdGlvbiBoaWdobGlnaHQu
CisKIDIwMTgtMDgtMjIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0F0dGFjaG1lbnQgU3VwcG9ydF0gU3VwcG9ydCBkcmFnZ2luZyBhdHRhY2htZW50
IGVsZW1lbnRzIG91dCBhcyBmaWxlcyBvbiBtYWNPUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckF0dGFjaG1lbnQuY3BwCmluZGV4IGE2OWZjOTM0ZDViMDYzNzU5OTE4Y2Y2NzEz
NjQwZjM4N2UxMGRiMTkuLmVkMzMzNWUxMzc0ZDhmNzIyOTI1MmQ1NGNlMDY3Y2MzODQ3NjgxYmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBdHRhY2htZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQXR0YWNobWVudC5jcHAKQEAg
LTgwLDYgKzgwLDE4IEBAIGJvb2wgUmVuZGVyQXR0YWNobWVudDo6c2hvdWxkRHJhd0JvcmRlcigp
IGNvbnN0CiAgICAgcmV0dXJuIG1fc2hvdWxkRHJhd0JvcmRlcjsKIH0KIAordm9pZCBSZW5kZXJB
dHRhY2htZW50OjpwYWludFJlcGxhY2VkKFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlv
dXRQb2ludCYgb2Zmc2V0KQoreworICAgIGlmIChwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQaGFz
ZTo6U2VsZWN0aW9uIHx8ICFoYXNWaXNpYmxlQm94RGVjb3JhdGlvbnMoKSB8fCAhc3R5bGUoKS5o
YXNBcHBlYXJhbmNlKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gcGFpbnRSZWN0ID0g
Ym9yZGVyQm94UmVjdCgpOworICAgIHBhaW50UmVjdC5tb3ZlQnkob2Zmc2V0KTsKKworICAgIENv
bnRyb2xTdGF0ZXMgY29udHJvbFN0YXRlczsKKyAgICB0aGVtZSgpLnBhaW50KCp0aGlzLCBjb250
cm9sU3RhdGVzLCBwYWludEluZm8sIHBhaW50UmVjdCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQXR0YWNobWVudC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckF0dGFjaG1l
bnQuaAppbmRleCA0Y2FhZTAzNzA5ZDljYTQ2NDdlOTgwNmYwY2MzNmYyNzc5ZGQxYTJhLi5kMzI5
MjJhNjBiMjUxNDhmM2VhMWYyZmMzMDExY2YzNGYwYTFiZjIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQXR0YWNobWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJBdHRhY2htZW50LmgKQEAgLTUwLDYgKzUwLDcgQEAgcHJpdmF0ZToK
ICAgICBjb25zdCBjaGFyKiByZW5kZXJOYW1lKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gIlJl
bmRlckF0dGFjaG1lbnQiOyB9CiAKICAgICBib29sIHNob3VsZERyYXdTZWxlY3Rpb25UaW50KCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2b2lkIHBhaW50UmVwbGFjZWQo
UGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UG9pbnQmIG9mZnNldCkgZmluYWw7CiAKICAgICB2b2lk
IGxheW91dCgpIG92ZXJyaWRlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVGhlbWVNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhl
bWVNYWMubW0KaW5kZXggYjg4OWRhYzRkNGExMjIxY2Q1N2VlYjBmZDEyYmM1NTYxMGM5M2I0My4u
MTAwOWMyMWY4MjA1OTc2ZmQxOWQ1NDc4NWMxZDE4Y2RjYjA4NjJmOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQpAQCAtMjU0NCw4ICsyNTQ0LDEwIEBAIGNv
bnN0IENHRmxvYXQgYXR0YWNobWVudFBsYWNlaG9sZGVyQm9yZGVyRGFzaExlbmd0aCA9IDY7CiAK
IGNvbnN0IENHRmxvYXQgYXR0YWNobWVudE1hcmdpbiA9IDM7CiAKK2VudW0gY2xhc3MgQXR0YWNo
bWVudExheW91dFN0eWxlIDogdWludDhfdCB7IE5vblNlbGVjdGVkLCBTZWxlY3RlZCB9OworCiBz
dHJ1Y3QgQXR0YWNobWVudExheW91dCB7Ci0gICAgZXhwbGljaXQgQXR0YWNobWVudExheW91dChj
b25zdCBSZW5kZXJBdHRhY2htZW50Jik7CisgICAgZXhwbGljaXQgQXR0YWNobWVudExheW91dChj
b25zdCBSZW5kZXJBdHRhY2htZW50JiwgQXR0YWNobWVudExheW91dFN0eWxlKTsKIAogICAgIHN0
cnVjdCBMYWJlbExpbmUgewogICAgICAgICBGbG9hdFJlY3QgYmFja2dyb3VuZFJlY3Q7CkBAIC0y
NTYwLDYgKzI1NjIsNyBAQCBzdHJ1Y3QgQXR0YWNobWVudExheW91dCB7CiAgICAgRmxvYXRSZWN0
IGF0dGFjaG1lbnRSZWN0OwogCiAgICAgaW50IGJhc2VsaW5lOworICAgIEF0dGFjaG1lbnRMYXlv
dXRTdHlsZSBzdHlsZTsKIAogICAgIFJldGFpblB0cjxDVExpbmVSZWY+IHN1YnRpdGxlTGluZTsK
ICAgICBGbG9hdFJlY3Qgc3VidGl0bGVUZXh0UmVjdDsKQEAgLTI1NzEsMTEgKzI1NzQsMTEgQEAg
cHJpdmF0ZToKICAgICB2b2lkIGFkZFRpdGxlTGluZShDVExpbmVSZWYsIENHRmxvYXQmIHlPZmZz
ZXQsIFZlY3RvcjxDR1BvaW50PiBvcmlnaW5zLCBDRkluZGV4IGxpbmVJbmRleCwgY29uc3QgUmVu
ZGVyQXR0YWNobWVudCYpOwogfTsKIAotc3RhdGljIENvbG9yIHRpdGxlVGV4dENvbG9yRm9yQXR0
YWNobWVudChjb25zdCBSZW5kZXJBdHRhY2htZW50JiBhdHRhY2htZW50KQorc3RhdGljIENvbG9y
IHRpdGxlVGV4dENvbG9yRm9yQXR0YWNobWVudChjb25zdCBSZW5kZXJBdHRhY2htZW50JiBhdHRh
Y2htZW50LCBBdHRhY2htZW50TGF5b3V0U3R5bGUgc3R5bGUpCiB7CiAgICAgQ29sb3IgcmVzdWx0
ID0gQ29sb3I6OmJsYWNrOwogICAgIAotICAgIGlmIChhdHRhY2htZW50LnNlbGVjdGlvblN0YXRl
KCkgIT0gUmVuZGVyT2JqZWN0OjpTZWxlY3Rpb25Ob25lKSB7CisgICAgaWYgKHN0eWxlID09IEF0
dGFjaG1lbnRMYXlvdXRTdHlsZTo6U2VsZWN0ZWQpIHsKICAgICAgICAgaWYgKGF0dGFjaG1lbnQu
ZnJhbWUoKS5zZWxlY3Rpb24oKS5pc0ZvY3VzZWRBbmRBY3RpdmUoKSkKICAgICAgICAgICAgIHJl
c3VsdCA9IGNvbG9yRnJvbU5TQ29sb3IoW05TQ29sb3IgYWx0ZXJuYXRlU2VsZWN0ZWRDb250cm9s
VGV4dENvbG9yXSk7CiAgICAgICAgIGVsc2UKQEAgLTI2MzEsNyArMjYzNCw3IEBAIHZvaWQgQXR0
YWNobWVudExheW91dDo6bGF5T3V0VGl0bGUoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNo
bWVudCkKIAogICAgIE5TRGljdGlvbmFyeSAqdGV4dEF0dHJpYnV0ZXMgPSBAewogICAgICAgICAo
X19icmlkZ2UgaWQpa0NURm9udEF0dHJpYnV0ZU5hbWU6IChfX2JyaWRnZSBpZClmb250LmdldCgp
LAotICAgICAgICAoX19icmlkZ2UgaWQpa0NURm9yZWdyb3VuZENvbG9yQXR0cmlidXRlTmFtZTog
KF9fYnJpZGdlIE5TQ29sb3IgKiljYWNoZWRDR0NvbG9yKHRpdGxlVGV4dENvbG9yRm9yQXR0YWNo
bWVudChhdHRhY2htZW50KSkKKyAgICAgICAgKF9fYnJpZGdlIGlkKWtDVEZvcmVncm91bmRDb2xv
ckF0dHJpYnV0ZU5hbWU6IChfX2JyaWRnZSBOU0NvbG9yICopY2FjaGVkQ0dDb2xvcih0aXRsZVRl
eHRDb2xvckZvckF0dGFjaG1lbnQoYXR0YWNobWVudCwgc3R5bGUpKQogICAgIH07CiAgICAgUmV0
YWluUHRyPE5TQXR0cmlidXRlZFN0cmluZz4gYXR0cmlidXRlZFRpdGxlID0gYWRvcHROUyhbW05T
QXR0cmlidXRlZFN0cmluZyBhbGxvY10gaW5pdFdpdGhTdHJpbmc6dGl0bGUgYXR0cmlidXRlczp0
ZXh0QXR0cmlidXRlc10pOwogICAgIFJldGFpblB0cjxDVEZyYW1lc2V0dGVyUmVmPiB0aXRsZUZy
YW1lc2V0dGVyID0gYWRvcHRDRihDVEZyYW1lc2V0dGVyQ3JlYXRlV2l0aEF0dHJpYnV0ZWRTdHJp
bmcoKENGQXR0cmlidXRlZFN0cmluZ1JlZilhdHRyaWJ1dGVkVGl0bGUuZ2V0KCkpKTsKQEAgLTI3
MDksNyArMjcxMiw4IEBAIHZvaWQgQXR0YWNobWVudExheW91dDo6bGF5T3V0U3VidGl0bGUoY29u
c3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCkKICAgICBzdWJ0aXRsZVRleHRSZWN0ID0g
RmxvYXRSZWN0KHhPZmZzZXQsIHlPZmZzZXQsIGxpbmVCb3VuZHMuc2l6ZS53aWR0aCwgbGluZUJv
dW5kcy5zaXplLmhlaWdodCk7CiB9CiAKLUF0dGFjaG1lbnRMYXlvdXQ6OkF0dGFjaG1lbnRMYXlv
dXQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCkKK0F0dGFjaG1lbnRMYXlvdXQ6
OkF0dGFjaG1lbnRMYXlvdXQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCwgQXR0
YWNobWVudExheW91dFN0eWxlIGxheW91dFN0eWxlKQorICAgIDogc3R5bGUobGF5b3V0U3R5bGUp
CiB7CiAgICAgbGF5T3V0VGl0bGUoYXR0YWNobWVudCk7CiAgICAgbGF5T3V0U3VidGl0bGUoYXR0
YWNobWVudCk7CkBAIC0yNzM0LDE4ICsyNzM4LDIxIEBAIEF0dGFjaG1lbnRMYXlvdXQ6OkF0dGFj
aG1lbnRMYXlvdXQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCkKIAogTGF5b3V0
U2l6ZSBSZW5kZXJUaGVtZU1hYzo6YXR0YWNobWVudEludHJpbnNpY1NpemUoY29uc3QgUmVuZGVy
QXR0YWNobWVudCYgYXR0YWNobWVudCkgY29uc3QKIHsKLSAgICBBdHRhY2htZW50TGF5b3V0IGxh
eW91dChhdHRhY2htZW50KTsKKyAgICBBdHRhY2htZW50TGF5b3V0IGxheW91dChhdHRhY2htZW50
LCBBdHRhY2htZW50TGF5b3V0U3R5bGU6Ok5vblNlbGVjdGVkKTsKICAgICByZXR1cm4gTGF5b3V0
U2l6ZShsYXlvdXQuYXR0YWNobWVudFJlY3Quc2l6ZSgpKTsKIH0KIAogaW50IFJlbmRlclRoZW1l
TWFjOjphdHRhY2htZW50QmFzZWxpbmUoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVu
dCkgY29uc3QKIHsKLSAgICBBdHRhY2htZW50TGF5b3V0IGxheW91dChhdHRhY2htZW50KTsKKyAg
ICBBdHRhY2htZW50TGF5b3V0IGxheW91dChhdHRhY2htZW50LCBBdHRhY2htZW50TGF5b3V0U3R5
bGU6Ok5vblNlbGVjdGVkKTsKICAgICByZXR1cm4gbGF5b3V0LmJhc2VsaW5lOwogfQogCiBzdGF0
aWMgdm9pZCBwYWludEF0dGFjaG1lbnRJY29uQmFja2dyb3VuZChjb25zdCBSZW5kZXJBdHRhY2ht
ZW50JiBhdHRhY2htZW50LCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIEF0dGFjaG1lbnRMYXlv
dXQmIGxheW91dCkKIHsKKyAgICBpZiAobGF5b3V0LnN0eWxlID09IEF0dGFjaG1lbnRMYXlvdXRT
dHlsZTo6Tm9uU2VsZWN0ZWQpCisgICAgICAgIHJldHVybjsKKwogICAgIC8vIEZJWE1FOiBGaW5k
ZXIgaGFzIGEgZGlzY29udGludW91cyBiZWhhdmlvciBoZXJlIHdoZW4geW91IGhhdmUgYSBiYWNr
Z3JvdW5kIGNvbG9yIG90aGVyIHRoYW4gd2hpdGUsCiAgICAgLy8gd2hlcmUgaXQgc3dpdGNoZXMg
aW50byAnYm9yZGVyZWQgbW9kZScgYW5kIHRoZSBib3JkZXIgcG9wcyBpbiBvbiB0b3Agb2YgdGhl
IGJhY2tncm91bmQuCiAgICAgYm9vbCBwYWludEJvcmRlciA9IHRydWU7CkBAIC0yODM0LDYgKzI4
NDEsOSBAQCBzdGF0aWMgdm9pZCBwYWludEF0dGFjaG1lbnRJY29uUGxhY2Vob2xkZXIoY29uc3Qg
UmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCwgRwogCiBzdGF0aWMgdm9pZCBwYWludEF0dGFj
aG1lbnRUaXRsZUJhY2tncm91bmQoY29uc3QgUmVuZGVyQXR0YWNobWVudCYgYXR0YWNobWVudCwg
R3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBBdHRhY2htZW50TGF5b3V0JiBsYXlvdXQpCiB7Cisg
ICAgaWYgKGxheW91dC5zdHlsZSA9PSBBdHRhY2htZW50TGF5b3V0U3R5bGU6Ok5vblNlbGVjdGVk
KQorICAgICAgICByZXR1cm47CisKICAgICBpZiAobGF5b3V0LmxpbmVzLmlzRW1wdHkoKSkKICAg
ICAgICAgcmV0dXJuOwogCkBAIC0yOTMyLDcgKzI5NDIsMTEgQEAgYm9vbCBSZW5kZXJUaGVtZU1h
Yzo6cGFpbnRBdHRhY2htZW50KGNvbnN0IFJlbmRlck9iamVjdCYgcmVuZGVyZXIsIGNvbnN0IFBh
aW50SW4KIAogICAgIGNvbnN0IFJlbmRlckF0dGFjaG1lbnQmIGF0dGFjaG1lbnQgPSBkb3duY2Fz
dDxSZW5kZXJBdHRhY2htZW50PihyZW5kZXJlcik7CiAKLSAgICBBdHRhY2htZW50TGF5b3V0IGxh
eW91dChhdHRhY2htZW50KTsKKyAgICBhdXRvIGxheW91dFN0eWxlID0gQXR0YWNobWVudExheW91
dFN0eWxlOjpOb25TZWxlY3RlZDsKKyAgICBpZiAoYXR0YWNobWVudC5zZWxlY3Rpb25TdGF0ZSgp
ICE9IFJlbmRlck9iamVjdDo6U2VsZWN0aW9uTm9uZSAmJiBwYWludEluZm8ucGhhc2UgIT0gUGFp
bnRQaGFzZTo6U2VsZWN0aW9uKQorICAgICAgICBsYXlvdXRTdHlsZSA9IEF0dGFjaG1lbnRMYXlv
dXRTdHlsZTo6U2VsZWN0ZWQ7CisKKyAgICBBdHRhY2htZW50TGF5b3V0IGxheW91dChhdHRhY2ht
ZW50LCBsYXlvdXRTdHlsZSk7CiAKICAgICBhdXRvJiBwcm9ncmVzc1N0cmluZyA9IGF0dGFjaG1l
bnQuYXR0YWNobWVudEVsZW1lbnQoKS5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKHBy
b2dyZXNzQXR0cik7CiAgICAgYm9vbCB2YWxpZFByb2dyZXNzID0gZmFsc2U7CkBAIC0yOTQ3LDE4
ICsyOTYxLDE1IEBAIGJvb2wgUmVuZGVyVGhlbWVNYWM6OnBhaW50QXR0YWNobWVudChjb25zdCBS
ZW5kZXJPYmplY3QmIHJlbmRlcmVyLCBjb25zdCBQYWludEluCiAgICAgY29udGV4dC50cmFuc2xh
dGUodG9GbG9hdFNpemUocGFpbnRSZWN0LmxvY2F0aW9uKCkpKTsKICAgICBjb250ZXh0LnRyYW5z
bGF0ZShmbG9vclNpemVUb0RldmljZVBpeGVscyhMYXlvdXRTaXplKChwYWludFJlY3Qud2lkdGgo
KSAtIGF0dGFjaG1lbnRJY29uQmFja2dyb3VuZFNpemUpIC8gMiwgMCksIHJlbmRlcmVyLmRvY3Vt
ZW50KCkuZGV2aWNlU2NhbGVGYWN0b3IoKSkpOwogCi0gICAgYm9vbCB1c2VTZWxlY3RlZFN0eWxl
ID0gYXR0YWNobWVudC5zZWxlY3Rpb25TdGF0ZSgpICE9IFJlbmRlck9iamVjdDo6U2VsZWN0aW9u
Tm9uZTsKICAgICBib29sIHVzZVBsYWNlaG9sZGVyID0gdmFsaWRQcm9ncmVzcyAmJiAhcHJvZ3Jl
c3M7CiAKLSAgICBpZiAodXNlU2VsZWN0ZWRTdHlsZSkKLSAgICAgICAgcGFpbnRBdHRhY2htZW50
SWNvbkJhY2tncm91bmQoYXR0YWNobWVudCwgY29udGV4dCwgbGF5b3V0KTsKKyAgICBwYWludEF0
dGFjaG1lbnRJY29uQmFja2dyb3VuZChhdHRhY2htZW50LCBjb250ZXh0LCBsYXlvdXQpOwogICAg
IGlmICh1c2VQbGFjZWhvbGRlcikKICAgICAgICAgcGFpbnRBdHRhY2htZW50SWNvblBsYWNlaG9s
ZGVyKGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91dCk7CiAgICAgZWxzZQogICAgICAgICBwYWlu
dEF0dGFjaG1lbnRJY29uKGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91dCk7CiAKLSAgICBpZiAo
dXNlU2VsZWN0ZWRTdHlsZSkKLSAgICAgICAgcGFpbnRBdHRhY2htZW50VGl0bGVCYWNrZ3JvdW5k
KGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91dCk7CisgICAgcGFpbnRBdHRhY2htZW50VGl0bGVC
YWNrZ3JvdW5kKGF0dGFjaG1lbnQsIGNvbnRleHQsIGxheW91dCk7CiAgICAgcGFpbnRBdHRhY2ht
ZW50VGl0bGUoYXR0YWNobWVudCwgY29udGV4dCwgbGF5b3V0KTsKICAgICBwYWludEF0dGFjaG1l
bnRTdWJ0aXRsZShhdHRhY2htZW50LCBjb250ZXh0LCBsYXlvdXQpOwogCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTMyMTQ5OWZlOTRlYzI1Y2M3
MTM3OTZkNmQ2MmI2OGIxMWZlYjVmZi4uY2RmNGExY2U1ZTZkOTA3OGY0YjMzMzgzMTg2ZTgyNjg3
MmMyZjkwZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE4IEBACisyMDE4LTA4LTIyICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNp
ZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtBdHRhY2htZW50IFN1cHBvcnRdIEF0dGFjaG1lbnQg
ZWxlbWVudHMgZG9uJ3QgYXBwZWFyIGluIGRyYWcgaW1hZ2VzIG9uIG1hY09TCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODg4MjMKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQzNjE2Mzc4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkanVzdHMgYSBjb3VwbGUgb2YgZXhpc3RpbmcgdGVzdHMgdG8gYWRk
aXRpb25hbGx5IHZlcmlmeSB0aGF0IHRoZSBkcmFnIGltYWdlIGdlbmVyYXRlZCB3aGVuIGRyYWdn
aW5nIGFuCisgICAgICAgIGF0dGFjaG1lbnQgZWxlbWVudCBpbiBtYWNPUyBpcyBub3QgY29tcGxl
dGVseSB0cmFuc3BhcmVudC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvV0tBdHRhY2htZW50VGVzdHMubW06CisgICAgICAgIChpc0NvbXBsZXRlbHlUcmFuc3Bh
cmVudCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKwogMjAxOC0wOC0yMiAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbQXR0YWNobWVu
dCBTdXBwb3J0XSBTdXBwb3J0IGRyYWdnaW5nIGF0dGFjaG1lbnQgZWxlbWVudHMgb3V0IGFzIGZp
bGVzIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1dLQXR0YWNobWVudFRlc3RzLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9XS0F0dGFjaG1lbnRUZXN0cy5tbQppbmRleCBmYjhkNTE1ZjA1ODgzZDdlZGMx
NDJkYzYwYjQ3ZjdlMDA2ZDIzODFmLi44YWFhMWRhNjAwNGZlMDU3NWUwNjRiYmRjZjcxODBiNjNk
ZDhhZmFhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1dLQXR0YWNobWVudFRlc3RzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvV0tBdHRhY2htZW50VGVzdHMubW0KQEAgLTM5NCw2ICszOTQsMjIgQEAgc3RhdGlj
IE5TRGF0YSAqdGVzdFBERkRhdGEoKQogCiAjcHJhZ21hIG1hcmsgLSBQbGF0Zm9ybSB0ZXN0aW5n
IGhlbHBlciBmdW5jdGlvbnMKIAorI2lmIFBMQVRGT1JNKE1BQykKKworQk9PTCBpc0NvbXBsZXRl
bHlUcmFuc3BhcmVudChOU0ltYWdlICppbWFnZSkKK3sKKyAgICBhdXRvIHJlcHJlc2VudGF0aW9u
ID0gYWRvcHROUyhbW05TQml0bWFwSW1hZ2VSZXAgYWxsb2NdIGluaXRXaXRoRGF0YTppbWFnZS5U
SUZGUmVwcmVzZW50YXRpb25dKTsKKyAgICBmb3IgKGludCByb3cgPSAwOyByb3cgPCBpbWFnZS5z
aXplLmhlaWdodDsgKytyb3cpIHsKKyAgICAgICAgZm9yIChpbnQgY29sdW1uID0gMDsgY29sdW1u
IDwgaW1hZ2Uuc2l6ZS53aWR0aDsgKytjb2x1bW4pIHsKKyAgICAgICAgICAgIGlmIChbcmVwcmVz
ZW50YXRpb24gY29sb3JBdFg6Y29sdW1uIHk6cm93XS5hbHBoYUNvbXBvbmVudCkKKyAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHRydWU7
Cit9CisKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oSU9TKQogCiB0eXBlZGVmIHZvaWQoXkl0ZW1Q
cm92aWRlckRhdGFMb2FkSGFuZGxlcikoTlNEYXRhICosIE5TRXJyb3IgKik7CkBAIC0xMTEyLDYg
KzExMjgsOSBAQCBURVNUKFdLQXR0YWNobWVudFRlc3RzLCBNb3ZlQXR0YWNobWVudEVsZW1lbnRB
c0ljb25CeURyYWdnaW5nKQogICAgIFthdHRhY2htZW50IGV4cGVjdFJlcXVlc3RlZERhdGFUb0Jl
OmRhdGEuZ2V0KCldOwogICAgIEVYUEVDVF9XS19TVFJFUSgiZG9jdW1lbnQucGRmIiwgW3dlYlZp
ZXcgdmFsdWVPZkF0dHJpYnV0ZTpAInRpdGxlIiBmb3JRdWVyeVNlbGVjdG9yOkAiYXR0YWNobWVu
dCJdKTsKICAgICBFWFBFQ1RfV0tfU1RSRVEoImFwcGxpY2F0aW9uL3BkZiIsIFt3ZWJWaWV3IHZh
bHVlT2ZBdHRyaWJ1dGU6QCJ0eXBlIiBmb3JRdWVyeVNlbGVjdG9yOkAiYXR0YWNobWVudCJdKTsK
KyNpZiBQTEFURk9STShNQUMpCisgICAgRVhQRUNUX0ZBTFNFKGlzQ29tcGxldGVseVRyYW5zcGFy
ZW50KFtzaW11bGF0b3IgZHJhZ2dpbmdJbmZvXS5kcmFnZ2VkSW1hZ2UpKTsKKyNlbmRpZgogCiAg
ICAgW3dlYlZpZXcgZXhwZWN0RWxlbWVudFRhZzpAIlNUUk9ORyIgdG9Db21lQmVmb3JlOkAiQVRU
QUNITUVOVCJdOwogICAgIFtzaW11bGF0b3IgZW5kRGF0YVRyYW5zZmVyXTsKQEAgLTEyMTAsNiAr
MTIyOSw3IEBAIFRFU1QoV0tBdHRhY2htZW50VGVzdHNNYWMsIERyYWdBdHRhY2htZW50QXNGaWxl
UHJvbWlzZSkKICAgICBOU0FycmF5PE5TVVJMICo+ICp1cmxzID0gW3NpbXVsYXRvciByZWNlaXZl
UHJvbWlzZWRGaWxlc107CiAgICAgRVhQRUNUX0VRKDFVLCB1cmxzLmNvdW50KTsKICAgICBFWFBF
Q1RfVFJVRShbW05TRGF0YSBkYXRhV2l0aENvbnRlbnRzT2ZVUkw6dXJscy5maXJzdE9iamVjdF0g
aXNFcXVhbFRvRGF0YTp0ZXN0UERGRGF0YSgpXSk7CisgICAgRVhQRUNUX0ZBTFNFKGlzQ29tcGxl
dGVseVRyYW5zcGFyZW50KFtzaW11bGF0b3IgZHJhZ2dpbmdJbmZvXS5kcmFnZ2VkSW1hZ2UpKTsK
IH0KIAogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykK
</data>

          </attachment>
      

    </bug>

</bugzilla>