<?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>167846</bug_id>
          
          <creation_ts>2017-02-04 17:11:27 -0800</creation_ts>
          <short_desc>Data interaction on an image should make it stand out when presenting the action sheet</short_desc>
          <delta_ts>2017-02-05 10:45:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1273326</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-02-04 17:11:27 -0800</bug_when>
    <thetext>Data interaction on an image should make it stand out when presenting the action sheet</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273327</commentid>
    <comment_count>1</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-02-04 17:12:06 -0800</bug_when>
    <thetext>&lt;rdar://problem/30363014&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273340</commentid>
    <comment_count>2</comment_count>
      <attachid>300655</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-02-04 18:24:20 -0800</bug_when>
    <thetext>Created attachment 300655
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273352</commentid>
    <comment_count>3</comment_count>
      <attachid>300660</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-02-04 22:42:50 -0800</bug_when>
    <thetext>Created attachment 300660
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273359</commentid>
    <comment_count>4</comment_count>
      <attachid>300660</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-04 23:21:22 -0800</bug_when>
    <thetext>Comment on attachment 300660
Patch for landing

Clearing flags on attachment: 300660

Committed r211679: &lt;http://trac.webkit.org/changeset/211679&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300655</attachid>
            <date>2017-02-04 18:24:20 -0800</date>
            <delta_ts>2017-02-04 22:23:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167846-20170204182202.patch</filename>
            <type>text/plain</type>
            <size>19860</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExNjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMzRjNWZmOWVkNjBiNTMx
NzYwMjU3OGIzZDdlNTdhMzE0YTBkNTFkZi4uNGRmODU3NDg1OWFmNmQxMDA1NWE5MTQ4MTA2Y2I2
ODQ3NzBiN2QzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE3LTAyLTA0ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIERhdGEgaW50ZXJh
Y3Rpb24gb24gYW4gaW1hZ2Ugc2hvdWxkIG1ha2UgaXQgc3RhbmQgb3V0IHdoZW4gcHJlc2VudGlu
ZyB0aGUgYWN0aW9uIHNoZWV0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjc4NDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMwMzYzMDE0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZHMgaW5mcmFz
dHJ1Y3R1cmUgdG8gaW1wcm92ZSB0aGUgYmVoYXZpb3Igb2YgZGF0YSBpbnRlcmFjdGlvbiBmb3Ig
aW1hZ2VzLiBXZSBtYWtlIHR3byBjaGFuZ2VzIHRvIGFjY29tcGxpc2gKKyAgICAgICAgdGhpczog
Zmlyc3QsIGFkZCBzb21lIHBsdW1iaW5nIHRvIFdlYktpdCBzbyB0aGUgd2ViIHByb2Nlc3MgY2Fu
IHRlbGwgdGhlIFVJIHByb2Nlc3Mgd2hlbiBpdCBpcyBkb25lIGhhbmRsaW5nIGEKKyAgICAgICAg
cmVxdWVzdCB0byBzdGFydCBkYXRhIGludGVyYWN0aW9uLCBzbyB0aGF0IHRoZSBVSSBwcm9jZXNz
IGlzIGFibGUgdG8gY2xlYW4gdXAgVUktc2lkZSBzdGF0ZSBpbiB0aGUgZXZlbnQgdGhhdAorICAg
ICAgICB0aGUgcGFnZSBwcmV2ZW50ZWQgdGhlIGRlZmF1bHQgYmVoYXZpb3IuCisKKyAgICAgICAg
U2Vjb25kbHksIHRoaXMgcGF0Y2ggdHdlYWtzIHRoZSBoZXVyaXN0aWMgdXNlZCB0byBwcmVzZW50
IGFjdGlvbiBzaGVldHMgYXMgcG9wb3ZlcnMuIEZvciBpbWFnZSBlbGVtZW50cywgaWYKKyAgICAg
ICAgdGhlcmUgaXMgc3VmZmljaWVudCBzcGFjZSBhcm91bmQgdGhlIGVsZW1lbnQsIHdlIHdpbGwg
dXNlIHRoZSBlbGVtZW50IHJlY3QgYXMgdGhlIHRhcmdldCByZWN0OyBvdGhlcndpc2UsIHdlCisg
ICAgICAgIGZhbGwgYmFjayB0byBwcmVzZW50aW5nIHRoZSBwb3BvdmVyIGF0IHRoZSB0b3VjaCBs
b2NhdGlvbi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlQ2xpZW50Lmg6CisgICAgICAgICog
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElP
Uy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW06CisgICAg
ICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkaWRIYW5kbGVTdGFydERhdGFJbnRlcmFjdGlv
blJlcXVlc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldC5oOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldC5tbToKKyAgICAgICAgKC1bV0tBY3Rp
b25TaGVldCBwcmVzZW50U2hlZXQ6XSk6CisKKyAgICAgICAgQWRkZWQgYSBwcmVzZW50YXRpb24g
c3R5bGUgcGFyYW1ldGVyLCB1c2VkIHRvIHNwZWNpZnkgd2hldGhlciBvciBub3QgV0tBY3Rpb25T
aGVldCBzaG91bGQgcHJlc2VudCB0aGUgcG9wb3ZlcgorICAgICAgICB1c2luZyB0aGUgZWxlbWVu
dCByZWN0IGFzIHRoZSB0YXJnZXQgcmVjdCwgb3IgdGhlIHRvdWNoIGxvY2F0aW9uLgorCisgICAg
ICAgICgtW1dLQWN0aW9uU2hlZXQgZG9uZVdpdGhTaGVldF0pOgorICAgICAgICAoLVtXS0FjdGlv
blNoZWV0IHVwZGF0ZVNoZWV0UG9zaXRpb25dKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldCBw
cmVzZW50U2hlZXRdKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQWN0aW9u
U2hlZXRBc3Npc3RhbnQubW06CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgcHJl
c2VudGF0aW9uUmVjdEZvckluZGljYXRlZEVsZW1lbnRdKToKKworICAgICAgICBSZXR1cm5zIHRo
ZSAoaW5mbGF0ZWQpIGJvdW5kcyBvZiB0aGUgZWxlbWVudCB0aGF0IGlzIGN1cnJlbnRseSBiZWlu
ZyBpbmRpY2F0ZWQuCisKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBzaG93SW1h
Z2VTaGVldF0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IF9wcmVzZW50YXRp
b25TdHlsZUZvckltYWdlQXRFbGVtZW50UmVjdDpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBzaG93TGlua1NoZWV0XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Np
c3RhbnQgc2hvd0RhdGFEZXRlY3RvcnNTaGVldF0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJQ
YWdlUHJveHlJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkSGFuZGxl
U3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1Bh
Z2VDbGllbnRJbXBsLmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9QYWdlQ2xpZW50SW1wbC5t
bToKKworICAgICAgICBSZW1vdmUgdW5uZWNlc3NhcnkgZnVuY3Rpb24gZGVjbGFyYXRpb25zIGFu
ZCBpbXBsZW1lbnRhdGlvbnMuCisKKyAgICAgICAgKFdlYktpdDo6UGFnZUNsaWVudEltcGw6OmRp
ZFBlcmZvcm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0aW9uKTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYktpdDo6UGFnZUNsaWVudEltcGw6OnN0YXJ0RGF0YUludGVyYWN0aW9uV2l0aElt
YWdlKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJ
T1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnJlcXVlc3RTdGFydERhdGFJbnRlcmFj
dGlvbik6CisKKyAgICAgICAgTm90aWZ5IHRoZSBVSSBwcm9jZXNzIHRoYXQgdGhlIHdlYiBwcm9j
ZXNzIGlzIGRvbmUgaGFuZGxpbmcgYSBkYXRhIGludGVyYWN0aW9uIHJlcXVlc3QsIHNwZWNpZnlp
bmcgd2hldGhlciBvcgorICAgICAgICBub3QgdGhlIHJlcXVlc3Qgd2FzIGdyYW50ZWQuCisKIDIw
MTctMDItMDMgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAg
ICAgV0tBY3Rpb25TaGVldCBzaG91bGQgZGlzbWlzcyB3aXRoIGFuaW1hdGlvbiB3aGVuIGRvbmUg
d2l0aCB0aGUgc2hlZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdl
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCmluZGV4IDEw
YTFjODZiZmExOTE5ZTJlODdkYWMxN2Y5ZWIzNDk0OTJmODRlYjcuLjA2ZDMzYzdiYmMwM2ZlMDgy
YjJiY2ZlOTJkNTM3N2Q4NDlmYmIxODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9QYWdlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VDbGll
bnQuaApAQCAtMzgzLDYgKzM4Myw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShEQVRBX0lOVEVS
QUNUSU9OKQogICAgIHZpcnR1YWwgdm9pZCBkaWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29udHJv
bGxlck9wZXJhdGlvbigpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkSGFuZGxlU3RhcnREYXRh
SW50ZXJhY3Rpb25SZXF1ZXN0KGJvb2wgc3RhcnRlZCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBz
dGFydERhdGFJbnRlcmFjdGlvbldpdGhJbWFnZShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgY2xp
ZW50UG9zaXRpb24sIGNvbnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJiBpbWFnZSwgY29uc3Qg
V2ViQ29yZTo6RmxvYXRQb2ludCYgYW5jaG9yUG9pbnQsIGJvb2wgaXNMaW5rKSA9IDA7CiAjZW5k
aWYKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggZDJlZjQw
YjEzOWE0NTI0OTE2YzUwYjEzOTg3OGJiNmFhN2Q1NWMzNi4uYTYzODE5MjAyYzQ4NmY1NGM3NDJj
NzZhZjAzNDc2MjNjOWY2ZDA5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaApAQCAtNTUzLDYgKzU1Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlcXVlc3RSZWN0c0F0
U2VsZWN0aW9uT2Zmc2V0V2l0aFRleHQoaW50MzJfdCBvZmZzZXQsIGNvbnN0IFN0cmluZyYsIHN0
ZDo6ZnVuY3Rpb248dm9pZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6U2VsZWN0aW9uUmVjdD4mLCBD
YWxsYmFja0Jhc2U6OkVycm9yKT4pOwogI2lmIEVOQUJMRShEQVRBX0lOVEVSQUNUSU9OKQogICAg
IHZvaWQgZGlkUGVyZm9ybURhdGFJbnRlcmFjdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24oKTsKKyAg
ICB2b2lkIGRpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9uUmVxdWVzdChib29sIHN0YXJ0ZWQp
OwogICAgIHZvaWQgcmVxdWVzdFN0YXJ0RGF0YUludGVyYWN0aW9uKGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JiBjbGllbnRQb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBv
c2l0aW9uKTsKICNlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgppbmRleCA5ZGYzMDI1NDJjZjk2MmM3OTE4YmE0NmM3
MTllZjdhODk2YTJkMGE4Li43OGMzOTc1ZDQ4MzNmMmQ0ZGFmNTU1MWQxOGFiNmQ3YjhjMDQyYTkx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2Fn
ZXMuaW4KQEAgLTMxOSw2ICszMTksNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogCiAj
aWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJT04pCiAgICAgRGlkUGVyZm9ybURhdGFJbnRlcmFjdGlv
bkNvbnRyb2xsZXJPcGVyYXRpb24oKQorICAgIERpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9u
UmVxdWVzdChib29sIHN0YXJ0ZWQpCiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oCmluZGV4
IGM0MDdlOGNiNGUyZjhkMTg1ZWIwMTRlNWQxNmUyODBkNTMxODJlNjUuLmY3MmI3NTI2OTc1NGRh
NGUwYzYxZTkzZTlmZGVlOGM5NjUwMTVhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmgKQEAgLTIwMyw2ICsyMDMsNyBAQCBwcml2YXRl
OgogCiAjaWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJT04pCiAgICAgdm9pZCBkaWRQZXJmb3JtRGF0
YUludGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgZGlk
SGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KGJvb2wgc3RhcnRlZCkgb3ZlcnJpZGU7
CiAgICAgdm9pZCBzdGFydERhdGFJbnRlcmFjdGlvbldpdGhJbWFnZShjb25zdCBXZWJDb3JlOjpJ
bnRQb2ludCYgY2xpZW50UG9zaXRpb24sIGNvbnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJiBp
bWFnZSwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgYW5jaG9yUG9pbnQsIGJvb2wgaXNMaW5r
KSBvdmVycmlkZTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9QYWdlQ2xpZW50SW1wbElPUy5tbQppbmRleCAxODMxMjUwNmU1YTI4ODIzMDA1MzU5N2Q5ODVm
NDU2NmFlZmI0Y2YwLi5iOTEwZDBkNjVmMmE4MDY5ZjJmYzFhZWY0NTUzOTViODMwODc2YjAxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9T
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1Mu
bW0KQEAgLTc2OCw2ICs3NjgsMTEgQEAgdm9pZCBQYWdlQ2xpZW50SW1wbDo6ZGlkUGVyZm9ybURh
dGFJbnRlcmFjdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24oKQogICAgIFttX2NvbnRlbnRWaWV3IF9k
aWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbl07CiB9CiAKK3ZvaWQg
UGFnZUNsaWVudEltcGw6OmRpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9uUmVxdWVzdChib29s
IHN0YXJ0ZWQpCit7CisgICAgW21fY29udGVudFZpZXcgX2RpZEhhbmRsZVN0YXJ0RGF0YUludGVy
YWN0aW9uUmVxdWVzdDpzdGFydGVkXTsKK30KKwogdm9pZCBQYWdlQ2xpZW50SW1wbDo6c3RhcnRE
YXRhSW50ZXJhY3Rpb25XaXRoSW1hZ2UoY29uc3QgSW50UG9pbnQmIGNsaWVudFBvc2l0aW9uLCBj
b25zdCBTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSYgaW1hZ2UsIGNvbnN0IEZsb2F0UG9pbnQmIGFu
Y2hvclBvaW50LCBib29sIGlzTGluaykKIHsKICAgICBbbV9jb250ZW50VmlldyBfc3RhcnREYXRh
SW50ZXJhY3Rpb25XaXRoSW1hZ2U6U2hhcmVhYmxlQml0bWFwOjpjcmVhdGUoaW1hZ2UpLT5tYWtl
Q0dJbWFnZUNvcHkoKSBhdENsaWVudFBvc2l0aW9uOkNHUG9pbnRNYWtlKGNsaWVudFBvc2l0aW9u
LngoKSwgY2xpZW50UG9zaXRpb24ueSgpKSBhbmNob3JQb2ludDphbmNob3JQb2ludCBpc0xpbms6
aXNMaW5rXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rp
b25TaGVldC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0LmgK
aW5kZXggMWEyYzA3YjQ2OTdkMGIyOTMzOGIyMjc0YjI4NmNlMWU1ZGU3ODFhNy4uMDVlZmFlMGQ0
YjE4ODA3MzA2OWQ0NGFlMTE5MmFjYWMxNjZjOTdlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0LmgKQEAgLTI4LDYgKzI4LDExIEBACiAjaW1wb3J0IDxV
SUtpdC9VSUFsZXJ0Q29udHJvbGxlci5oPgogI2ltcG9ydCA8VUlLaXQvVUlQb3BvdmVyQ29udHJv
bGxlci5oPgogCit0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBXS0FjdGlvblNoZWV0UHJlc2Vu
dGF0aW9uU3R5bGUpIHsKKyAgICBXS0FjdGlvblNoZWV0UHJlc2VudEF0VG91Y2hMb2NhdGlvbiwK
KyAgICBXS0FjdGlvblNoZWV0UHJlc2VudEF0RWxlbWVudFJlY3QKK307CisKIEBwcm90b2NvbCBX
S0FjdGlvblNoZWV0RGVsZWdhdGU7CiBAY2xhc3MgV0tDb250ZW50VmlldzsKIApAQCAtMzYsNyAr
NDEsNyBAQAogQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgaWQgPFdLQWN0aW9uU2hlZXRE
ZWxlZ2F0ZT4gc2hlZXREZWxlZ2F0ZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljKSBVSVBvcG92ZXJB
cnJvd0RpcmVjdGlvbiBhcnJvd0RpcmVjdGlvbnM7CiAtICh2b2lkKWRvbmVXaXRoU2hlZXQ7Ci0t
IChCT09MKXByZXNlbnRTaGVldDsKKy0gKEJPT0wpcHJlc2VudFNoZWV0OihXS0FjdGlvblNoZWV0
UHJlc2VudGF0aW9uU3R5bGUpc3R5bGU7CiAtIChCT09MKXByZXNlbnRTaGVldEZyb21SZWN0OihD
R1JlY3QpcHJlc2VudGF0aW9uUmVjdDsKIC0gKHZvaWQpdXBkYXRlU2hlZXRQb3NpdGlvbjsKIEBl
bmQKQEAgLTQ1LDYgKzUwLDcgQEAKIEByZXF1aXJlZAogLSAoVUlWaWV3ICopaG9zdFZpZXdGb3JT
aGVldDsKIC0gKENHUmVjdClpbml0aWFsUHJlc2VudGF0aW9uUmVjdEluSG9zdFZpZXdGb3JTaGVl
dDsKKy0gKENHUmVjdClwcmVzZW50YXRpb25SZWN0Rm9ySW5kaWNhdGVkRWxlbWVudDsKIC0gKENH
UmVjdClwcmVzZW50YXRpb25SZWN0SW5Ib3N0Vmlld0ZvclNoZWV0OwogLSAodm9pZCl1cGRhdGVQ
b3NpdGlvbkluZm9ybWF0aW9uOwogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9XS0FjdGlvblNoZWV0Lm1tCmluZGV4IDNjODI1MmQyYmE3NWIyYWViNWEwZjBhNzJiYmZiOTQ3
YzdlYmU0MjIuLmFhODk5ZDY3NjE4MGNlNmI3NDY2YmNhZWY3OTVkNTJkYzU3Mzg4NjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldC5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXQubW0KQEAgLTM3LDYg
KzM3LDcgQEAKICAgICBCT09MIF9pc1JvdGF0aW5nOwogICAgIEJPT0wgX3JlYWR5VG9QcmVzZW50
QWZ0ZXJSb3RhdGlvbjsKIAorICAgIFdLQWN0aW9uU2hlZXRQcmVzZW50YXRpb25TdHlsZSBfY3Vy
cmVudFByZXNlbnRhdGlvblN0eWxlOwogICAgIFJldGFpblB0cjxVSVZpZXdDb250cm9sbGVyPiBf
Y3VycmVudFByZXNlbnRpbmdWaWV3Q29udHJvbGxlcjsKICAgICBSZXRhaW5QdHI8VUlWaWV3Q29u
dHJvbGxlcj4gX3ByZXNlbnRlZFZpZXdDb250cm9sbGVyV2hpbGVSb3RhdGluZzsKICAgICBSZXRh
aW5QdHI8aWQgPFVJUG9wb3ZlclByZXNlbnRhdGlvbkNvbnRyb2xsZXJEZWxlZ2F0ZT4+IF9wb3Bv
dmVyUHJlc2VudGF0aW9uQ29udHJvbGxlckRlbGVnYXRlV2hpbGVSb3RhdGluZzsKQEAgLTcwLDE2
ICs3MSwxNyBAQAogCiAjcHJhZ21hIG1hcmsgLSBTaGVldCBwcmVzZW50YXRpb24gY29kZQogCi0t
IChCT09MKXByZXNlbnRTaGVldAorLSAoQk9PTClwcmVzZW50U2hlZXQ6KFdLQWN0aW9uU2hlZXRQ
cmVzZW50YXRpb25TdHlsZSlzdHlsZQogewogICAgIC8vIENhbGN1bGF0ZSB0aGUgcHJlc2VudGF0
aW9uIHJlY3QganVzdCBiZWZvcmUgc2hvd2luZy4KICAgICBDR1JlY3QgcHJlc2VudGF0aW9uUmVj
dCA9IENHUmVjdFplcm87CiAgICAgaWYgKFVJX1VTRVJfSU5URVJGQUNFX0lESU9NKCkgIT0gVUlV
c2VySW50ZXJmYWNlSWRpb21QaG9uZSkgewotICAgICAgICBwcmVzZW50YXRpb25SZWN0ID0gW19z
aGVldERlbGVnYXRlIGluaXRpYWxQcmVzZW50YXRpb25SZWN0SW5Ib3N0Vmlld0ZvclNoZWV0XTsK
KyAgICAgICAgcHJlc2VudGF0aW9uUmVjdCA9IHN0eWxlID09IFdLQWN0aW9uU2hlZXRQcmVzZW50
QXRFbGVtZW50UmVjdCA/IFtfc2hlZXREZWxlZ2F0ZSBwcmVzZW50YXRpb25SZWN0Rm9ySW5kaWNh
dGVkRWxlbWVudF0gOiBbX3NoZWV0RGVsZWdhdGUgaW5pdGlhbFByZXNlbnRhdGlvblJlY3RJbkhv
c3RWaWV3Rm9yU2hlZXRdOwogICAgICAgICBpZiAoQ0dSZWN0SXNFbXB0eShwcmVzZW50YXRpb25S
ZWN0KSkKICAgICAgICAgICAgIHJldHVybiBOTzsKICAgICB9CiAKKyAgICBfY3VycmVudFByZXNl
bnRhdGlvblN0eWxlID0gc3R5bGU7CiAgICAgcmV0dXJuIFtzZWxmIHByZXNlbnRTaGVldEZyb21S
ZWN0OnByZXNlbnRhdGlvblJlY3RdOwogfQogCkBAIC0xMTQsNiArMTE2LDcgQEAKICAgICBfY3Vy
cmVudFByZXNlbnRpbmdWaWV3Q29udHJvbGxlciA9IG5pbDsKICAgICBfcHJlc2VudGVkVmlld0Nv
bnRyb2xsZXJXaGlsZVJvdGF0aW5nID0gbmlsOwogICAgIF9wb3BvdmVyUHJlc2VudGF0aW9uQ29u
dHJvbGxlckRlbGVnYXRlV2hpbGVSb3RhdGluZyA9IG5pbDsKKyAgICBfY3VycmVudFByZXNlbnRh
dGlvblN0eWxlID0gV0tBY3Rpb25TaGVldFByZXNlbnRBdFRvdWNoTG9jYXRpb247CiAKICAgICBb
TlNPYmplY3QgY2FuY2VsUHJldmlvdXNQZXJmb3JtUmVxdWVzdHNXaXRoVGFyZ2V0OnNlbGYgc2Vs
ZWN0b3I6QHNlbGVjdG9yKF9kaWRSb3RhdGVBbmRMYXlvdXQpIG9iamVjdDpuaWxdOwogfQpAQCAt
MTkzLDcgKzE5Niw3IEBACiAgICAgaWYgKF9pc1JvdGF0aW5nIHx8ICFfcmVhZHlUb1ByZXNlbnRB
ZnRlclJvdGF0aW9uIHx8IGlzQmVpbmdQcmVzZW50ZWQpCiAgICAgICAgIHJldHVybjsKIAotICAg
IENHUmVjdCBwcmVzZW50YXRpb25SZWN0ID0gW19zaGVldERlbGVnYXRlIGluaXRpYWxQcmVzZW50
YXRpb25SZWN0SW5Ib3N0Vmlld0ZvclNoZWV0XTsKKyAgICBDR1JlY3QgcHJlc2VudGF0aW9uUmVj
dCA9IF9jdXJyZW50UHJlc2VudGF0aW9uU3R5bGUgPT0gV0tBY3Rpb25TaGVldFByZXNlbnRBdEVs
ZW1lbnRSZWN0ID8gW19zaGVldERlbGVnYXRlIHByZXNlbnRhdGlvblJlY3RGb3JJbmRpY2F0ZWRF
bGVtZW50XSA6IFtfc2hlZXREZWxlZ2F0ZSBpbml0aWFsUHJlc2VudGF0aW9uUmVjdEluSG9zdFZp
ZXdGb3JTaGVldF07CiAgICAgQk9PTCB3YXNQcmVzZW50ZWRWaWV3Q29udHJvbGxlck1vZGFsID0g
W19wcmVzZW50ZWRWaWV3Q29udHJvbGxlcldoaWxlUm90YXRpbmcgaXNNb2RhbEluUG9wb3Zlcl07
CiAKICAgICBpZiAoIUNHUmVjdElzRW1wdHkocHJlc2VudGF0aW9uUmVjdCkgfHwgd2FzUHJlc2Vu
dGVkVmlld0NvbnRyb2xsZXJNb2RhbCkgewpAQCAtMjA0LDcgKzIwNyw3IEBACiAgICAgICAgIGlm
ICghQ0dSZWN0SXNFbXB0eShpbnRlcnNlY3Rpb24pKQogICAgICAgICAgICAgW3NlbGYgcHJlc2Vu
dFNoZWV0RnJvbVJlY3Q6aW50ZXJzZWN0aW9uXTsKICAgICAgICAgZWxzZSBpZiAod2FzUHJlc2Vu
dGVkVmlld0NvbnRyb2xsZXJNb2RhbCkKLSAgICAgICAgICAgIFtzZWxmIHByZXNlbnRTaGVldF07
CisgICAgICAgICAgICBbc2VsZiBwcmVzZW50U2hlZXQ6X2N1cnJlbnRQcmVzZW50YXRpb25TdHls
ZV07CiAKICAgICAgICAgX3ByZXNlbnRlZFZpZXdDb250cm9sbGVyV2hpbGVSb3RhdGluZyA9IG5p
bDsKICAgICAgICAgX3BvcG92ZXJQcmVzZW50YXRpb25Db250cm9sbGVyRGVsZWdhdGVXaGlsZVJv
dGF0aW5nID0gbmlsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCmluZGV4IGI1YTFhMjAwY2VjYWUwYWYwODFjOTVhMWQz
MDY5ODBlMjJiOTlkMGUuLjMxNWQ3YjRkNzRhZDdjZWRjNjI1MTMxYTI3YzVkNzM5MTY5NWI0OWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFz
c2lzdGFudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hl
ZXRBc3Npc3RhbnQubW0KQEAgLTE1Miw2ICsxNTIsMTggQEAgc3RhdGljIExTQXBwTGluayAqYXBw
TGlua0ZvclVSTChOU1VSTCAqdXJsKQogICAgIHJldHVybiBbc2VsZiBzdXBlcnZpZXdGb3JTaGVl
dF07CiB9CiAKKy0gKENHUmVjdClwcmVzZW50YXRpb25SZWN0Rm9ySW5kaWNhdGVkRWxlbWVudAor
eworICAgIFVJVmlldyAqdmlldyA9IFtzZWxmIHN1cGVydmlld0ZvclNoZWV0XTsKKyAgICBhdXRv
IGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOworICAgIGlmICghdmlldyB8fCAhZGVsZWdhdGUp
CisgICAgICAgIHJldHVybiBDR1JlY3RaZXJvOworCisgICAgc3RhdGljIGNvbnN0IENHRmxvYXQg
cHJlc2VudGF0aW9uRWxlbWVudFJlY3RQYWRkaW5nID0gMTU7CisgICAgYXV0byBlbGVtZW50Qm91
bmRzID0gW2RlbGVnYXRlIHBvc2l0aW9uSW5mb3JtYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFu
dDpzZWxmXS5ib3VuZHM7CisgICAgcmV0dXJuIENHUmVjdEluc2V0KFt2aWV3IGNvbnZlcnRSZWN0
OmVsZW1lbnRCb3VuZHMgZnJvbVZpZXc6X3ZpZXddLCAtcHJlc2VudGF0aW9uRWxlbWVudFJlY3RQ
YWRkaW5nLCAtcHJlc2VudGF0aW9uRWxlbWVudFJlY3RQYWRkaW5nKTsKK30KKwogLSAoQ0dSZWN0
KWluaXRpYWxQcmVzZW50YXRpb25SZWN0SW5Ib3N0Vmlld0ZvclNoZWV0CiB7CiAgICAgVUlWaWV3
ICp2aWV3ID0gW3NlbGYgc3VwZXJ2aWV3Rm9yU2hlZXRdOwpAQCAtMjkzLDcgKzMwNSw4IEBAIHN0
YXRpYyBMU0FwcExpbmsgKmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKICAgICBjb25zdCBhdXRv
JiBwb3NpdGlvbkluZm9ybWF0aW9uID0gW2RlbGVnYXRlIHBvc2l0aW9uSW5mb3JtYXRpb25Gb3JB
Y3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXTsKIAogICAgIE5TVVJMICp0YXJnZXRVUkwgPSBbTlNV
UkwgX3dlYl9VUkxXaXRoV1RGU3RyaW5nOnBvc2l0aW9uSW5mb3JtYXRpb24udXJsXTsKLSAgICBh
dXRvIGVsZW1lbnRJbmZvID0gYWRvcHROUyhbW19XS0FjdGl2YXRlZEVsZW1lbnRJbmZvIGFsbG9j
XSBfaW5pdFdpdGhUeXBlOl9XS0FjdGl2YXRlZEVsZW1lbnRUeXBlSW1hZ2UgVVJMOnRhcmdldFVS
TCBsb2NhdGlvbjpwb3NpdGlvbkluZm9ybWF0aW9uLnJlcXVlc3QucG9pbnQgdGl0bGU6cG9zaXRp
b25JbmZvcm1hdGlvbi50aXRsZSBJRDpwb3NpdGlvbkluZm9ybWF0aW9uLmlkQXR0cmlidXRlIHJl
Y3Q6cG9zaXRpb25JbmZvcm1hdGlvbi5ib3VuZHMgaW1hZ2U6cG9zaXRpb25JbmZvcm1hdGlvbi5p
bWFnZS5nZXQoKV0pOworICAgIGF1dG8gZWxlbWVudEJvdW5kcyA9IHBvc2l0aW9uSW5mb3JtYXRp
b24uYm91bmRzOworICAgIGF1dG8gZWxlbWVudEluZm8gPSBhZG9wdE5TKFtbX1dLQWN0aXZhdGVk
RWxlbWVudEluZm8gYWxsb2NdIF9pbml0V2l0aFR5cGU6X1dLQWN0aXZhdGVkRWxlbWVudFR5cGVJ
bWFnZSBVUkw6dGFyZ2V0VVJMIGxvY2F0aW9uOnBvc2l0aW9uSW5mb3JtYXRpb24ucmVxdWVzdC5w
b2ludCB0aXRsZTpwb3NpdGlvbkluZm9ybWF0aW9uLnRpdGxlIElEOnBvc2l0aW9uSW5mb3JtYXRp
b24uaWRBdHRyaWJ1dGUgcmVjdDplbGVtZW50Qm91bmRzIGltYWdlOnBvc2l0aW9uSW5mb3JtYXRp
b24uaW1hZ2UuZ2V0KCldKTsKICAgICBpZiAoW2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpA
c2VsZWN0b3IoYWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2hvd0N1c3RvbVNoZWV0Rm9yRWxlbWVudDop
XSAmJiBbZGVsZWdhdGUgYWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZiBzaG93Q3VzdG9tU2hlZXRG
b3JFbGVtZW50OmVsZW1lbnRJbmZvLmdldCgpXSkKICAgICAgICAgcmV0dXJuOwogICAgIGF1dG8g
ZGVmYXVsdEFjdGlvbnMgPSBbc2VsZiBkZWZhdWx0QWN0aW9uc0ZvckltYWdlU2hlZXQ6ZWxlbWVu
dEluZm8uZ2V0KCldOwpAQCAtMzA5LDEwICszMjIsMzAgQEAgc3RhdGljIExTQXBwTGluayAqYXBw
TGlua0ZvclVSTChOU1VSTCAqdXJsKQogCiAgICAgX2VsZW1lbnRJbmZvID0gV1RGTW92ZShlbGVt
ZW50SW5mbyk7CiAKLSAgICBpZiAoIVtfaW50ZXJhY3Rpb25TaGVldCBwcmVzZW50U2hlZXRdKQor
ICAgIGlmICghW19pbnRlcmFjdGlvblNoZWV0IHByZXNlbnRTaGVldDpbc2VsZiBfcHJlc2VudGF0
aW9uU3R5bGVGb3JJbWFnZUF0RWxlbWVudFJlY3Q6ZWxlbWVudEJvdW5kc11dKQogICAgICAgICBb
c2VsZiBjbGVhbnVwU2hlZXRdOwogfQogCistIChXS0FjdGlvblNoZWV0UHJlc2VudGF0aW9uU3R5
bGUpX3ByZXNlbnRhdGlvblN0eWxlRm9ySW1hZ2VBdEVsZW1lbnRSZWN0OihDR1JlY3QpZWxlbWVu
dFJlY3QKK3sKKyAgICBhdXRvIGFwcGFyZW50RWxlbWVudFJlY3QgPSBbX3ZpZXcgY29udmVydFJl
Y3Q6ZWxlbWVudFJlY3QgdG9WaWV3Ol92aWV3LndpbmRvd107CisgICAgYXV0byB3aW5kb3dSZWN0
ID0gX3ZpZXcud2luZG93LmJvdW5kczsKKyAgICBhcHBhcmVudEVsZW1lbnRSZWN0ID0gQ0dSZWN0
SW50ZXJzZWN0aW9uKGFwcGFyZW50RWxlbWVudFJlY3QsIHdpbmRvd1JlY3QpOworCisgICAgYXV0
byBsZWZ0SW5zZXQgPSBDR1JlY3RHZXRNaW5YKGFwcGFyZW50RWxlbWVudFJlY3QpIC0gQ0dSZWN0
R2V0TWluWCh3aW5kb3dSZWN0KTsKKyAgICBhdXRvIHRvcEluc2V0ID0gQ0dSZWN0R2V0TWluWShh
cHBhcmVudEVsZW1lbnRSZWN0KSAtIENHUmVjdEdldE1pblkod2luZG93UmVjdCk7CisgICAgYXV0
byByaWdodEluc2V0ID0gQ0dSZWN0R2V0TWF4WCh3aW5kb3dSZWN0KSAtIENHUmVjdEdldE1heFgo
YXBwYXJlbnRFbGVtZW50UmVjdCk7CisgICAgYXV0byBib3R0b21JbnNldCA9IENHUmVjdEdldE1h
eFkod2luZG93UmVjdCkgLSBDR1JlY3RHZXRNYXhZKGFwcGFyZW50RWxlbWVudFJlY3QpOworCisg
ICAgLy8gSWYgYXQgbGVhc3QgdGhpcyBtdWNoIG9mIHRoZSB3aW5kb3cgaXMgYXZhaWxhYmxlIGZv
ciB0aGUgcG9wb3ZlciB0byBkcmF3IGluLCB0aGVuIHRhcmdldCB0aGUgZWxlbWVudCByZWN0IHdo
ZW4gcHJlc2VudGluZyB0aGUgYWN0aW9uIG1lbnUgcG9wb3Zlci4KKyAgICAvLyBPdGhlcndpc2Us
IHRoZXJlIGlzIG5vdCBlbm91Z2ggc3BhY2UgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgYXJvdW5k
IHRoZSBlbGVtZW50LCBzbyByZXZlcnQgdG8gdXNpbmcgdGhlIHRvdWNoIGxvY2F0aW9uIGluc3Rl
YWQuCisgICAgc3RhdGljIGNvbnN0IENHRmxvYXQgbWluaW11bUF2YWlsYWJsZVdpZHRoT3JIZWln
aHRSYXRpbyA9IDAuNDsKKyAgICBpZiAoc3RkOjptYXgobGVmdEluc2V0LCByaWdodEluc2V0KSA+
IG1pbmltdW1BdmFpbGFibGVXaWR0aE9ySGVpZ2h0UmF0aW8gKiBDR1JlY3RHZXRXaWR0aCh3aW5k
b3dSZWN0KSB8fCBzdGQ6Om1heCh0b3BJbnNldCwgYm90dG9tSW5zZXQpID4gbWluaW11bUF2YWls
YWJsZVdpZHRoT3JIZWlnaHRSYXRpbyAqIENHUmVjdEdldEhlaWdodCh3aW5kb3dSZWN0KSkKKyAg
ICAgICAgcmV0dXJuIFdLQWN0aW9uU2hlZXRQcmVzZW50QXRFbGVtZW50UmVjdDsKKworICAgIHJl
dHVybiBXS0FjdGlvblNoZWV0UHJlc2VudEF0VG91Y2hMb2NhdGlvbjsKK30KKwogLSAodm9pZClf
YXBwZW5kT3BlbkFjdGlvbnNGb3JVUkw6KE5TVVJMICopdXJsIGFjdGlvbnM6KE5TTXV0YWJsZUFy
cmF5ICopZGVmYXVsdEFjdGlvbnMgZWxlbWVudEluZm86KF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZv
ICopZWxlbWVudEluZm8KIHsKICNpZiBIQVZFKEFQUF9MSU5LUykKQEAgLTQyOCw3ICs0NjEsNyBA
QCBzdGF0aWMgTFNBcHBMaW5rICphcHBMaW5rRm9yVVJMKE5TVVJMICp1cmwpCiAKICAgICBfZWxl
bWVudEluZm8gPSBXVEZNb3ZlKGVsZW1lbnRJbmZvKTsKIAotICAgIGlmICghW19pbnRlcmFjdGlv
blNoZWV0IHByZXNlbnRTaGVldF0pCisgICAgaWYgKCFbX2ludGVyYWN0aW9uU2hlZXQgcHJlc2Vu
dFNoZWV0OldLQWN0aW9uU2hlZXRQcmVzZW50QXRUb3VjaExvY2F0aW9uXSkKICAgICAgICAgW3Nl
bGYgY2xlYW51cFNoZWV0XTsKIH0KIApAQCAtNDk0LDcgKzUyNyw3IEBAIHN0YXRpYyBMU0FwcExp
bmsgKmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKICAgICBpZiAoZWxlbWVudEFjdGlvbnMuY291
bnQgPD0gMSkKICAgICAgICAgX2ludGVyYWN0aW9uU2hlZXQuZ2V0KCkuYXJyb3dEaXJlY3Rpb25z
ID0gVUlQb3BvdmVyQXJyb3dEaXJlY3Rpb25VcCB8IFVJUG9wb3ZlckFycm93RGlyZWN0aW9uRG93
bjsKIAotICAgIGlmICghW19pbnRlcmFjdGlvblNoZWV0IHByZXNlbnRTaGVldF0pCisgICAgaWYg
KCFbX2ludGVyYWN0aW9uU2hlZXQgcHJlc2VudFNoZWV0OldLQWN0aW9uU2hlZXRQcmVzZW50QXRU
b3VjaExvY2F0aW9uXSkKICAgICAgICAgW3NlbGYgY2xlYW51cFNoZWV0XTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24uaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0
aW9uLmgKaW5kZXggNzZlNjU1MTAzOGVlZjI0YjMzZTZlODU2NDllZTQ1NzU3ZDM3MDI0Ny4uZTA1
NjRhZjNlMjJkOTA0OTNkZTI2YWNjOGQ2MWJhZjg5OGRhYTA5NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCkBA
IC0yNTIsNiArMjUyLDcgQEAgc3RydWN0IFdLQXV0b0NvcnJlY3Rpb25EYXRhIHsKIAogI2lmIEVO
QUJMRShEQVRBX0lOVEVSQUNUSU9OKQogLSAodm9pZClfZGlkUGVyZm9ybURhdGFJbnRlcmFjdGlv
bkNvbnRyb2xsZXJPcGVyYXRpb247CistICh2b2lkKV9kaWRIYW5kbGVTdGFydERhdGFJbnRlcmFj
dGlvblJlcXVlc3Q6KEJPT0wpc3RhcnRlZDsKIC0gKHZvaWQpX3N0YXJ0RGF0YUludGVyYWN0aW9u
V2l0aEltYWdlOihSZXRhaW5QdHI8Q0dJbWFnZVJlZj4paW1hZ2UgYXRDbGllbnRQb3NpdGlvbjoo
Q0dQb2ludCljbGllbnRQb3NpdGlvbiBhbmNob3JQb2ludDooQ0dQb2ludClhbmNob3JQb2ludCBp
c0xpbms6KEJPT0wpaXNMaW5rOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KaW5kZXggZTk3OTg1ZjhkMTc2MWYxNTM0NjdkZDBk
OTE0Y2Y3ODRjNGQ1OGUwYi4uZmI0Y2EwZDAzMmFmYTRmYmRmZThlYWQwNzVjNTk2YTA3MTVhZmIx
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJ
T1MubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1Mu
bW0KQEAgLTExMjEsNiArMTEyMSwxMSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUGVyZm9ybURh
dGFJbnRlcmFjdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24oKQogICAgIG1fcGFnZUNsaWVudC5kaWRQ
ZXJmb3JtRGF0YUludGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbigpOwogfQogCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KGJvb2wgc3Rh
cnRlZCkKK3sKKyAgICBtX3BhZ2VDbGllbnQuZGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25S
ZXF1ZXN0KHN0YXJ0ZWQpOworfQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFN0YXJ0RGF0
YUludGVyYWN0aW9uKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBjbGllbnRQb3NpdGlvbiwgY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uKQogewogICAgIGlmIChpc1ZhbGlk
KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJ
bXBsLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsLmgKaW5k
ZXggZmVlOWM1NDk0YTM4YWVkOTdlMTY5NWI4N2I1ZDdiNzgxYjhlYzExNy4uMGQyZGRhYTJjZGNk
N2I2NjA5NjljNmQ0M2NkOGRiMmUyOWZhYjE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL21hYy9QYWdlQ2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9tYWMvUGFnZUNsaWVudEltcGwuaApAQCAtMjMyLDExICsyMzIsNiBAQCBwcml2YXRlOgog
ICAgIF9XS1JlbW90ZU9iamVjdFJlZ2lzdHJ5ICpyZW1vdGVPYmplY3RSZWdpc3RyeSgpIG92ZXJy
aWRlOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKLSAgICB2b2lkIGRp
ZFBlcmZvcm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0aW9uKCkgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBzdGFydERhdGFJbnRlcmFjdGlvbldpdGhJbWFnZShjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYgY2xpZW50UG9zaXRpb24sIGNvbnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJiBpbWFn
ZSwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgYW5jaG9yUG9pbnQsIGJvb2wgaXNMaW5rKSBv
dmVycmlkZTsKLSNlbmRpZgotCiAgICAgTlNWaWV3ICptX3ZpZXc7CiAgICAgV0tXZWJWaWV3ICpt
X3dlYlZpZXc7CiAgICAgV2ViVmlld0ltcGwqIG1faW1wbCB7IG51bGxwdHIgfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvUGFnZUNsaWVudEltcGwubW0gYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsLm1tCmluZGV4IDE4ZmFmOWI1
ODg1ZDFhYjVjYzY5ZmI4YzdhY2Q0ZGJjYWIwZTUwODUuLmIwZTQ2NzYyNDFmY2FlN2UwMThkNzQz
MmQ2NzZlMGI2N2ZjNmFmNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9t
YWMvUGFnZUNsaWVudEltcGwubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9Q
YWdlQ2xpZW50SW1wbC5tbQpAQCAtODc1LDE4ICs4NzUsNiBAQCBib29sIFBhZ2VDbGllbnRJbXBs
Ojp3aW5kb3dJc0Zyb250V2luZG93VW5kZXJNb3VzZShjb25zdCBOYXRpdmVXZWJNb3VzZUV2ZW50
JiBldgogICAgIHJldHVybiBtX2ltcGwtPndpbmRvd0lzRnJvbnRXaW5kb3dVbmRlck1vdXNlKGV2
ZW50Lm5hdGl2ZUV2ZW50KCkpOwogfQogCi0jaWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJT04pCi12
b2lkIFBhZ2VDbGllbnRJbXBsOjpkaWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29udHJvbGxlck9w
ZXJhdGlvbigpCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBtZS4KLX0KLQotdm9pZCBQYWdl
Q2xpZW50SW1wbDo6c3RhcnREYXRhSW50ZXJhY3Rpb25XaXRoSW1hZ2UoY29uc3QgSW50UG9pbnQm
LCBjb25zdCBTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSYsIGNvbnN0IEZsb2F0UG9pbnQmLCBib29s
KQotewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbWUuCi19Ci0jZW5kaWYKLQogV2ViQ29yZTo6
VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiBQYWdlQ2xpZW50SW1wbDo6dXNlckludGVyZmFj
ZUxheW91dERpcmVjdGlvbigpCiB7CiAgICAgaWYgKCFtX3ZpZXcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggMmQ5NTA0
M2U3YTc4ZDM0ODBjMmJkZGY4OWNhYjUwMjI2NWIyYTE3ZS4uOTlmN2I5MGM2MmQxMTJjMWRiMDRk
MDM3ZTJiODQ3YjkzMDY1MmVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQpAQCAtNjI1LDcgKzYyNSw4IEBAIHZvaWQgV2Vi
UGFnZTo6aGFuZGxlVGFwKGNvbnN0IEludFBvaW50JiBwb2ludCwgdWludDY0X3QgbGFzdExheWVy
VHJlZVRyYW5zYWN0aW9uCiAjaWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJT04pCiB2b2lkIFdlYlBh
Z2U6OnJlcXVlc3RTdGFydERhdGFJbnRlcmFjdGlvbihjb25zdCBJbnRQb2ludCYgY2xpZW50UG9z
aXRpb24sIGNvbnN0IEludFBvaW50JiBnbG9iYWxQb3NpdGlvbikKIHsKLSAgICBtX3BhZ2UtPm1h
aW5GcmFtZSgpLmV2ZW50SGFuZGxlcigpLnRyeVRvQmVnaW5EYXRhSW50ZXJhY3Rpb25BdFBvaW50
KGNsaWVudFBvc2l0aW9uLCBnbG9iYWxQb3NpdGlvbik7CisgICAgYm9vbCBkaWRTdGFydCA9IG1f
cGFnZS0+bWFpbkZyYW1lKCkuZXZlbnRIYW5kbGVyKCkudHJ5VG9CZWdpbkRhdGFJbnRlcmFjdGlv
bkF0UG9pbnQoY2xpZW50UG9zaXRpb24sIGdsb2JhbFBvc2l0aW9uKTsKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkRpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9uUmVxdWVzdChk
aWRTdGFydCkpOwogfQogI2VuZGlmCiAK
</data>
<flag name="review"
          id="322512"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300660</attachid>
            <date>2017-02-04 22:42:50 -0800</date>
            <delta_ts>2017-02-04 23:21:22 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-167846-20170204224031.patch</filename>
            <type>text/plain</type>
            <size>19856</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExNjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMzRjNWZmOWVkNjBiNTMx
NzYwMjU3OGIzZDdlNTdhMzE0YTBkNTFkZi4uZTI0YmI3M2ExYWUzMmM4Y2Q0ZGYwOGM4ZjdhMzg4
MDJiMzU3OTUxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE3LTAyLTA0ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIERhdGEgaW50ZXJh
Y3Rpb24gb24gYW4gaW1hZ2Ugc2hvdWxkIG1ha2UgaXQgc3RhbmQgb3V0IHdoZW4gcHJlc2VudGlu
ZyB0aGUgYWN0aW9uIHNoZWV0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjc4NDYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMwMzYzMDE0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgQWRkcyBpbmZyYXN0cnVj
dHVyZSB0byBpbXByb3ZlIHRoZSBiZWhhdmlvciBvZiBkYXRhIGludGVyYWN0aW9uIGZvciBpbWFn
ZXMuIFdlIG1ha2UgdHdvIGNoYW5nZXMgdG8gYWNjb21wbGlzaAorICAgICAgICB0aGlzOiBmaXJz
dCwgYWRkIHNvbWUgcGx1bWJpbmcgdG8gV2ViS2l0IHNvIHRoZSB3ZWIgcHJvY2VzcyBjYW4gdGVs
bCB0aGUgVUkgcHJvY2VzcyB3aGVuIGl0IGlzIGRvbmUgaGFuZGxpbmcgYQorICAgICAgICByZXF1
ZXN0IHRvIHN0YXJ0IGRhdGEgaW50ZXJhY3Rpb24sIHNvIHRoYXQgdGhlIFVJIHByb2Nlc3MgaXMg
YWJsZSB0byBjbGVhbiB1cCBVSS1zaWRlIHN0YXRlIGluIHRoZSBldmVudCB0aGF0CisgICAgICAg
IHRoZSBwYWdlIHByZXZlbnRlZCB0aGUgZGVmYXVsdCBiZWhhdmlvci4KKworICAgICAgICBTZWNv
bmRseSwgdGhpcyBwYXRjaCB0d2Vha3MgdGhlIGhldXJpc3RpYyB1c2VkIHRvIHByZXNlbnQgYWN0
aW9uIHNoZWV0cyBhcyBwb3BvdmVycy4gRm9yIGltYWdlIGVsZW1lbnRzLCBpZgorICAgICAgICB0
aGVyZSBpcyBzdWZmaWNpZW50IHNwYWNlIGFyb3VuZCB0aGUgZWxlbWVudCwgd2Ugd2lsbCB1c2Ug
dGhlIGVsZW1lbnQgcmVjdCBhcyB0aGUgdGFyZ2V0IHJlY3Q7IG90aGVyd2lzZSwgd2UKKyAgICAg
ICAgZmFsbCBiYWNrIHRvIHByZXNlbnRpbmcgdGhlIHBvcG92ZXIgYXQgdGhlIHRvdWNoIGxvY2F0
aW9uLgorCisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmg6
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbToKKyAgICAgICAg
KFdlYktpdDo6UGFnZUNsaWVudEltcGw6OmRpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9uUmVx
dWVzdCk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lmg6CisgICAgICAg
ICogVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lm1tOgorICAgICAgICAoLVtXS0FjdGlvblNo
ZWV0IHByZXNlbnRTaGVldDpdKToKKworICAgICAgICBBZGRlZCBhIHByZXNlbnRhdGlvbiBzdHls
ZSBwYXJhbWV0ZXIsIHVzZWQgdG8gc3BlY2lmeSB3aGV0aGVyIG9yIG5vdCBXS0FjdGlvblNoZWV0
IHNob3VsZCBwcmVzZW50IHRoZSBwb3BvdmVyCisgICAgICAgIHVzaW5nIHRoZSBlbGVtZW50IHJl
Y3QgYXMgdGhlIHRhcmdldCByZWN0LCBvciB0aGUgdG91Y2ggbG9jYXRpb24uCisKKyAgICAgICAg
KC1bV0tBY3Rpb25TaGVldCBkb25lV2l0aFNoZWV0XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hl
ZXQgdXBkYXRlU2hlZXRQb3NpdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0IHByZXNl
bnRTaGVldF0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBwcmVzZW50
YXRpb25SZWN0Rm9ySW5kaWNhdGVkRWxlbWVudF0pOgorCisgICAgICAgIFJldHVybnMgdGhlIChp
bmZsYXRlZCkgYm91bmRzIG9mIHRoZSBlbGVtZW50IHRoYXQgaXMgY3VycmVudGx5IGJlaW5nIGlu
ZGljYXRlZC4KKworICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IHNob3dJbWFnZVNo
ZWV0XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX3ByZXNlbnRhdGlvblN0
eWxlRm9ySW1hZ2VBdEVsZW1lbnRSZWN0Ol0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dMaW5rU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFu
dCBzaG93RGF0YURldGVjdG9yc1NoZWV0XSk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24uaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlBhZ2VQ
cm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRIYW5kbGVTdGFy
dERhdGFJbnRlcmFjdGlvblJlcXVlc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvUGFnZUNs
aWVudEltcGwuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsLm1tOgor
CisgICAgICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBmdW5jdGlvbiBkZWNsYXJhdGlvbnMgYW5kIGlt
cGxlbWVudGF0aW9ucy4KKworICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6ZGlkUGVy
Zm9ybURhdGFJbnRlcmFjdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24pOiBEZWxldGVkLgorICAgICAg
ICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6c3RhcnREYXRhSW50ZXJhY3Rpb25XaXRoSW1hZ2Up
OiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5t
bToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVxdWVzdFN0YXJ0RGF0YUludGVyYWN0aW9u
KToKKworICAgICAgICBOb3RpZnkgdGhlIFVJIHByb2Nlc3MgdGhhdCB0aGUgd2ViIHByb2Nlc3Mg
aXMgZG9uZSBoYW5kbGluZyBhIGRhdGEgaW50ZXJhY3Rpb24gcmVxdWVzdCwgc3BlY2lmeWluZyB3
aGV0aGVyIG9yCisgICAgICAgIG5vdCB0aGUgcmVxdWVzdCB3YXMgZ3JhbnRlZC4KKwogMjAxNy0w
Mi0wMyAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBX
S0FjdGlvblNoZWV0IHNob3VsZCBkaXNtaXNzIHdpdGggYW5pbWF0aW9uIHdoZW4gZG9uZSB3aXRo
IHRoZSBzaGVldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VDbGll
bnQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXggMTBhMWM4
NmJmYTE5MTllMmU4N2RhYzE3ZjllYjM0OTQ5MmY4NGViNy4uMDZkMzNjN2JiYzAzZmUwODJiMmJj
ZmU5MmQ1Mzc3ZDg0OWZiYjE4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1BhZ2VDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5o
CkBAIC0zODMsNiArMzgzLDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJ
T04pCiAgICAgdmlydHVhbCB2b2lkIGRpZFBlcmZvcm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVy
T3BlcmF0aW9uKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaWRIYW5kbGVTdGFydERhdGFJbnRl
cmFjdGlvblJlcXVlc3QoYm9vbCBzdGFydGVkKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0
RGF0YUludGVyYWN0aW9uV2l0aEltYWdlKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBjbGllbnRQ
b3NpdGlvbiwgY29uc3QgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUmIGltYWdlLCBjb25zdCBXZWJD
b3JlOjpGbG9hdFBvaW50JiBhbmNob3JQb2ludCwgYm9vbCBpc0xpbmspID0gMDsKICNlbmRpZgog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBkMmVmNDBiMTM5
YTQ1MjQ5MTZjNTBiMTM5ODc4YmI2YWE3ZDU1YzM2Li5hNjM4MTkyMDJjNDg2ZjU0Yzc0MmM3NmFm
MDM0NzYyM2M5ZjZkMDk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CkBAIC01NTMsNiArNTUzLDcgQEAgcHVibGljOgogICAgIHZvaWQgcmVxdWVzdFJlY3RzQXRTZWxl
Y3Rpb25PZmZzZXRXaXRoVGV4dChpbnQzMl90IG9mZnNldCwgY29uc3QgU3RyaW5nJiwgc3RkOjpm
dW5jdGlvbjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYsIENhbGxi
YWNrQmFzZTo6RXJyb3IpPik7CiAjaWYgRU5BQkxFKERBVEFfSU5URVJBQ1RJT04pCiAgICAgdm9p
ZCBkaWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbigpOworICAgIHZv
aWQgZGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KGJvb2wgc3RhcnRlZCk7CiAg
ICAgdm9pZCByZXF1ZXN0U3RhcnREYXRhSW50ZXJhY3Rpb24oY29uc3QgV2ViQ29yZTo6SW50UG9p
bnQmIGNsaWVudFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgZ2xvYmFsUG9zaXRp
b24pOwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDlkZjMwMjU0MmNmOTYyYzc5MThiYTQ2YzcxOWVm
N2E4OTZhMmQwYTguLjc4YzM5NzVkNDgzM2YyZDRkYWY1NTUxZDE4YWI2ZDdiOGMwNDJhOTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5p
bgpAQCAtMzE5LDYgKzMxOSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAKICNpZiBF
TkFCTEUoREFUQV9JTlRFUkFDVElPTikKICAgICBEaWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29u
dHJvbGxlck9wZXJhdGlvbigpCisgICAgRGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1
ZXN0KGJvb2wgc3RhcnRlZCkKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmgKaW5kZXggYzQw
N2U4Y2I0ZTJmOGQxODVlYjAxNGU1ZDE2ZTI4MGQ1MzE4MmU2NS4uZjcyYjc1MjY5NzU0ZGE0ZTBj
NjFlOTNlOWZkZWU4Yzk2NTAxNWExYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaApAQCAtMjAzLDYgKzIwMyw3IEBAIHByaXZhdGU6CiAK
ICNpZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKICAgICB2b2lkIGRpZFBlcmZvcm1EYXRhSW50
ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRIYW5k
bGVTdGFydERhdGFJbnRlcmFjdGlvblJlcXVlc3QoYm9vbCBzdGFydGVkKSBvdmVycmlkZTsKICAg
ICB2b2lkIHN0YXJ0RGF0YUludGVyYWN0aW9uV2l0aEltYWdlKGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiBjbGllbnRQb3NpdGlvbiwgY29uc3QgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUmIGltYWdl
LCBjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiBhbmNob3JQb2ludCwgYm9vbCBpc0xpbmspIG92
ZXJyaWRlOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvUGFnZUNsaWVudEltcGxJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1Bh
Z2VDbGllbnRJbXBsSU9TLm1tCmluZGV4IDE4MzEyNTA2ZTVhMjg4MjMwMDUzNTk3ZDk4NWY0NTY2
YWVmYjRjZjAuLmI5MTBkMGQ2NWYyYTgwNjlmMmZjMWFlZjQ1NTM5NWI4MzA4NzZiMDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW0K
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQpA
QCAtNzY4LDYgKzc2OCwxMSBAQCB2b2lkIFBhZ2VDbGllbnRJbXBsOjpkaWRQZXJmb3JtRGF0YUlu
dGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbigpCiAgICAgW21fY29udGVudFZpZXcgX2RpZFBl
cmZvcm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0aW9uXTsKIH0KIAordm9pZCBQYWdl
Q2xpZW50SW1wbDo6ZGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KGJvb2wgc3Rh
cnRlZCkKK3sKKyAgICBbbV9jb250ZW50VmlldyBfZGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rp
b25SZXF1ZXN0OnN0YXJ0ZWRdOworfQorCiB2b2lkIFBhZ2VDbGllbnRJbXBsOjpzdGFydERhdGFJ
bnRlcmFjdGlvbldpdGhJbWFnZShjb25zdCBJbnRQb2ludCYgY2xpZW50UG9zaXRpb24sIGNvbnN0
IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJiBpbWFnZSwgY29uc3QgRmxvYXRQb2ludCYgYW5jaG9y
UG9pbnQsIGJvb2wgaXNMaW5rKQogewogICAgIFttX2NvbnRlbnRWaWV3IF9zdGFydERhdGFJbnRl
cmFjdGlvbldpdGhJbWFnZTpTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZShpbWFnZSktPm1ha2VDR0lt
YWdlQ29weSgpIGF0Q2xpZW50UG9zaXRpb246Q0dQb2ludE1ha2UoY2xpZW50UG9zaXRpb24ueCgp
LCBjbGllbnRQb3NpdGlvbi55KCkpIGFuY2hvclBvaW50OmFuY2hvclBvaW50IGlzTGluazppc0xp
bmtdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNo
ZWV0LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXQuaAppbmRl
eCAxYTJjMDdiNDY5N2QwYjI5MzM4YjIyNzRiMjg2Y2UxZTVkZTc4MWE3Li4wNWVmYWUwZDRiMTg4
MDczMDY5ZDQ0YWUxMTkyYWNhYzE2NmM5N2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dLQWN0aW9uU2hlZXQuaApAQCAtMjgsNiArMjgsMTEgQEAKICNpbXBvcnQgPFVJS2l0
L1VJQWxlcnRDb250cm9sbGVyLmg+CiAjaW1wb3J0IDxVSUtpdC9VSVBvcG92ZXJDb250cm9sbGVy
Lmg+CiAKK3R5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIFdLQWN0aW9uU2hlZXRQcmVzZW50YXRp
b25TdHlsZSkgeworICAgIFdLQWN0aW9uU2hlZXRQcmVzZW50QXRUb3VjaExvY2F0aW9uLAorICAg
IFdLQWN0aW9uU2hlZXRQcmVzZW50QXRFbGVtZW50UmVjdAorfTsKKwogQHByb3RvY29sIFdLQWN0
aW9uU2hlZXREZWxlZ2F0ZTsKIEBjbGFzcyBXS0NvbnRlbnRWaWV3OwogCkBAIC0zNiw3ICs0MSw3
IEBACiBAcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBpZCA8V0tBY3Rpb25TaGVldERlbGVn
YXRlPiBzaGVldERlbGVnYXRlOwogQHByb3BlcnR5IChub25hdG9taWMpIFVJUG9wb3ZlckFycm93
RGlyZWN0aW9uIGFycm93RGlyZWN0aW9uczsKIC0gKHZvaWQpZG9uZVdpdGhTaGVldDsKLS0gKEJP
T0wpcHJlc2VudFNoZWV0OworLSAoQk9PTClwcmVzZW50U2hlZXQ6KFdLQWN0aW9uU2hlZXRQcmVz
ZW50YXRpb25TdHlsZSlzdHlsZTsKIC0gKEJPT0wpcHJlc2VudFNoZWV0RnJvbVJlY3Q6KENHUmVj
dClwcmVzZW50YXRpb25SZWN0OwogLSAodm9pZCl1cGRhdGVTaGVldFBvc2l0aW9uOwogQGVuZApA
QCAtNDUsNiArNTAsNyBAQAogQHJlcXVpcmVkCiAtIChVSVZpZXcgKilob3N0Vmlld0ZvclNoZWV0
OwogLSAoQ0dSZWN0KWluaXRpYWxQcmVzZW50YXRpb25SZWN0SW5Ib3N0Vmlld0ZvclNoZWV0Owor
LSAoQ0dSZWN0KXByZXNlbnRhdGlvblJlY3RGb3JJbmRpY2F0ZWRFbGVtZW50OwogLSAoQ0dSZWN0
KXByZXNlbnRhdGlvblJlY3RJbkhvc3RWaWV3Rm9yU2hlZXQ7CiAtICh2b2lkKXVwZGF0ZVBvc2l0
aW9uSW5mb3JtYXRpb247CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dLQWN0aW9uU2hlZXQubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dL
QWN0aW9uU2hlZXQubW0KaW5kZXggM2M4MjUyZDJiYTc1YjJhZWI1YTBmMGE3MmJiZmI5NDdjN2Vi
ZTQyMi4uYWE4OTlkNjc2MTgwY2U2Yjc0NjZiY2FlZjc5NWQ1MmRjNTczODg2MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldC5tbQpAQCAtMzcsNiArMzcs
NyBAQAogICAgIEJPT0wgX2lzUm90YXRpbmc7CiAgICAgQk9PTCBfcmVhZHlUb1ByZXNlbnRBZnRl
clJvdGF0aW9uOwogCisgICAgV0tBY3Rpb25TaGVldFByZXNlbnRhdGlvblN0eWxlIF9jdXJyZW50
UHJlc2VudGF0aW9uU3R5bGU7CiAgICAgUmV0YWluUHRyPFVJVmlld0NvbnRyb2xsZXI+IF9jdXJy
ZW50UHJlc2VudGluZ1ZpZXdDb250cm9sbGVyOwogICAgIFJldGFpblB0cjxVSVZpZXdDb250cm9s
bGVyPiBfcHJlc2VudGVkVmlld0NvbnRyb2xsZXJXaGlsZVJvdGF0aW5nOwogICAgIFJldGFpblB0
cjxpZCA8VUlQb3BvdmVyUHJlc2VudGF0aW9uQ29udHJvbGxlckRlbGVnYXRlPj4gX3BvcG92ZXJQ
cmVzZW50YXRpb25Db250cm9sbGVyRGVsZWdhdGVXaGlsZVJvdGF0aW5nOwpAQCAtNzAsMTYgKzcx
LDE3IEBACiAKICNwcmFnbWEgbWFyayAtIFNoZWV0IHByZXNlbnRhdGlvbiBjb2RlCiAKLS0gKEJP
T0wpcHJlc2VudFNoZWV0CistIChCT09MKXByZXNlbnRTaGVldDooV0tBY3Rpb25TaGVldFByZXNl
bnRhdGlvblN0eWxlKXN0eWxlCiB7CiAgICAgLy8gQ2FsY3VsYXRlIHRoZSBwcmVzZW50YXRpb24g
cmVjdCBqdXN0IGJlZm9yZSBzaG93aW5nLgogICAgIENHUmVjdCBwcmVzZW50YXRpb25SZWN0ID0g
Q0dSZWN0WmVybzsKICAgICBpZiAoVUlfVVNFUl9JTlRFUkZBQ0VfSURJT00oKSAhPSBVSVVzZXJJ
bnRlcmZhY2VJZGlvbVBob25lKSB7Ci0gICAgICAgIHByZXNlbnRhdGlvblJlY3QgPSBbX3NoZWV0
RGVsZWdhdGUgaW5pdGlhbFByZXNlbnRhdGlvblJlY3RJbkhvc3RWaWV3Rm9yU2hlZXRdOworICAg
ICAgICBwcmVzZW50YXRpb25SZWN0ID0gc3R5bGUgPT0gV0tBY3Rpb25TaGVldFByZXNlbnRBdEVs
ZW1lbnRSZWN0ID8gW19zaGVldERlbGVnYXRlIHByZXNlbnRhdGlvblJlY3RGb3JJbmRpY2F0ZWRF
bGVtZW50XSA6IFtfc2hlZXREZWxlZ2F0ZSBpbml0aWFsUHJlc2VudGF0aW9uUmVjdEluSG9zdFZp
ZXdGb3JTaGVldF07CiAgICAgICAgIGlmIChDR1JlY3RJc0VtcHR5KHByZXNlbnRhdGlvblJlY3Qp
KQogICAgICAgICAgICAgcmV0dXJuIE5POwogICAgIH0KIAorICAgIF9jdXJyZW50UHJlc2VudGF0
aW9uU3R5bGUgPSBzdHlsZTsKICAgICByZXR1cm4gW3NlbGYgcHJlc2VudFNoZWV0RnJvbVJlY3Q6
cHJlc2VudGF0aW9uUmVjdF07CiB9CiAKQEAgLTExNCw2ICsxMTYsNyBAQAogICAgIF9jdXJyZW50
UHJlc2VudGluZ1ZpZXdDb250cm9sbGVyID0gbmlsOwogICAgIF9wcmVzZW50ZWRWaWV3Q29udHJv
bGxlcldoaWxlUm90YXRpbmcgPSBuaWw7CiAgICAgX3BvcG92ZXJQcmVzZW50YXRpb25Db250cm9s
bGVyRGVsZWdhdGVXaGlsZVJvdGF0aW5nID0gbmlsOworICAgIF9jdXJyZW50UHJlc2VudGF0aW9u
U3R5bGUgPSBXS0FjdGlvblNoZWV0UHJlc2VudEF0VG91Y2hMb2NhdGlvbjsKIAogICAgIFtOU09i
amVjdCBjYW5jZWxQcmV2aW91c1BlcmZvcm1SZXF1ZXN0c1dpdGhUYXJnZXQ6c2VsZiBzZWxlY3Rv
cjpAc2VsZWN0b3IoX2RpZFJvdGF0ZUFuZExheW91dCkgb2JqZWN0Om5pbF07CiB9CkBAIC0xOTMs
NyArMTk2LDcgQEAKICAgICBpZiAoX2lzUm90YXRpbmcgfHwgIV9yZWFkeVRvUHJlc2VudEFmdGVy
Um90YXRpb24gfHwgaXNCZWluZ1ByZXNlbnRlZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgQ0dS
ZWN0IHByZXNlbnRhdGlvblJlY3QgPSBbX3NoZWV0RGVsZWdhdGUgaW5pdGlhbFByZXNlbnRhdGlv
blJlY3RJbkhvc3RWaWV3Rm9yU2hlZXRdOworICAgIENHUmVjdCBwcmVzZW50YXRpb25SZWN0ID0g
X2N1cnJlbnRQcmVzZW50YXRpb25TdHlsZSA9PSBXS0FjdGlvblNoZWV0UHJlc2VudEF0RWxlbWVu
dFJlY3QgPyBbX3NoZWV0RGVsZWdhdGUgcHJlc2VudGF0aW9uUmVjdEZvckluZGljYXRlZEVsZW1l
bnRdIDogW19zaGVldERlbGVnYXRlIGluaXRpYWxQcmVzZW50YXRpb25SZWN0SW5Ib3N0Vmlld0Zv
clNoZWV0XTsKICAgICBCT09MIHdhc1ByZXNlbnRlZFZpZXdDb250cm9sbGVyTW9kYWwgPSBbX3By
ZXNlbnRlZFZpZXdDb250cm9sbGVyV2hpbGVSb3RhdGluZyBpc01vZGFsSW5Qb3BvdmVyXTsKIAog
ICAgIGlmICghQ0dSZWN0SXNFbXB0eShwcmVzZW50YXRpb25SZWN0KSB8fCB3YXNQcmVzZW50ZWRW
aWV3Q29udHJvbGxlck1vZGFsKSB7CkBAIC0yMDQsNyArMjA3LDcgQEAKICAgICAgICAgaWYgKCFD
R1JlY3RJc0VtcHR5KGludGVyc2VjdGlvbikpCiAgICAgICAgICAgICBbc2VsZiBwcmVzZW50U2hl
ZXRGcm9tUmVjdDppbnRlcnNlY3Rpb25dOwogICAgICAgICBlbHNlIGlmICh3YXNQcmVzZW50ZWRW
aWV3Q29udHJvbGxlck1vZGFsKQotICAgICAgICAgICAgW3NlbGYgcHJlc2VudFNoZWV0XTsKKyAg
ICAgICAgICAgIFtzZWxmIHByZXNlbnRTaGVldDpfY3VycmVudFByZXNlbnRhdGlvblN0eWxlXTsK
IAogICAgICAgICBfcHJlc2VudGVkVmlld0NvbnRyb2xsZXJXaGlsZVJvdGF0aW5nID0gbmlsOwog
ICAgICAgICBfcG9wb3ZlclByZXNlbnRhdGlvbkNvbnRyb2xsZXJEZWxlZ2F0ZVdoaWxlUm90YXRp
bmcgPSBuaWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQubW0KaW5kZXggYjVhMWEyMDBjZWNhZTBhZjA4MWM5NWExZDMwNjk4
MGUyMmI5OWQwZS4uMzE1ZDdiNGQ3NGFkN2NlZGM2MjUxMzFhMjdjNWQ3MzkxNjk1YjQ5YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0
YW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFz
c2lzdGFudC5tbQpAQCAtMTUyLDYgKzE1MiwxOCBAQCBzdGF0aWMgTFNBcHBMaW5rICphcHBMaW5r
Rm9yVVJMKE5TVVJMICp1cmwpCiAgICAgcmV0dXJuIFtzZWxmIHN1cGVydmlld0ZvclNoZWV0XTsK
IH0KIAorLSAoQ0dSZWN0KXByZXNlbnRhdGlvblJlY3RGb3JJbmRpY2F0ZWRFbGVtZW50Cit7Cisg
ICAgVUlWaWV3ICp2aWV3ID0gW3NlbGYgc3VwZXJ2aWV3Rm9yU2hlZXRdOworICAgIGF1dG8gZGVs
ZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKCF2aWV3IHx8ICFkZWxlZ2F0ZSkKKyAg
ICAgICAgcmV0dXJuIENHUmVjdFplcm87CisKKyAgICBzdGF0aWMgY29uc3QgQ0dGbG9hdCBwcmVz
ZW50YXRpb25FbGVtZW50UmVjdFBhZGRpbmcgPSAxNTsKKyAgICBhdXRvIGVsZW1lbnRCb3VuZHMg
PSBbZGVsZWdhdGUgcG9zaXRpb25JbmZvcm1hdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNl
bGZdLmJvdW5kczsKKyAgICByZXR1cm4gQ0dSZWN0SW5zZXQoW3ZpZXcgY29udmVydFJlY3Q6ZWxl
bWVudEJvdW5kcyBmcm9tVmlldzpfdmlld10sIC1wcmVzZW50YXRpb25FbGVtZW50UmVjdFBhZGRp
bmcsIC1wcmVzZW50YXRpb25FbGVtZW50UmVjdFBhZGRpbmcpOworfQorCiAtIChDR1JlY3QpaW5p
dGlhbFByZXNlbnRhdGlvblJlY3RJbkhvc3RWaWV3Rm9yU2hlZXQKIHsKICAgICBVSVZpZXcgKnZp
ZXcgPSBbc2VsZiBzdXBlcnZpZXdGb3JTaGVldF07CkBAIC0yOTMsNyArMzA1LDggQEAgc3RhdGlj
IExTQXBwTGluayAqYXBwTGlua0ZvclVSTChOU1VSTCAqdXJsKQogICAgIGNvbnN0IGF1dG8mIHBv
c2l0aW9uSW5mb3JtYXRpb24gPSBbZGVsZWdhdGUgcG9zaXRpb25JbmZvcm1hdGlvbkZvckFjdGlv
blNoZWV0QXNzaXN0YW50OnNlbGZdOwogCiAgICAgTlNVUkwgKnRhcmdldFVSTCA9IFtOU1VSTCBf
d2ViX1VSTFdpdGhXVEZTdHJpbmc6cG9zaXRpb25JbmZvcm1hdGlvbi51cmxdOwotICAgIGF1dG8g
ZWxlbWVudEluZm8gPSBhZG9wdE5TKFtbX1dLQWN0aXZhdGVkRWxlbWVudEluZm8gYWxsb2NdIF9p
bml0V2l0aFR5cGU6X1dLQWN0aXZhdGVkRWxlbWVudFR5cGVJbWFnZSBVUkw6dGFyZ2V0VVJMIGxv
Y2F0aW9uOnBvc2l0aW9uSW5mb3JtYXRpb24ucmVxdWVzdC5wb2ludCB0aXRsZTpwb3NpdGlvbklu
Zm9ybWF0aW9uLnRpdGxlIElEOnBvc2l0aW9uSW5mb3JtYXRpb24uaWRBdHRyaWJ1dGUgcmVjdDpw
b3NpdGlvbkluZm9ybWF0aW9uLmJvdW5kcyBpbWFnZTpwb3NpdGlvbkluZm9ybWF0aW9uLmltYWdl
LmdldCgpXSk7CisgICAgYXV0byBlbGVtZW50Qm91bmRzID0gcG9zaXRpb25JbmZvcm1hdGlvbi5i
b3VuZHM7CisgICAgYXV0byBlbGVtZW50SW5mbyA9IGFkb3B0TlMoW1tfV0tBY3RpdmF0ZWRFbGVt
ZW50SW5mbyBhbGxvY10gX2luaXRXaXRoVHlwZTpfV0tBY3RpdmF0ZWRFbGVtZW50VHlwZUltYWdl
IFVSTDp0YXJnZXRVUkwgbG9jYXRpb246cG9zaXRpb25JbmZvcm1hdGlvbi5yZXF1ZXN0LnBvaW50
IHRpdGxlOnBvc2l0aW9uSW5mb3JtYXRpb24udGl0bGUgSUQ6cG9zaXRpb25JbmZvcm1hdGlvbi5p
ZEF0dHJpYnV0ZSByZWN0OmVsZW1lbnRCb3VuZHMgaW1hZ2U6cG9zaXRpb25JbmZvcm1hdGlvbi5p
bWFnZS5nZXQoKV0pOwogICAgIGlmIChbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxl
Y3RvcihhY3Rpb25TaGVldEFzc2lzdGFudDpzaG93Q3VzdG9tU2hlZXRGb3JFbGVtZW50OildICYm
IFtkZWxlZ2F0ZSBhY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmIHNob3dDdXN0b21TaGVldEZvckVs
ZW1lbnQ6ZWxlbWVudEluZm8uZ2V0KCldKQogICAgICAgICByZXR1cm47CiAgICAgYXV0byBkZWZh
dWx0QWN0aW9ucyA9IFtzZWxmIGRlZmF1bHRBY3Rpb25zRm9ySW1hZ2VTaGVldDplbGVtZW50SW5m
by5nZXQoKV07CkBAIC0zMDksMTAgKzMyMiwzMCBAQCBzdGF0aWMgTFNBcHBMaW5rICphcHBMaW5r
Rm9yVVJMKE5TVVJMICp1cmwpCiAKICAgICBfZWxlbWVudEluZm8gPSBXVEZNb3ZlKGVsZW1lbnRJ
bmZvKTsKIAotICAgIGlmICghW19pbnRlcmFjdGlvblNoZWV0IHByZXNlbnRTaGVldF0pCisgICAg
aWYgKCFbX2ludGVyYWN0aW9uU2hlZXQgcHJlc2VudFNoZWV0OltzZWxmIF9wcmVzZW50YXRpb25T
dHlsZUZvckltYWdlQXRFbGVtZW50UmVjdDplbGVtZW50Qm91bmRzXV0pCiAgICAgICAgIFtzZWxm
IGNsZWFudXBTaGVldF07CiB9CiAKKy0gKFdLQWN0aW9uU2hlZXRQcmVzZW50YXRpb25TdHlsZSlf
cHJlc2VudGF0aW9uU3R5bGVGb3JJbWFnZUF0RWxlbWVudFJlY3Q6KENHUmVjdCllbGVtZW50UmVj
dAoreworICAgIGF1dG8gYXBwYXJlbnRFbGVtZW50UmVjdCA9IFtfdmlldyBjb252ZXJ0UmVjdDpl
bGVtZW50UmVjdCB0b1ZpZXc6X3ZpZXcud2luZG93XTsKKyAgICBhdXRvIHdpbmRvd1JlY3QgPSBf
dmlldy53aW5kb3cuYm91bmRzOworICAgIGFwcGFyZW50RWxlbWVudFJlY3QgPSBDR1JlY3RJbnRl
cnNlY3Rpb24oYXBwYXJlbnRFbGVtZW50UmVjdCwgd2luZG93UmVjdCk7CisKKyAgICBhdXRvIGxl
ZnRJbnNldCA9IENHUmVjdEdldE1pblgoYXBwYXJlbnRFbGVtZW50UmVjdCkgLSBDR1JlY3RHZXRN
aW5YKHdpbmRvd1JlY3QpOworICAgIGF1dG8gdG9wSW5zZXQgPSBDR1JlY3RHZXRNaW5ZKGFwcGFy
ZW50RWxlbWVudFJlY3QpIC0gQ0dSZWN0R2V0TWluWSh3aW5kb3dSZWN0KTsKKyAgICBhdXRvIHJp
Z2h0SW5zZXQgPSBDR1JlY3RHZXRNYXhYKHdpbmRvd1JlY3QpIC0gQ0dSZWN0R2V0TWF4WChhcHBh
cmVudEVsZW1lbnRSZWN0KTsKKyAgICBhdXRvIGJvdHRvbUluc2V0ID0gQ0dSZWN0R2V0TWF4WSh3
aW5kb3dSZWN0KSAtIENHUmVjdEdldE1heFkoYXBwYXJlbnRFbGVtZW50UmVjdCk7CisKKyAgICAv
LyBJZiBhdCBsZWFzdCB0aGlzIG11Y2ggb2YgdGhlIHdpbmRvdyBpcyBhdmFpbGFibGUgZm9yIHRo
ZSBwb3BvdmVyIHRvIGRyYXcgaW4sIHRoZW4gdGFyZ2V0IHRoZSBlbGVtZW50IHJlY3Qgd2hlbiBw
cmVzZW50aW5nIHRoZSBhY3Rpb24gbWVudSBwb3BvdmVyLgorICAgIC8vIE90aGVyd2lzZSwgdGhl
cmUgaXMgbm90IGVub3VnaCBzcGFjZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBhcm91bmQgdGhl
IGVsZW1lbnQsIHNvIHJldmVydCB0byB1c2luZyB0aGUgdG91Y2ggbG9jYXRpb24gaW5zdGVhZC4K
KyAgICBzdGF0aWMgY29uc3QgQ0dGbG9hdCBtaW5pbXVtQXZhaWxhYmxlV2lkdGhPckhlaWdodFJh
dGlvID0gMC40OworICAgIGlmIChzdGQ6Om1heChsZWZ0SW5zZXQsIHJpZ2h0SW5zZXQpID4gbWlu
aW11bUF2YWlsYWJsZVdpZHRoT3JIZWlnaHRSYXRpbyAqIENHUmVjdEdldFdpZHRoKHdpbmRvd1Jl
Y3QpIHx8IHN0ZDo6bWF4KHRvcEluc2V0LCBib3R0b21JbnNldCkgPiBtaW5pbXVtQXZhaWxhYmxl
V2lkdGhPckhlaWdodFJhdGlvICogQ0dSZWN0R2V0SGVpZ2h0KHdpbmRvd1JlY3QpKQorICAgICAg
ICByZXR1cm4gV0tBY3Rpb25TaGVldFByZXNlbnRBdEVsZW1lbnRSZWN0OworCisgICAgcmV0dXJu
IFdLQWN0aW9uU2hlZXRQcmVzZW50QXRUb3VjaExvY2F0aW9uOworfQorCiAtICh2b2lkKV9hcHBl
bmRPcGVuQWN0aW9uc0ZvclVSTDooTlNVUkwgKil1cmwgYWN0aW9uczooTlNNdXRhYmxlQXJyYXkg
KilkZWZhdWx0QWN0aW9ucyBlbGVtZW50SW5mbzooX1dLQWN0aXZhdGVkRWxlbWVudEluZm8gKill
bGVtZW50SW5mbwogewogI2lmIEhBVkUoQVBQX0xJTktTKQpAQCAtNDI4LDcgKzQ2MSw3IEBAIHN0
YXRpYyBMU0FwcExpbmsgKmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKIAogICAgIF9lbGVtZW50
SW5mbyA9IFdURk1vdmUoZWxlbWVudEluZm8pOwogCi0gICAgaWYgKCFbX2ludGVyYWN0aW9uU2hl
ZXQgcHJlc2VudFNoZWV0XSkKKyAgICBpZiAoIVtfaW50ZXJhY3Rpb25TaGVldCBwcmVzZW50U2hl
ZXQ6V0tBY3Rpb25TaGVldFByZXNlbnRBdFRvdWNoTG9jYXRpb25dKQogICAgICAgICBbc2VsZiBj
bGVhbnVwU2hlZXRdOwogfQogCkBAIC00OTQsNyArNTI3LDcgQEAgc3RhdGljIExTQXBwTGluayAq
YXBwTGlua0ZvclVSTChOU1VSTCAqdXJsKQogICAgIGlmIChlbGVtZW50QWN0aW9ucy5jb3VudCA8
PSAxKQogICAgICAgICBfaW50ZXJhY3Rpb25TaGVldC5nZXQoKS5hcnJvd0RpcmVjdGlvbnMgPSBV
SVBvcG92ZXJBcnJvd0RpcmVjdGlvblVwIHwgVUlQb3BvdmVyQXJyb3dEaXJlY3Rpb25Eb3duOwog
Ci0gICAgaWYgKCFbX2ludGVyYWN0aW9uU2hlZXQgcHJlc2VudFNoZWV0XSkKKyAgICBpZiAoIVtf
aW50ZXJhY3Rpb25TaGVldCBwcmVzZW50U2hlZXQ6V0tBY3Rpb25TaGVldFByZXNlbnRBdFRvdWNo
TG9jYXRpb25dKQogICAgICAgICBbc2VsZiBjbGVhbnVwU2hlZXRdOwogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24u
aAppbmRleCA3NmU2NTUxMDM4ZWVmMjRiMzNlNmU4NTY0OWVlNDU3NTdkMzcwMjQ3Li5lMDU2NGFm
M2UyMmQ5MDQ5M2RlMjZhY2M4ZDYxYmFmODk4ZGFhMDk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTI1
Miw2ICsyNTIsNyBAQCBzdHJ1Y3QgV0tBdXRvQ29ycmVjdGlvbkRhdGEgewogCiAjaWYgRU5BQkxF
KERBVEFfSU5URVJBQ1RJT04pCiAtICh2b2lkKV9kaWRQZXJmb3JtRGF0YUludGVyYWN0aW9uQ29u
dHJvbGxlck9wZXJhdGlvbjsKKy0gKHZvaWQpX2RpZEhhbmRsZVN0YXJ0RGF0YUludGVyYWN0aW9u
UmVxdWVzdDooQk9PTClzdGFydGVkOwogLSAodm9pZClfc3RhcnREYXRhSW50ZXJhY3Rpb25XaXRo
SW1hZ2U6KFJldGFpblB0cjxDR0ltYWdlUmVmPilpbWFnZSBhdENsaWVudFBvc2l0aW9uOihDR1Bv
aW50KWNsaWVudFBvc2l0aW9uIGFuY2hvclBvaW50OihDR1BvaW50KWFuY2hvclBvaW50IGlzTGlu
azooQk9PTClpc0xpbms7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
aW9zL1dlYlBhZ2VQcm94eUlPUy5tbQppbmRleCBlOTc5ODVmOGQxNzYxZjE1MzQ2N2RkMGQ5MTRj
Zjc4NGM0ZDU4ZTBiLi5mYjRjYTBkMDMyYWZhNGZiZGZlOGVhZDA3NWM1OTZhMDcxNWFmYjE1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQpA
QCAtMTEyMSw2ICsxMTIxLDExIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRQZXJmb3JtRGF0YUlu
dGVyYWN0aW9uQ29udHJvbGxlck9wZXJhdGlvbigpCiAgICAgbV9wYWdlQ2xpZW50LmRpZFBlcmZv
cm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0aW9uKCk7CiB9CiAKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpkaWRIYW5kbGVTdGFydERhdGFJbnRlcmFjdGlvblJlcXVlc3QoYm9vbCBzdGFydGVk
KQoreworICAgIG1fcGFnZUNsaWVudC5kaWRIYW5kbGVTdGFydERhdGFJbnRlcmFjdGlvblJlcXVl
c3Qoc3RhcnRlZCk7Cit9CisKIHZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0U3RhcnREYXRhSW50
ZXJhY3Rpb24oY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGNsaWVudFBvc2l0aW9uLCBjb25zdCBX
ZWJDb3JlOjpJbnRQb2ludCYgZ2xvYmFsUG9zaXRpb24pCiB7CiAgICAgaWYgKGlzVmFsaWQoKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvUGFnZUNsaWVudEltcGwu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvUGFnZUNsaWVudEltcGwuaAppbmRleCBm
ZWU5YzU0OTRhMzhhZWQ5N2UxNjk1Yjg3YjVkN2I3ODFiOGVjMTE3Li4wZDJkZGFhMmNkY2Q3YjY2
MDk2OWM2ZDQzY2Q4ZGIyZTI5ZmFiMTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L21hYy9QYWdlQ2xpZW50SW1wbC5oCkBAIC0yMzIsMTEgKzIzMiw2IEBAIHByaXZhdGU6CiAgICAg
X1dLUmVtb3RlT2JqZWN0UmVnaXN0cnkgKnJlbW90ZU9iamVjdFJlZ2lzdHJ5KCkgb3ZlcnJpZGU7
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShEQVRBX0lOVEVSQUNUSU9OKQotICAgIHZvaWQgZGlkUGVy
Zm9ybURhdGFJbnRlcmFjdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24oKSBvdmVycmlkZTsKLSAgICB2
b2lkIHN0YXJ0RGF0YUludGVyYWN0aW9uV2l0aEltYWdlKGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiBjbGllbnRQb3NpdGlvbiwgY29uc3QgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUmIGltYWdlLCBj
b25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiBhbmNob3JQb2ludCwgYm9vbCBpc0xpbmspIG92ZXJy
aWRlOwotI2VuZGlmCi0KICAgICBOU1ZpZXcgKm1fdmlldzsKICAgICBXS1dlYlZpZXcgKm1fd2Vi
VmlldzsKICAgICBXZWJWaWV3SW1wbCogbV9pbXBsIHsgbnVsbHB0ciB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9QYWdlQ2xpZW50SW1wbC5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9tYWMvUGFnZUNsaWVudEltcGwubW0KaW5kZXggMThmYWY5YjU4ODVk
MWFiNWNjNjlmYjhjN2FjZDRkYmNhYjBlNTA4NS4uYjBlNDY3NjI0MWZjYWU3ZTAxOGQ3NDMyZDY3
NmUwYjY3ZmM2YWY3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9Q
YWdlQ2xpZW50SW1wbC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1BhZ2VD
bGllbnRJbXBsLm1tCkBAIC04NzUsMTggKzg3NSw2IEBAIGJvb2wgUGFnZUNsaWVudEltcGw6Ondp
bmRvd0lzRnJvbnRXaW5kb3dVbmRlck1vdXNlKGNvbnN0IE5hdGl2ZVdlYk1vdXNlRXZlbnQmIGV2
CiAgICAgcmV0dXJuIG1faW1wbC0+d2luZG93SXNGcm9udFdpbmRvd1VuZGVyTW91c2UoZXZlbnQu
bmF0aXZlRXZlbnQoKSk7CiB9CiAKLSNpZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKLXZvaWQg
UGFnZUNsaWVudEltcGw6OmRpZFBlcmZvcm1EYXRhSW50ZXJhY3Rpb25Db250cm9sbGVyT3BlcmF0
aW9uKCkKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IG1lLgotfQotCi12b2lkIFBhZ2VDbGll
bnRJbXBsOjpzdGFydERhdGFJbnRlcmFjdGlvbldpdGhJbWFnZShjb25zdCBJbnRQb2ludCYsIGNv
bnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJiwgY29uc3QgRmxvYXRQb2ludCYsIGJvb2wpCi17
Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBtZS4KLX0KLSNlbmRpZgotCiBXZWJDb3JlOjpVc2Vy
SW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIFBhZ2VDbGllbnRJbXBsOjp1c2VySW50ZXJmYWNlTGF5
b3V0RGlyZWN0aW9uKCkKIHsKICAgICBpZiAoIW1fdmlldykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQppbmRleCAyZDk1MDQzZTdh
NzhkMzQ4MGMyYmRkZjg5Y2FiNTAyMjY1YjJhMTdlLi45OWY3YjkwYzYyZDExMmMxZGIwNGQwMzdl
MmI4NDdiOTMwNjUyZWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC02MjUsNyArNjI1LDggQEAgdm9pZCBXZWJQYWdl
OjpoYW5kbGVUYXAoY29uc3QgSW50UG9pbnQmIHBvaW50LCB1aW50NjRfdCBsYXN0TGF5ZXJUcmVl
VHJhbnNhY3Rpb24KICNpZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKIHZvaWQgV2ViUGFnZTo6
cmVxdWVzdFN0YXJ0RGF0YUludGVyYWN0aW9uKGNvbnN0IEludFBvaW50JiBjbGllbnRQb3NpdGlv
biwgY29uc3QgSW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uKQogewotICAgIG1fcGFnZS0+bWFpbkZy
YW1lKCkuZXZlbnRIYW5kbGVyKCkudHJ5VG9CZWdpbkRhdGFJbnRlcmFjdGlvbkF0UG9pbnQoY2xp
ZW50UG9zaXRpb24sIGdsb2JhbFBvc2l0aW9uKTsKKyAgICBib29sIGRpZFN0YXJ0ID0gbV9wYWdl
LT5tYWluRnJhbWUoKS5ldmVudEhhbmRsZXIoKS50cnlUb0JlZ2luRGF0YUludGVyYWN0aW9uQXRQ
b2ludChjbGllbnRQb3NpdGlvbiwgZ2xvYmFsUG9zaXRpb24pOworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkSGFuZGxlU3RhcnREYXRhSW50ZXJhY3Rpb25SZXF1ZXN0KGRpZFN0
YXJ0KSk7CiB9CiAjZW5kaWYKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>