<?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>97777</bug_id>
          
          <creation_ts>2012-09-27 06:03:31 -0700</creation_ts>
          <short_desc>[Qt] Decide when to apply a scrolled position to the viewport based on the rect covered by the tiles</short_desc>
          <delta_ts>2012-10-01 04:38:18 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Jocelyn Turcotte">jturcotte</assigned_to>
          <cc>abecsi</cc>
    
    <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>729456</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 06:03:31 -0700</bug_when>
    <thetext>[Qt] Decide when to apply a scrolled position to the viewport based on the rect covered by the tiles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729461</commentid>
    <comment_count>1</comment_count>
      <attachid>165984</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 06:09:34 -0700</bug_when>
    <thetext>Created attachment 165984
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729535</commentid>
    <comment_count>2</comment_count>
      <attachid>165984</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-27 08:03:53 -0700</bug_when>
    <thetext>Comment on attachment 165984
Patch

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

&gt; Source/WebCore/platform/graphics/TiledBackingStore.cpp:263
&gt; +    m_coverRect = coverRect;
&gt;      setKeepRect(keepRect);

Why not add a setCoverRect for completion sake...

&gt; Source/WebCore/platform/graphics/TiledBackingStore.h:75
&gt; +    IntRect coveredRect() const { return m_coverRect; }

Do you know that this is in fact covered? why not just call it coverRect() ? More might be covered than this. Also why are we not looking at visibleRect. coverRect could be mouch bigger than needed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729571</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 08:58:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; Source/WebCore/platform/graphics/TiledBackingStore.h:75
&gt; &gt; +    IntRect coveredRect() const { return m_coverRect; }
&gt; 
&gt; Do you know that this is in fact covered? why not just call it coverRect() ? More might be covered than this. Also why are we not looking at visibleRect. coverRect could be mouch bigger than needed

It&apos;s not covered at this point, and I&apos;m renaming it to coverRect() and tileCoverRect() to reflect this. It is covered after syncCompositingState() has been called on each layer so I&apos;ll keep it named tileCoveredRect from that point.

What I want to know it, am I going to see any content at all if I scroll the viewport to this position, or just white/checkerboard? So the contract is that at least coverRect() will be covered, and that&apos;s what I need.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729584</commentid>
    <comment_count>4</comment_count>
      <attachid>166012</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 09:08:21 -0700</bug_when>
    <thetext>Created attachment 166012
Patch

Rename coveredRect to coverRect from WebCore up until the rendering is done and remove tile from e.g. tileCoveredRect.
Also add TiledBackingStore::setCoverRect</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>731581</commentid>
    <comment_count>5</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-01 04:38:18 -0700</bug_when>
    <thetext>Committed r130031: &lt;http://trac.webkit.org/changeset/130031&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165984</attachid>
            <date>2012-09-27 06:09:34 -0700</date>
            <delta_ts>2012-09-27 09:08:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97777-20120927150851.patch</filename>
            <type>text/plain</type>
            <size>18876</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTdlOWZmMGNmMzU5N2M1
ZWQwYjU2ODdmNDg4NDM5NjU0ODc1NmJjMi4uMjk5YTA3NTg3MTczMzgxZTVjYjQ3YzA1YmU0MGM5
YTFhNmU3OGJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA5LTI3ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBkaWdpYS5jb20+CisKKyAgICAgICAgW1F0
XSBEZWNpZGUgd2hlbiB0byBhcHBseSBhIHNjcm9sbGVkIHBvc2l0aW9uIHRvIHRoZSB2aWV3cG9y
dCBiYXNlZCBvbiB0aGUgcmVjdCBjb3ZlcmVkIGJ5IHRoZSB0aWxlcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3NzcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1RpbGVk
QmFja2luZ1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkQmFja2luZ1N0b3JlOjpj
cmVhdGVUaWxlcyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3Rv
cmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkQmFja2luZ1N0b3JlOjpjb3ZlcmVkUmVjdCk6
CisgICAgICAgIChUaWxlZEJhY2tpbmdTdG9yZSk6CisKIDIwMTItMDktMjYgIEFuZHJleSBBZGFp
a2luICA8YWFuZHJleUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogW1Rl
eHRFZGl0b3JdIGZpeCB0YWIgdW5pbmRlbnQgc2VsZWN0aW9uIHJlc3RvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRl
eCAwZGJiNjA3ODE3ZjYxN2ViZjQ1YmZjNzliOTE5YTgyMTczNWZmNTMzLi4zZjRmMDlmYjBkMWM0
MjY1YTNmNzA1OTM0NzcyMjQ1MzY5NDE0ZmU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDYgQEAK
IDIwMTItMDktMjcgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQGRpZ2lhLmNv
bT4KIAorICAgICAgICBbUXRdIERlY2lkZSB3aGVuIHRvIGFwcGx5IGEgc2Nyb2xsZWQgcG9zaXRp
b24gdG8gdGhlIHZpZXdwb3J0IGJhc2VkIG9uIHRoZSByZWN0IGNvdmVyZWQgYnkgdGhlIHRpbGVz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Nzc3Nwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggYWNoaWV2ZXMgdHdvIHRoaW5nczoKKyAgICAgICAgLSBBcHBseSBhIHNob3J0IHNjcm9sbCBw
b3NpdGlvbiByZXF1ZXN0IGRpcmVjdGx5IGlmIHdlIGFscmVhZHkgaGF2ZSByZW5kZXJlZCB0aWxl
cworICAgICAgICAgIGF0IHRoaXMgcG9zaXRpb24uCisgICAgICAgIC0gU2luY2Ugb3VyIHZpc2li
bGUgcmVjdCByZXF1ZXN0IGlzIGFzeW5jaHJvbm91cywgdGhlIG5leHQgZnJhbWUgbWlnaHQgbm90
IGFsd2F5cworICAgICAgICAgIGJlIHRoZSBvbmUgY292ZXJpbmcgdGhpcyBwb3NpdGlvbi4gVGhp
cyB3aWxsIHdhaXQgZm9yIGEgZnJhbWUgdGhhdCBkb2VzIHRvIGFwcGx5IGl0LgorCisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9xdC9yYXcvcXJhd3dlYnZpZXdfcF9wLmg6CisgICAgICAgIChRUmF3
V2ViVmlld1ByaXZhdGU6OmRpZFJlbmRlckZyYW1lKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29v
cmRpbmF0ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eTo6ZGlkUmVuZGVyRnJhbWUpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9y
UHJveHkuaDoKKyAgICAgICAgKExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHku
bWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAg
KFBhZ2VDbGllbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6ZGlkQ29tbWl0
TG9hZCk6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VWaWV3cG9ydENvbnRyb2xsZXI6OmRpZFJlbmRl
ckZyYW1lKToKKyAgICAgICAgKFdlYktpdDo6UGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6cGFnZURp
ZFJlcXVlc3RTY3JvbGwpOgorICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9s
bGVyLmg6CisgICAgICAgIChQYWdlVmlld3BvcnRDb250cm9sbGVyKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgIChXZWJQYWdlUHJveHkpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpRdFBhZ2VD
bGllbnQ6OmRpZFJlbmRlckZyYW1lKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRQYWdlQ2xp
ZW50Lmg6CisgICAgICAgIChRdFBhZ2VDbGllbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9X
ZWJQYWdlUHJveHlRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkUmVu
ZGVyRnJhbWUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBo
aWNzL0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRp
bmF0ZWRHcmFwaGljc0xheWVyOjp0aWxlQ292ZXJlZFJlY3QpOgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TGF5ZXJUcmVlQ29vcmRpbmF0b3I6OmZsdXNoUGVuZGluZ0xheWVy
Q2hhbmdlcyk6CisKKzIwMTItMDktMjcgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNv
dHRlQGRpZ2lhLmNvbT4KKwogICAgICAgICBbUXRdIERlbGF5IHZpZXdwb3J0IHBvc2l0aW9uLCBz
Y2FsZSBhbmQgY29udGVudHMgc2l6ZSB1cGRhdGVzIHVudGlsIHRpbGVzIGFyZSByZW5kZXJlZAog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3NzUKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5n
U3RvcmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5n
U3RvcmUuY3BwCmluZGV4IGExOWY2YTYxNjc4ZGVlZjk3OTU0NjkyMGQ4ZGRkMDFiNDFiNDZjZjUu
LmM1NWI5OWNjNTFmNzMxMjY3OTljNjgxYTBmOGU2ZTZhZWE0MDk4ZWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZ1N0b3JlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9yZS5jcHAK
QEAgLTI1NSwxMCArMjU1LDExIEBAIHZvaWQgVGlsZWRCYWNraW5nU3RvcmU6OmNyZWF0ZVRpbGVz
KCkKICAgICBpZiAodmlzaWJsZVJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBJbnRSZWN0IGtlZXBSZWN0OwogICAgIEludFJlY3QgY292ZXJSZWN0OworICAgIEludFJlY3Qg
a2VlcFJlY3Q7CiAgICAgY29tcHV0ZUNvdmVyQW5kS2VlcFJlY3QodmlzaWJsZVJlY3QsIGNvdmVy
UmVjdCwga2VlcFJlY3QpOwogCisgICAgbV9jb3ZlclJlY3QgPSBjb3ZlclJlY3Q7CiAgICAgc2V0
S2VlcFJlY3Qoa2VlcFJlY3QpOwogCiAgICAgLy8gUmVzaXplIHRpbGVzIGF0IHRoZSBlZGdlIGlu
IGNhc2UgdGhlIGNvbnRlbnRzIHNpemUgaGFzIGNoYW5nZWQsIGJ1dCBvbmx5IGRvIHNvCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9y
ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3RvcmUu
aAppbmRleCA4ZDY2MmU0YzRiMmRhNjU0ZTE2MjJhZjI5NDQzMWJkOTI3ZmM4MGZhLi5hOTAwNWNl
ZmRiNjVmMzllOGYzY2Y5NDhkN2MzZWFjMTY5MjA2YTQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9yZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZ1N0b3JlLmgKQEAgLTcyLDYgKzcy
LDcgQEAgcHVibGljOgogICAgIFRpbGU6OkNvb3JkaW5hdGUgdGlsZUNvb3JkaW5hdGVGb3JQb2lu
dChjb25zdCBJbnRQb2ludCYpIGNvbnN0OwogICAgIGRvdWJsZSB0aWxlRGlzdGFuY2UoY29uc3Qg
SW50UmVjdCYgdmlld3BvcnQsIGNvbnN0IFRpbGU6OkNvb3JkaW5hdGUmKSBjb25zdDsKIAorICAg
IEludFJlY3QgY292ZXJlZFJlY3QoKSBjb25zdCB7IHJldHVybiBtX2NvdmVyUmVjdDsgfQogICAg
IGJvb2wgdmlzaWJsZUFyZWFJc0NvdmVyZWQoKSBjb25zdDsKICAgICB2b2lkIHJlbW92ZUFsbE5v
blZpc2libGVUaWxlcygpOwogCkBAIC0xMjUsNiArMTI2LDcgQEAgcHJpdmF0ZToKICAgICBGbG9h
dFBvaW50IG1fdHJhamVjdG9yeVZlY3RvcjsKICAgICBJbnRSZWN0IG1fdmlzaWJsZVJlY3Q7CiAK
KyAgICBJbnRSZWN0IG1fY292ZXJSZWN0OwogICAgIEludFJlY3QgbV9rZWVwUmVjdDsKICAgICBJ
bnRSZWN0IG1fcmVjdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9yYXcvcXJhd3dlYnZpZXdfcF9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L3F0L3Jhdy9xcmF3d2Vidmlld19wX3AuaAppbmRleCA1M2VlMDhhNjMzMmZiOTRiMWNiMmM3ZmI5
N2ZhZWUyMGZhYzk4ZjYyLi5hMmZiMDA1N2FkNDJmNWQ3M2VjOGE5ZWZmZmIwODBjMzAzNjQ0MzBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vi
dmlld19wX3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3
d2Vidmlld19wX3AuaApAQCAtMTA1LDcgKzEwNSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgZGlkUmVsYXVuY2hQcm9jZXNzKCk7CiAgICAgdmlydHVhbCB2b2lkIHNldFZpZXdOZWVkc0Rp
c3BsYXkoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdCk7CiAgICAgdmlydHVhbCB2b2lkIGRp
ZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBuZXdTaXplKTsKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29u
dGVudHNTaXplKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVuZGVyRnJhbWUoY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjb3Zl
cmVkUmVjdCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHNldEN1cnNvcihjb25zdCBXZWJDb3JlOjpD
dXJzb3ImKTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc1ZpZXdGb2N1c2VkKCkgeyByZXR1cm4gbV9m
b2N1c2VkOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHku
Y3BwCmluZGV4IDAzMWE0ZjhiNjQxNDk3ZTQ2YTVhZDQ5OTgwYmQ1NjJiNTViMmM0NGQuLjc1ZjM4
NjA2MGJkOWYxMWJjZThjNmNlYjc4ZWVjZTQxNzUwZGMxZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9y
UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBo
aWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuY3BwCkBAIC0xMTYsMTQgKzExNiwxNSBAQCB2
b2lkIExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHk6OnNldENvbXBvc2l0aW5nTGF5ZXJGaWx0ZXJz
KFdlYkxheWVySUQgaWQsIGNvbnN0CiB9CiAjZW5kaWYKIAotdm9pZCBMYXllclRyZWVDb29yZGlu
YXRvclByb3h5OjpkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50
c1NpemUpCit2b2lkIExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHk6OmRpZFJlbmRlckZyYW1lKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3QgV2ViQ29yZTo6SW50UmVj
dCYgdGlsZUNvdmVyZWRSZWN0KQogewogICAgIGRpc3BhdGNoVXBkYXRlKGJpbmQoJkxheWVyVHJl
ZVJlbmRlcmVyOjpmbHVzaExheWVyQ2hhbmdlcywgbV9yZW5kZXJlci5nZXQoKSkpOwogICAgIHVw
ZGF0ZVZpZXdwb3J0KCk7CiAjaWYgUExBVEZPUk0oUVQpCi0gICAgbV9kcmF3aW5nQXJlYVByb3h5
LT5wYWdlKCktPmRpZFJlbmRlckZyYW1lKGNvbnRlbnRzU2l6ZSk7CisgICAgbV9kcmF3aW5nQXJl
YVByb3h5LT5wYWdlKCktPmRpZFJlbmRlckZyYW1lKGNvbnRlbnRzU2l6ZSwgdGlsZUNvdmVyZWRS
ZWN0KTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKGNvbnRlbnRzU2l6ZSk7CisgICAgVU5VU0VE
X1BBUkFNKHRpbGVDb3ZlcmVkUmVjdCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0
b3JQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3Mv
TGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5oCmluZGV4IDkyYzYxMGJlOTAxYWUxNWQ0MThhMzAw
NDY3YjVlNjM1NzM3ZTc4MTUuLmYwMmE5YWVjOTZjZDBkMzRmYWM1ODg5YmNhYjQ4NTgwZWU4NjIz
MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBo
aWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5LmgKQEAg
LTYzLDcgKzYzLDcgQEAgcHVibGljOgogICAgIHZvaWQgcHVyZ2VHTFJlc291cmNlcygpOwogICAg
IHZvaWQgc2V0Q29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYpOwogICAgIHZv
aWQgc2V0VmlzaWJsZUNvbnRlbnRzUmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmLCBmbG9h
dCBzY2FsZSwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgdHJhamVjdG9yeVZlY3Rvcik7Ci0g
ICAgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1Np
emUpOworICAgIHZvaWQgZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29u
dGVudHNTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiB0aWxlQ292ZXJlZFJlY3QpOwogICAg
IHZvaWQgY3JlYXRlVGlsZUZvckxheWVyKGludCBsYXllcklELCBpbnQgdGlsZUlELCBjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgU3VyZmFjZVVwZGF0ZUluZm8mKTsKICAgICB2b2lkIHVw
ZGF0ZVRpbGVGb3JMYXllcihpbnQgbGF5ZXJJRCwgaW50IHRpbGVJRCwgY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYsIGNvbnN0IFN1cmZhY2VVcGRhdGVJbmZvJik7CiAgICAgdm9pZCByZW1vdmVUaWxl
Rm9yTGF5ZXIoaW50IGxheWVySUQsIGludCB0aWxlSUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0b3JQ
cm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdy
YXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkubWVzc2FnZXMuaW4KaW5kZXggNTJkNjFh
ZjFiYTQxMTc0MDMyOTc0ZTlmMDI0NjlhMDgzNzlmNjIyYi4uNjJjMmQwYzQ0OWIwMzhhNzRkODE2
YTljNGMwYzRiYTcyMGVmODY4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5tZXNzYWdlcy5p
bgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9MYXll
clRyZWVDb29yZGluYXRvclByb3h5Lm1lc3NhZ2VzLmluCkBAIC0zMSw3ICszMSw3IEBAIG1lc3Nh
Z2VzIC0+IExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkgewogICAgIFJlbW92ZVRpbGVGb3JMYXll
cih1aW50MzJfdCBsYXllcklELCBpbnQgdGlsZUlEKQogICAgIENyZWF0ZURpcmVjdGx5Q29tcG9z
aXRlZEltYWdlKGludDY0X3Qga2V5LCBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlIGhh
bmRsZSkKICAgICBEZXN0cm95RGlyZWN0bHlDb21wb3NpdGVkSW1hZ2UoaW50NjRfdCBrZXkpCi0g
ICAgRGlkUmVuZGVyRnJhbWUoV2ViQ29yZTo6SW50U2l6ZSBjb250ZW50c1NpemUpCisgICAgRGlk
UmVuZGVyRnJhbWUoV2ViQ29yZTo6SW50U2l6ZSBjb250ZW50c1NpemUsIFdlYkNvcmU6OkludFJl
Y3QgdGlsZUNvdmVyZWRSZWN0KQogICAgIERpZENoYW5nZVNjcm9sbFBvc2l0aW9uKFdlYkNvcmU6
OkludFBvaW50IHBvc2l0aW9uKQogICAgIFN5bmNDYW52YXModWludDMyX3QgaWQsIFdlYkNvcmU6
OkludFNpemUgY2FudmFzU2l6ZSwgdWludDY0X3QgZ3JhcGhpY3NTdXJmYWNlVG9rZW4sIHVpbnQz
Ml90IGZyb250QnVmZmVyKQogICAgIFNldExheWVyQW5pbWF0ZWRPcGFjaXR5KHVpbnQzMl90IGlk
LCBmbG9hdCBvcGFjaXR5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Bh
Z2VDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXgg
MDY4MTYxZTFhY2VlNTY0YjE4MDEwNmEwZjhkNWRlMzc4OGZjYjMyOC4uZmRjODFhNzEzNGU0Nzgz
NzdlNjFiYjllZmMxZTU2OTM0ZmM0NmY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1BhZ2VDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNs
aWVudC5oCkBAIC0xMTgsNyArMTE4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBwYWdl
RGlkUmVxdWVzdFNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpID0gMDsKICNlbmRpZgog
I2lmIFBMQVRGT1JNKFFUKQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBX
ZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlk
UmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBX
ZWJDb3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBpbml0
aWFsVmlld3BvcnRSZWFkeSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRmluZFpvb21hYmxl
QXJlYShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSA9
IDA7CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlRnJvbU5hdmlnYXRvclF0T2Jq
ZWN0KGNvbnN0IFN0cmluZyYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcAppbmRleCAyZjIwMmNjYmFkZmYxMWM3Y2EyOTI1
Mzc3NzQxYWNlMmZkZGE0NzVjLi4wNjI5MjRkYjBhNjc1NWVjNDZiZTdiZTNjOGQ0ODg3MzJhYzYz
ZjgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29u
dHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENv
bnRyb2xsZXIuY3BwCkBAIC0xMTEsNiArMTExLDkgQEAgRmxvYXRQb2ludCBQYWdlVmlld3BvcnRD
b250cm9sbGVyOjpjbGFtcFZpZXdwb3J0VG9Db250ZW50cyhjb25zdCBXZWJDb3JlOjpGbG9hdFAK
IAogdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRDb21taXRMb2FkKCkKIHsKKyAgICAv
LyBEbyBub3QgY291bnQgdGhlIHByZXZpb3VzIGNvbW1pdHRlZCBwYWdlIGNvbnRlbnRzIGFzIGNv
dmVyZWQuCisgICAgbV9sYXN0RnJhbWVDb3ZlcmVkUmVjdCA9IEZsb2F0UmVjdCgpOworCiAgICAg
Ly8gUmVzZXQgdGhlIHBvc2l0aW9uIHRvIHRoZSB0b3AsIHBhZ2UvaGlzdG9yeSBzY3JvbGwgcmVx
dWVzdHMgbWF5IG92ZXJyaWRlIHRoaXMgYmVmb3JlIHdlIHJlLWVuYWJsZSByZW5kZXJpbmcuCiAg
ICAgYXBwbHlQb3NpdGlvbkFmdGVyUmVuZGVyaW5nQ29udGVudHMoRmxvYXRQb2ludCgpKTsKIH0K
QEAgLTEyMSwxMSArMTI0LDEzIEBAIHZvaWQgUGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6ZGlkQ2hh
bmdlQ29udGVudHNTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAgICAgdXBkYXRlTWluaW11
bVNjYWxlVG9GaXQoKTsKIH0KIAotdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRSZW5k
ZXJGcmFtZShjb25zdCBJbnRTaXplJiBjb250ZW50c1NpemUpCit2b2lkIFBhZ2VWaWV3cG9ydENv
bnRyb2xsZXI6OmRpZFJlbmRlckZyYW1lKGNvbnN0IEludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29u
c3QgSW50UmVjdCYgY292ZXJlZFJlY3QpCiB7CiAgICAgLy8gT25seSB1cGRhdGUgdGhlIHZpZXdw
b3J0J3MgY29udGVudHMgZGltZW5zaW9ucyBhbG9uZyB3aXRoIGl0cyByZW5kZXIuCiAgICAgbV9j
bGllbnQtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb250ZW50c1NpemUpOwogCisgICAgbV9sYXN0
RnJhbWVDb3ZlcmVkUmVjdCA9IGNvdmVyZWRSZWN0OworCiAgICAgLy8gQXBwbHkgYW55IHNjYWxl
IG9yIHNjcm9sbCBwb3NpdGlvbiB3ZSBsb2NrZWQgdG8gYmUgc2V0IG9uIHRoZSB2aWV3cG9ydAog
ICAgIC8vIG9ubHkgd2hlbiB0aGVyZSBpcyBzb21ldGhpbmcgdG8gZGlzcGxheSB0aGVyZS4gVGhl
IHNjYWxlIGdvZXMgZmlyc3QgdG8KICAgICAvLyBhdm9pZCBvZmZzZXRpbmcgb3VyIGRlZmVycmVk
IHBvc2l0aW9uIGJ5IHNjYWxpbmcgYXQgdGhlIHZpZXdwb3J0IGNlbnRlci4KQEAgLTEzOCw4ICsx
NDMsMTIgQEAgdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRSZW5kZXJGcmFtZShjb25z
dCBJbnRTaXplJiBjb250ZW50c1NpemUpCiAgICAgICAgIG1fZWZmZWN0aXZlU2NhbGVJc0xvY2tl
ZCA9IGZhbHNlOwogICAgIH0KICAgICBpZiAobV92aWV3cG9ydFBvc0lzTG9ja2VkKSB7Ci0gICAg
ICAgIG1fY2xpZW50LT5zZXRWaWV3cG9ydFBvc2l0aW9uKGNsYW1wVmlld3BvcnRUb0NvbnRlbnRz
KG1fdmlld3BvcnRQb3MsIG1fZWZmZWN0aXZlU2NhbGUpKTsKLSAgICAgICAgbV92aWV3cG9ydFBv
c0lzTG9ja2VkID0gZmFsc2U7CisgICAgICAgIEZsb2F0UG9pbnQgY2xhbXBlZFBvcyA9IGNsYW1w
Vmlld3BvcnRUb0NvbnRlbnRzKG1fdmlld3BvcnRQb3MsIG1fZWZmZWN0aXZlU2NhbGUpOworICAg
ICAgICAvLyBUaGVyZSBtaWdodCBiZSByZW5kZXJlZCBmcmFtZXMgbm90IGNvdmVyaW5nIG91ciBy
ZXF1ZXN0ZWQgcG9zaXRpb24geWV0LCB3YWl0IGZvciBpdC4KKyAgICAgICAgaWYgKEZsb2F0UmVj
dChjbGFtcGVkUG9zLCBtX3ZpZXdwb3J0U2l6ZSAvIG1fZWZmZWN0aXZlU2NhbGUpLmludGVyc2Vj
dHMoY292ZXJlZFJlY3QpKSB7CisgICAgICAgICAgICBtX2NsaWVudC0+c2V0Vmlld3BvcnRQb3Np
dGlvbihjbGFtcGVkUG9zKTsKKyAgICAgICAgICAgIG1fdmlld3BvcnRQb3NJc0xvY2tlZCA9IGZh
bHNlOworICAgICAgICB9CiAgICAgfQogfQogCkBAIC0xNjMsOCArMTcyLDEyIEBAIHZvaWQgUGFn
ZVZpZXdwb3J0Q29udHJvbGxlcjo6cGFnZURpZFJlcXVlc3RTY3JvbGwoY29uc3QgSW50UG9pbnQm
IGNzc1Bvc2l0aW9uKQogICAgIGlmIChtX2FjdGl2ZURlZmVycmVyQ291bnQpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIC8vIEtlZXAgdGhlIHVuY2xhbXBlZCBwb3NpdGlvbiBpbiBjYXNlIHRoZSBj
b250ZW50cyBzaXplIGlzIGNoYW5nZWQgbGF0ZXIgb24uCi0gICAgYXBwbHlQb3NpdGlvbkFmdGVy
UmVuZGVyaW5nQ29udGVudHMoY3NzUG9zaXRpb24pOworICAgIEZsb2F0UmVjdCBlbmRWaXNpYmxl
Q29udGVudFJlY3QoY2xhbXBWaWV3cG9ydFRvQ29udGVudHMoY3NzUG9zaXRpb24sIG1fZWZmZWN0
aXZlU2NhbGUpLCBtX3ZpZXdwb3J0U2l6ZSAvIG1fZWZmZWN0aXZlU2NhbGUpOworICAgIGlmICht
X2xhc3RGcmFtZUNvdmVyZWRSZWN0LmludGVyc2VjdHMoZW5kVmlzaWJsZUNvbnRlbnRSZWN0KSkK
KyAgICAgICAgbV9jbGllbnQtPnNldFZpZXdwb3J0UG9zaXRpb24oZW5kVmlzaWJsZUNvbnRlbnRS
ZWN0LmxvY2F0aW9uKCkpOworICAgIGVsc2UKKyAgICAgICAgLy8gS2VlcCB0aGUgdW5jbGFtcGVk
IHBvc2l0aW9uIGluIGNhc2UgdGhlIGNvbnRlbnRzIHNpemUgaXMgY2hhbmdlZCBsYXRlciBvbi4K
KyAgICAgICAgYXBwbHlQb3NpdGlvbkFmdGVyUmVuZGVyaW5nQ29udGVudHMoY3NzUG9zaXRpb24p
OwogfQogCiB2b2lkIFBhZ2VWaWV3cG9ydENvbnRyb2xsZXI6OmRpZENoYW5nZVZpZXdwb3J0U2l6
ZShjb25zdCBGbG9hdFNpemUmIG5ld1NpemUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuaAppbmRleCA3OTczZTgyZjc4ZTM0MzI4MmIyYzBi
MjFhNzZiZjk0ZmIzN2JhODI4Li41NzcxYTVmZGExOGQ4YTE5MGIyNjBiYmMzYmQ3Y2ZjMGEwZDNl
NDE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29u
dHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250
cm9sbGVyLmgKQEAgLTk4LDcgKzk4LDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkQ29tbWl0TG9h
ZCgpOwogICAgIHZvaWQgZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIG5ld1NpemUpOwogICAgIHZvaWQgZGlkQ2hhbmdlVmlld3BvcnRBdHRyaWJ1dGVzKGNvbnN0
IFdlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRlcyYpOwotICAgIHZvaWQgZGlkUmVuZGVyRnJhbWUo
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplKTsKKyAgICB2b2lkIGRpZFJlbmRl
ckZyYW1lKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYgY292ZXJlZFJlY3QpOwogICAgIHZvaWQgaW5pdGlhbFZpZXdwb3J0UmVhZHko
KTsKICAgICB2b2lkIHBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiBjc3NQb3NpdGlvbik7CiAKQEAgLTEyOSw2ICsxMjksNyBAQCBwcml2YXRlOgogCiAgICAgYm9v
bCBtX3ZpZXdwb3J0UG9zSXNMb2NrZWQ7CiAgICAgYm9vbCBtX2VmZmVjdGl2ZVNjYWxlSXNMb2Nr
ZWQ7CisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IG1fbGFzdEZyYW1lQ292ZXJlZFJlY3Q7CiAKICAg
ICBmcmllbmQgY2xhc3MgVmlld3BvcnRVcGRhdGVEZWZlcnJlcjsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggZWM1YTNjM2Q5YTViMWRhZjZjNDk1NjBjZTcx
MDBjYTAwMDE1YWMwNy4uOGVmMDA1MGM4NTg5NTI2ZGQ5MWZjMzA1ZWFhM2EyMzAzOWNmMzlmZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMzU2LDcgKzM1Niw3
IEBAIHB1YmxpYzoKICAgICBib29sIG1haW50YWluc0luYWN0aXZlU2VsZWN0aW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9tYWludGFpbnNJbmFjdGl2ZVNlbGVjdGlvbjsgfQogICAgIHZvaWQgc2V0TWFp
bnRhaW5zSW5hY3RpdmVTZWxlY3Rpb24oYm9vbCk7CiAjaWYgUExBVEZPUk0oUVQpCi0gICAgdm9p
ZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUpOwor
ICAgIHZvaWQgZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNT
aXplLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCk7CiAgICAgdm9pZCByZWdp
c3RlckFwcGxpY2F0aW9uU2NoZW1lKGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKICAgICB2b2lkIHJl
c29sdmVBcHBsaWNhdGlvblNjaGVtZVJlcXVlc3QoUXROZXR3b3JrUmVxdWVzdERhdGEpOwogICAg
IHZvaWQgc2VuZEFwcGxpY2F0aW9uU2NoZW1lUmVwbHkoY29uc3QgUVF1aWNrTmV0d29ya1JlcGx5
Kik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwCmluZGV4
IGIyMjE5M2M0OWJhYjRjOGVhZDE4MTc2YTUyNTUxODk1YThmNGFmMzQuLjhiM2E2MDY3MTdiYTNh
ZWMyYzNkY2U1M2M0YmNiZThiMmU2NTAwNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9xdC9RdFBhZ2VDbGllbnQuY3BwCkBAIC03Myw5ICs3Myw5IEBAIHZvaWQgUXRQYWdlQ2xpZW50
OjpzZXRWaWV3TmVlZHNEaXNwbGF5KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJlY3QpCiAgICAg
UVF1aWNrV2ViVmlld1ByaXZhdGU6OmdldChtX3dlYlZpZXcpLT5zZXROZWVkc0Rpc3BsYXkoKTsK
IH0KIAotdm9pZCBRdFBhZ2VDbGllbnQ6OmRpZFJlbmRlckZyYW1lKGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmIGNvbnRlbnRzU2l6ZSkKK3ZvaWQgUXRQYWdlQ2xpZW50OjpkaWRSZW5kZXJGcmFtZShj
b25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6OkludFJl
Y3QmIGNvdmVyZWRSZWN0KQogewotICAgIFFRdWlja1dlYlZpZXdQcml2YXRlOjpnZXQobV93ZWJW
aWV3KS0+dmlld3BvcnRDb250cm9sbGVyKCktPmRpZFJlbmRlckZyYW1lKGNvbnRlbnRzU2l6ZSk7
CisgICAgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmdldChtX3dlYlZpZXcpLT52aWV3cG9ydENvbnRy
b2xsZXIoKS0+ZGlkUmVuZGVyRnJhbWUoY29udGVudHNTaXplLCBjb3ZlcmVkUmVjdCk7CiB9CiAK
IHZvaWQgUXRQYWdlQ2xpZW50OjpwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBJbnRQb2ludCYg
cG9zKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVu
dC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5oCmluZGV4IDkw
M2RhOTFlN2RjZTM2YjdmNjZlOGYzNDBlODUzZDFiNjhlNTVkNzIuLjhkNDllYWEwNjBiYjQ1Mjcw
YWJlMjliNDAwOWFhMDc4YTViZjEyNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9xdC9RdFBhZ2VDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
UXRQYWdlQ2xpZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljOgogCiAgICAgLy8gUVF1aWNr
V2ViVmlldy4KICAgICB2aXJ0dWFsIHZvaWQgc2V0Vmlld05lZWRzRGlzcGxheShjb25zdCBXZWJD
b3JlOjpJbnRSZWN0Jik7Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlbmRlckZyYW1lKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSk7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlbmRl
ckZyYW1lKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYgY292ZXJlZFJlY3QpOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50U2l6ZSB2
aWV3U2l6ZSgpOwogICAgIHZpcnR1YWwgYm9vbCBpc1ZpZXdGb2N1c2VkKCk7CiAgICAgdmlydHVh
bCBib29sIGlzVmlld1Zpc2libGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9xdC9XZWJQYWdlUHJveHlRdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
V2ViUGFnZVByb3h5UXQuY3BwCmluZGV4IDA2ZDgyOTAwOTUzNzBjZjE1ZDg0NzkxMGZmY2M1NTQz
M2U0YTQ5ODkuLmU2NzkzODk5ZWEyZTc0ZjM2N2Q3ZTIyYjVlYWJiNDc3ZjU1N2JlZGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQYWdlUHJveHlRdC5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBhZ2VQcm94eVF0LmNwcApAQCAtOTMs
OSArOTMsOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6Y2FuY2VsQ29tcG9zaXRpb24oKQogICAgIHBy
b2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6Q2FuY2VsQ29tcG9zaXRpb24oKSwgbV9w
YWdlSUQpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUmVuZGVyRnJhbWUoY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplKQordm9pZCBXZWJQYWdlUHJveHk6OmRpZFJlbmRl
ckZyYW1lKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYgY292ZXJlZFJlY3QpCiB7Ci0gICAgbV9wYWdlQ2xpZW50LT5kaWRSZW5kZXJG
cmFtZShjb250ZW50c1NpemUpOworICAgIG1fcGFnZUNsaWVudC0+ZGlkUmVuZGVyRnJhbWUoY29u
dGVudHNTaXplLCBjb3ZlcmVkUmVjdCk7CiB9CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpyZWdpc3Rl
ckFwcGxpY2F0aW9uU2NoZW1lKGNvbnN0IFN0cmluZyYgc2NoZW1lKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRp
bmF0ZWRHcmFwaGljc0xheWVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
Q29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuaAppbmRleCBmNGVh
MmZiOTJmY2IzZTVhN2FhNzA2NDJhYmJmOTk5Yzc5ODBkODY0Li4zODU5M2I0YWM4NWQxNWY0ZmQy
ZDRjNWY2MTBkMzc2ZGRkYmI3NGZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFw
aGljcy9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIuaApAQCAtMTMzLDYgKzEzMyw3IEBAIHB1Ymxp
YzoKIAogICAgIEdyYXBoaWNzTGF5ZXIqIG1hc2tUYXJnZXQoKSBjb25zdCB7IHJldHVybiBtX21h
c2tUYXJnZXQ7IH0KICAgICB2b2lkIHNldE1hc2tUYXJnZXQoR3JhcGhpY3NMYXllciogbGF5ZXIp
IHsgbV9tYXNrVGFyZ2V0ID0gbGF5ZXI7IH0KKyAgICBJbnRSZWN0IHRpbGVDb3ZlcmVkUmVjdCgp
IGNvbnN0IHsgcmV0dXJuIG1fbWFpbkJhY2tpbmdTdG9yZSA/IG1fbWFpbkJhY2tpbmdTdG9yZS0+
Y292ZXJlZFJlY3QoKSA6IEludFJlY3QoKTsgfQogCiAgICAgc3RhdGljIHZvaWQgaW5pdEZhY3Rv
cnkoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0b3IuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRp
bmF0b3IuY3BwCmluZGV4IDA4YzUxMGFhZmNmMWUzMGUzYjhhYTQzMDM2NTg4YzhmNzAyZWI4Y2Qu
LmU1MTY1NTIzMTMzODZmNTZmMTk3NjE1OTU1NzhiYzEwMmFlOWNhMTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVy
VHJlZUNvb3JkaW5hdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvci5jcHAKQEAgLTI3NCw3
ICsyNzQsOCBAQCBib29sIExheWVyVHJlZUNvb3JkaW5hdG9yOjpmbHVzaFBlbmRpbmdMYXllckNo
YW5nZXMoKQogICAgICAgICBkaWRTeW5jID0gdHJ1ZTsKIAogICAgICAgICBJbnRTaXplIGNvbnRl
bnRzU2l6ZSA9IHJvdW5kZWRJbnRTaXplKG1fbm9uQ29tcG9zaXRlZENvbnRlbnRMYXllci0+c2l6
ZSgpKTsKLSAgICAgICAgbV93ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpMYXllclRyZWVDb29yZGlu
YXRvclByb3h5OjpEaWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUpKTsKKyAgICAgICAgSW50UmVj
dCB0aWxlQ292ZXJlZFJlY3QgPSB0b0Nvb3JkaW5hdGVkR3JhcGhpY3NMYXllcihtX25vbkNvbXBv
c2l0ZWRDb250ZW50TGF5ZXIuZ2V0KCkpLT50aWxlQ292ZXJlZFJlY3QoKTsKKyAgICAgICAgbV93
ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpMYXllclRyZWVDb29yZGluYXRvclByb3h5OjpEaWRSZW5k
ZXJGcmFtZShjb250ZW50c1NpemUsIHRpbGVDb3ZlcmVkUmVjdCkpOwogICAgICAgICBtX3dhaXRp
bmdGb3JVSVByb2Nlc3MgPSB0cnVlOwogICAgICAgICBtX3Nob3VsZFN5bmNGcmFtZSA9IGZhbHNl
OwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166012</attachid>
            <date>2012-09-27 09:08:21 -0700</date>
            <delta_ts>2012-09-27 09:18:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97777-20120927180739.patch</filename>
            <type>text/plain</type>
            <size>19137</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTdlOWZmMGNmMzU5N2M1
ZWQwYjU2ODdmNDg4NDM5NjU0ODc1NmJjMi4uZDZhNjYzMWVhNTcwOWE1NjkyMjRjYjk4ZGUyOWQ3
Mzg3M2I0ZjExNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTA5LTI3ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBkaWdpYS5jb20+CisKKyAgICAgICAgW1F0
XSBEZWNpZGUgd2hlbiB0byBhcHBseSBhIHNjcm9sbGVkIHBvc2l0aW9uIHRvIHRoZSB2aWV3cG9y
dCBiYXNlZCBvbiB0aGUgcmVjdCBjb3ZlcmVkIGJ5IHRoZSB0aWxlcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3NzcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1RpbGVk
QmFja2luZ1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkQmFja2luZ1N0b3JlOjpj
cmVhdGVUaWxlcyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3Rv
cmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkQmFja2luZ1N0b3JlOjpjb3ZlclJlY3QpOgor
ICAgICAgICAoV2ViQ29yZTo6VGlsZWRCYWNraW5nU3RvcmU6OnNldENvdmVyUmVjdCk6CisgICAg
ICAgIChUaWxlZEJhY2tpbmdTdG9yZSk6CisKIDIwMTItMDktMjYgIEFuZHJleSBBZGFpa2luICA8
YWFuZHJleUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogW1RleHRFZGl0
b3JdIGZpeCB0YWIgdW5pbmRlbnQgc2VsZWN0aW9uIHJlc3RvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA0NjJj
NmQzYmEyOGMyOGUwNzY1MjU4NTZlYjg1YmY2MjgzM2VlYWNiLi5hODFhNTMzMGNhNjhmODZjMjMz
ZmE4MjFkNDc3MTkxNDAyYTc5ODcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDYgQEAKIDIwMTIt
MDktMjcgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQGRpZ2lhLmNvbT4KIAor
ICAgICAgICBbUXRdIERlY2lkZSB3aGVuIHRvIGFwcGx5IGEgc2Nyb2xsZWQgcG9zaXRpb24gdG8g
dGhlIHZpZXdwb3J0IGJhc2VkIG9uIHRoZSByZWN0IGNvdmVyZWQgYnkgdGhlIHRpbGVzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Nzc3NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWNo
aWV2ZXMgdHdvIHRoaW5nczoKKyAgICAgICAgLSBBcHBseSBhIHNob3J0IHNjcm9sbCBwb3NpdGlv
biByZXF1ZXN0IGRpcmVjdGx5IGlmIHdlIGFscmVhZHkgaGF2ZSByZW5kZXJlZCB0aWxlcworICAg
ICAgICAgIGF0IHRoaXMgcG9zaXRpb24uCisgICAgICAgIC0gU2luY2Ugb3VyIHZpc2libGUgcmVj
dCByZXF1ZXN0IGlzIGFzeW5jaHJvbm91cywgdGhlIG5leHQgZnJhbWUgbWlnaHQgbm90IGFsd2F5
cworICAgICAgICAgIGJlIHRoZSBvbmUgY292ZXJpbmcgdGhpcyBwb3NpdGlvbi4gVGhpcyB3aWxs
IHdhaXQgZm9yIGEgZnJhbWUgdGhhdCBkb2VzIHRvIGFwcGx5IGl0LgorCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9xdC9yYXcvcXJhd3dlYnZpZXdfcF9wLmg6CisgICAgICAgIChRUmF3V2ViVmll
d1ByaXZhdGU6OmRpZFJlbmRlckZyYW1lKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eTo6ZGlkUmVuZGVyRnJhbWUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHku
aDoKKyAgICAgICAgKExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkubWVzc2Fn
ZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAgKFBhZ2VD
bGllbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6UGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6ZGlkQ29tbWl0TG9hZCk6
CisgICAgICAgIChXZWJLaXQ6OlBhZ2VWaWV3cG9ydENvbnRyb2xsZXI6OmRpZFJlbmRlckZyYW1l
KToKKyAgICAgICAgKFdlYktpdDo6UGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6cGFnZURpZFJlcXVl
c3RTY3JvbGwpOgorICAgICAgICAqIFVJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmg6
CisgICAgICAgIChQYWdlVmlld3BvcnRDb250cm9sbGVyKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lmg6CisgICAgICAgIChXZWJQYWdlUHJveHkpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpRdFBhZ2VDbGllbnQ6
OmRpZFJlbmRlckZyYW1lKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50Lmg6
CisgICAgICAgIChRdFBhZ2VDbGllbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9XZWJQYWdl
UHJveHlRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkUmVuZGVyRnJh
bWUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nv
b3JkaW5hdGVkR3JhcGhpY3NMYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc0xheWVyOjpjb3ZlclJlY3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9D
b29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6TGF5ZXJUcmVlQ29vcmRpbmF0b3I6OmZsdXNoUGVuZGluZ0xheWVyQ2hhbmdlcyk6CisK
KzIwMTItMDktMjcgIEpvY2VseW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQGRpZ2lhLmNv
bT4KKwogICAgICAgICBbUXRdIERlbGF5IHZpZXdwb3J0IHBvc2l0aW9uLCBzY2FsZSBhbmQgY29u
dGVudHMgc2l6ZSB1cGRhdGVzIHVudGlsIHRpbGVzIGFyZSByZW5kZXJlZAogICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3NzUKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3RvcmUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3RvcmUuY3BwCmlu
ZGV4IGExOWY2YTYxNjc4ZGVlZjk3OTU0NjkyMGQ4ZGRkMDFiNDFiNDZjZjUuLmE3OTMwMzAwMDc0
Yzk2NDBhMzkyYjllNWJiNTFlMDU5YTYyYmZiNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZ1N0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9yZS5jcHAKQEAgLTI1NSwxMCAr
MjU1LDExIEBAIHZvaWQgVGlsZWRCYWNraW5nU3RvcmU6OmNyZWF0ZVRpbGVzKCkKICAgICBpZiAo
dmlzaWJsZVJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBJbnRSZWN0IGtl
ZXBSZWN0OwogICAgIEludFJlY3QgY292ZXJSZWN0OworICAgIEludFJlY3Qga2VlcFJlY3Q7CiAg
ICAgY29tcHV0ZUNvdmVyQW5kS2VlcFJlY3QodmlzaWJsZVJlY3QsIGNvdmVyUmVjdCwga2VlcFJl
Y3QpOwogCisgICAgc2V0Q292ZXJSZWN0KGNvdmVyUmVjdCk7CiAgICAgc2V0S2VlcFJlY3Qoa2Vl
cFJlY3QpOwogCiAgICAgLy8gUmVzaXplIHRpbGVzIGF0IHRoZSBlZGdlIGluIGNhc2UgdGhlIGNv
bnRlbnRzIHNpemUgaGFzIGNoYW5nZWQsIGJ1dCBvbmx5IGRvIHNvCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9yZS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvVGlsZWRCYWNraW5nU3RvcmUuaAppbmRleCA4ZDY2
MmU0YzRiMmRhNjU0ZTE2MjJhZjI5NDQzMWJkOTI3ZmM4MGZhLi5iM2MzNjVjMzU5Y2UyNjFkOTlh
ZWE4NGFkOGNlNTY1YzFjYTg3ZTRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9UaWxlZEJhY2tpbmdTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZ1N0b3JlLmgKQEAgLTcyLDYgKzcyLDcgQEAgcHVibGlj
OgogICAgIFRpbGU6OkNvb3JkaW5hdGUgdGlsZUNvb3JkaW5hdGVGb3JQb2ludChjb25zdCBJbnRQ
b2ludCYpIGNvbnN0OwogICAgIGRvdWJsZSB0aWxlRGlzdGFuY2UoY29uc3QgSW50UmVjdCYgdmll
d3BvcnQsIGNvbnN0IFRpbGU6OkNvb3JkaW5hdGUmKSBjb25zdDsKIAorICAgIEludFJlY3QgY292
ZXJSZWN0KCkgY29uc3QgeyByZXR1cm4gbV9jb3ZlclJlY3Q7IH0KICAgICBib29sIHZpc2libGVB
cmVhSXNDb3ZlcmVkKCkgY29uc3Q7CiAgICAgdm9pZCByZW1vdmVBbGxOb25WaXNpYmxlVGlsZXMo
KTsKIApAQCAtOTQsNiArOTUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgY29tbWl0U2NhbGVDaGFu
Z2UoKTsKIAogICAgIGJvb2wgcmVzaXplRWRnZVRpbGVzKCk7CisgICAgdm9pZCBzZXRDb3ZlclJl
Y3QoY29uc3QgSW50UmVjdCYgcmVjdCkgeyBtX2NvdmVyUmVjdCA9IHJlY3Q7IH0KICAgICB2b2lk
IHNldEtlZXBSZWN0KGNvbnN0IEludFJlY3QmKTsKIAogICAgIFBhc3NSZWZQdHI8VGlsZT4gdGls
ZUF0KGNvbnN0IFRpbGU6OkNvb3JkaW5hdGUmKSBjb25zdDsKQEAgLTEyNSw2ICsxMjcsNyBAQCBw
cml2YXRlOgogICAgIEZsb2F0UG9pbnQgbV90cmFqZWN0b3J5VmVjdG9yOwogICAgIEludFJlY3Qg
bV92aXNpYmxlUmVjdDsKIAorICAgIEludFJlY3QgbV9jb3ZlclJlY3Q7CiAgICAgSW50UmVjdCBt
X2tlZXBSZWN0OwogICAgIEludFJlY3QgbV9yZWN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmlld19wX3AuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3X3BfcC5oCmluZGV4IDUzZWUwOGE2
MzMyZmI5NGIxY2IyYzdmYjk3ZmFlZTIwZmFjOThmNjIuLmEyZmIwMDU3YWQ0MmY1ZDczZWM4YTll
ZmZmYjA4MGMzMDM2NDQzMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcmF3L3FyYXd3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3X3BfcC5oCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGlj
OgogICAgIHZpcnR1YWwgdm9pZCBkaWRSZWxhdW5jaFByb2Nlc3MoKTsKICAgICB2aXJ0dWFsIHZv
aWQgc2V0Vmlld05lZWRzRGlzcGxheShjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0KTsKICAg
ICB2aXJ0dWFsIHZvaWQgZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIG5ld1NpemUpOwotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJD
b3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5k
ZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmIGNvdmVyZWRSZWN0KSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0Q3Vyc29y
KGNvbnN0IFdlYkNvcmU6OkN1cnNvciYpOwogCiAgICAgdmlydHVhbCBib29sIGlzVmlld0ZvY3Vz
ZWQoKSB7IHJldHVybiBtX2ZvY3VzZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVl
Q29vcmRpbmF0b3JQcm94eS5jcHAKaW5kZXggMDMxYTRmOGI2NDE0OTdlNDZhNWFkNDk5ODBiZDU2
MmI1NWIyYzQ0ZC4uNjIzYjBhOTk4MjVhMGQ2OTk2OTFlOTM2YjI4NDMxMTcxZTAwYjdmMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5
ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5jcHAKQEAgLTEx
NiwxNCArMTE2LDE1IEBAIHZvaWQgTGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eTo6c2V0Q29tcG9z
aXRpbmdMYXllckZpbHRlcnMoV2ViTGF5ZXJJRCBpZCwgY29uc3QKIH0KICNlbmRpZgogCi12b2lk
IExheWVyVHJlZUNvb3JkaW5hdG9yUHJveHk6OmRpZFJlbmRlckZyYW1lKGNvbnN0IFdlYkNvcmU6
OkludFNpemUmIGNvbnRlbnRzU2l6ZSkKK3ZvaWQgTGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eTo6
ZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkKIHsKICAgICBkaXNwYXRjaFVwZGF0ZShi
aW5kKCZMYXllclRyZWVSZW5kZXJlcjo6Zmx1c2hMYXllckNoYW5nZXMsIG1fcmVuZGVyZXIuZ2V0
KCkpKTsKICAgICB1cGRhdGVWaWV3cG9ydCgpOwogI2lmIFBMQVRGT1JNKFFUKQotICAgIG1fZHJh
d2luZ0FyZWFQcm94eS0+cGFnZSgpLT5kaWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUpOworICAg
IG1fZHJhd2luZ0FyZWFQcm94eS0+cGFnZSgpLT5kaWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUs
IGNvdmVyZWRSZWN0KTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKGNvbnRlbnRzU2l6ZSk7Cisg
ICAgVU5VU0VEX1BBUkFNKGNvdmVyZWRSZWN0KTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9MYXllclRyZWVDb29y
ZGluYXRvclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5LmgKaW5kZXggOTJjNjEwYmU5MDFhZTE1ZDQx
OGEzMDA0NjdiNWU2MzU3MzdlNzgxNS4uOTQzMzMwY2U1NWJiZjEzYWEwOGRiYWMwZWEyZDFjYzFj
NzUzNjI2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHku
aApAQCAtNjMsNyArNjMsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBwdXJnZUdMUmVzb3VyY2VzKCk7
CiAgICAgdm9pZCBzZXRDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJik7CiAg
ICAgdm9pZCBzZXRWaXNpYmxlQ29udGVudHNSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYs
IGZsb2F0IHNjYWxlLCBjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiB0cmFqZWN0b3J5VmVjdG9y
KTsKLSAgICB2b2lkIGRpZFJlbmRlckZyYW1lKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRl
bnRzU2l6ZSk7CisgICAgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNvdmVyZWRSZWN0KTsKICAg
ICB2b2lkIGNyZWF0ZVRpbGVGb3JMYXllcihpbnQgbGF5ZXJJRCwgaW50IHRpbGVJRCwgY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IFN1cmZhY2VVcGRhdGVJbmZvJik7CiAgICAgdm9pZCB1
cGRhdGVUaWxlRm9yTGF5ZXIoaW50IGxheWVySUQsIGludCB0aWxlSUQsIGNvbnN0IFdlYkNvcmU6
OkludFJlY3QmLCBjb25zdCBTdXJmYWNlVXBkYXRlSW5mbyYpOwogICAgIHZvaWQgcmVtb3ZlVGls
ZUZvckxheWVyKGludCBsYXllcklELCBpbnQgdGlsZUlEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9y
UHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRH
cmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDUyZDYx
YWYxYmE0MTE3NDAzMjk3NGU5ZjAyNDY5YTA4Mzc5ZjYyMmIuLmUwOTU3NDYwYTQ5Y2MzNDI2MWQw
Y2E3Njc4NmUxMmVkZmRmZjE1N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9Db29yZGluYXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5
ZXJUcmVlQ29vcmRpbmF0b3JQcm94eS5tZXNzYWdlcy5pbgpAQCAtMzEsNyArMzEsNyBAQCBtZXNz
YWdlcyAtPiBMYXllclRyZWVDb29yZGluYXRvclByb3h5IHsKICAgICBSZW1vdmVUaWxlRm9yTGF5
ZXIodWludDMyX3QgbGF5ZXJJRCwgaW50IHRpbGVJRCkKICAgICBDcmVhdGVEaXJlY3RseUNvbXBv
c2l0ZWRJbWFnZShpbnQ2NF90IGtleSwgV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSBo
YW5kbGUpCiAgICAgRGVzdHJveURpcmVjdGx5Q29tcG9zaXRlZEltYWdlKGludDY0X3Qga2V5KQot
ICAgIERpZFJlbmRlckZyYW1lKFdlYkNvcmU6OkludFNpemUgY29udGVudHNTaXplKQorICAgIERp
ZFJlbmRlckZyYW1lKFdlYkNvcmU6OkludFNpemUgY29udGVudHNTaXplLCBXZWJDb3JlOjpJbnRS
ZWN0IGNvdmVyZWRSZWN0KQogICAgIERpZENoYW5nZVNjcm9sbFBvc2l0aW9uKFdlYkNvcmU6Oklu
dFBvaW50IHBvc2l0aW9uKQogICAgIFN5bmNDYW52YXModWludDMyX3QgaWQsIFdlYkNvcmU6Oklu
dFNpemUgY2FudmFzU2l6ZSwgdWludDY0X3QgZ3JhcGhpY3NTdXJmYWNlVG9rZW4sIHVpbnQzMl90
IGZyb250QnVmZmVyKQogICAgIFNldExheWVyQW5pbWF0ZWRPcGFjaXR5KHVpbnQzMl90IGlkLCBm
bG9hdCBvcGFjaXR5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VD
bGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXggMDY4
MTYxZTFhY2VlNTY0YjE4MDEwNmEwZjhkNWRlMzc4OGZjYjMyOC4uZmRjODFhNzEzNGU0NzgzNzdl
NjFiYjllZmMxZTU2OTM0ZmM0NmY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1BhZ2VDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVu
dC5oCkBAIC0xMTgsNyArMTE4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBwYWdlRGlk
UmVxdWVzdFNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpID0gMDsKICNlbmRpZgogI2lm
IFBMQVRGT1JNKFFUKQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJD
b3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVu
ZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBpbml0aWFs
Vmlld3BvcnRSZWFkeSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRmluZFpvb21hYmxlQXJl
YShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlRnJvbU5hdmlnYXRvclF0T2JqZWN0
KGNvbnN0IFN0cmluZyYpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Q
YWdlVmlld3BvcnRDb250cm9sbGVyLmNwcAppbmRleCBkOTYzMThhYTNiODVmNmUxZTExYTQwZTI0
OWEyNmMwZTI0OTdkNDEwLi4xNTU4ZjMxYTVlZjFhZDJlMjgzZjA3MTVjYWIxMjIwOTlkNjAwYTAz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJv
bGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRy
b2xsZXIuY3BwCkBAIC0xMTEsNiArMTExLDkgQEAgRmxvYXRQb2ludCBQYWdlVmlld3BvcnRDb250
cm9sbGVyOjpjbGFtcFZpZXdwb3J0VG9Db250ZW50cyhjb25zdCBXZWJDb3JlOjpGbG9hdFAKIAog
dm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRDb21taXRMb2FkKCkKIHsKKyAgICAvLyBE
byBub3QgY291bnQgdGhlIHByZXZpb3VzIGNvbW1pdHRlZCBwYWdlIGNvbnRlbnRzIGFzIGNvdmVy
ZWQuCisgICAgbV9sYXN0RnJhbWVDb3ZlcmVkUmVjdCA9IEZsb2F0UmVjdCgpOworCiAgICAgLy8g
UmVzZXQgdGhlIHBvc2l0aW9uIHRvIHRoZSB0b3AsIHBhZ2UvaGlzdG9yeSBzY3JvbGwgcmVxdWVz
dHMgbWF5IG92ZXJyaWRlIHRoaXMgYmVmb3JlIHdlIHJlLWVuYWJsZSByZW5kZXJpbmcuCiAgICAg
YXBwbHlQb3NpdGlvbkFmdGVyUmVuZGVyaW5nQ29udGVudHMoRmxvYXRQb2ludCgpKTsKIH0KQEAg
LTEyMSwxMSArMTI0LDEzIEBAIHZvaWQgUGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6ZGlkQ2hhbmdl
Q29udGVudHNTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAgICAgdXBkYXRlTWluaW11bVNj
YWxlVG9GaXQoKTsKIH0KIAotdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRSZW5kZXJG
cmFtZShjb25zdCBJbnRTaXplJiBjb250ZW50c1NpemUpCit2b2lkIFBhZ2VWaWV3cG9ydENvbnRy
b2xsZXI6OmRpZFJlbmRlckZyYW1lKGNvbnN0IEludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3Qg
SW50UmVjdCYgY292ZXJlZFJlY3QpCiB7CiAgICAgLy8gT25seSB1cGRhdGUgdGhlIHZpZXdwb3J0
J3MgY29udGVudHMgZGltZW5zaW9ucyBhbG9uZyB3aXRoIGl0cyByZW5kZXIuCiAgICAgbV9jbGll
bnQtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb250ZW50c1NpemUpOwogCisgICAgbV9sYXN0RnJh
bWVDb3ZlcmVkUmVjdCA9IGNvdmVyZWRSZWN0OworCiAgICAgLy8gQXBwbHkgYW55IHNjYWxlIG9y
IHNjcm9sbCBwb3NpdGlvbiB3ZSBsb2NrZWQgdG8gYmUgc2V0IG9uIHRoZSB2aWV3cG9ydAogICAg
IC8vIG9ubHkgd2hlbiB0aGVyZSBpcyBzb21ldGhpbmcgdG8gZGlzcGxheSB0aGVyZS4gVGhlIHNj
YWxlIGdvZXMgZmlyc3QgdG8KICAgICAvLyBhdm9pZCBvZmZzZXR0aW5nIG91ciBkZWZlcnJlZCBw
b3NpdGlvbiBieSBzY2FsaW5nIGF0IHRoZSB2aWV3cG9ydCBjZW50ZXIuCkBAIC0xMzgsOCArMTQz
LDEyIEBAIHZvaWQgUGFnZVZpZXdwb3J0Q29udHJvbGxlcjo6ZGlkUmVuZGVyRnJhbWUoY29uc3Qg
SW50U2l6ZSYgY29udGVudHNTaXplKQogICAgICAgICBtX2VmZmVjdGl2ZVNjYWxlSXNMb2NrZWQg
PSBmYWxzZTsKICAgICB9CiAgICAgaWYgKG1fdmlld3BvcnRQb3NJc0xvY2tlZCkgewotICAgICAg
ICBtX2NsaWVudC0+c2V0Vmlld3BvcnRQb3NpdGlvbihjbGFtcFZpZXdwb3J0VG9Db250ZW50cyht
X3ZpZXdwb3J0UG9zLCBtX2VmZmVjdGl2ZVNjYWxlKSk7Ci0gICAgICAgIG1fdmlld3BvcnRQb3NJ
c0xvY2tlZCA9IGZhbHNlOworICAgICAgICBGbG9hdFBvaW50IGNsYW1wZWRQb3MgPSBjbGFtcFZp
ZXdwb3J0VG9Db250ZW50cyhtX3ZpZXdwb3J0UG9zLCBtX2VmZmVjdGl2ZVNjYWxlKTsKKyAgICAg
ICAgLy8gVGhlcmUgbWlnaHQgYmUgcmVuZGVyZWQgZnJhbWVzIG5vdCBjb3ZlcmluZyBvdXIgcmVx
dWVzdGVkIHBvc2l0aW9uIHlldCwgd2FpdCBmb3IgaXQuCisgICAgICAgIGlmIChGbG9hdFJlY3Qo
Y2xhbXBlZFBvcywgbV92aWV3cG9ydFNpemUgLyBtX2VmZmVjdGl2ZVNjYWxlKS5pbnRlcnNlY3Rz
KGNvdmVyZWRSZWN0KSkgeworICAgICAgICAgICAgbV9jbGllbnQtPnNldFZpZXdwb3J0UG9zaXRp
b24oY2xhbXBlZFBvcyk7CisgICAgICAgICAgICBtX3ZpZXdwb3J0UG9zSXNMb2NrZWQgPSBmYWxz
ZTsKKyAgICAgICAgfQogICAgIH0KIH0KIApAQCAtMTYzLDggKzE3MiwxMiBAQCB2b2lkIFBhZ2VW
aWV3cG9ydENvbnRyb2xsZXI6OnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNvbnN0IEludFBvaW50JiBj
c3NQb3NpdGlvbikKICAgICBpZiAobV9hY3RpdmVEZWZlcnJlckNvdW50KQogICAgICAgICByZXR1
cm47CiAKLSAgICAvLyBLZWVwIHRoZSB1bmNsYW1wZWQgcG9zaXRpb24gaW4gY2FzZSB0aGUgY29u
dGVudHMgc2l6ZSBpcyBjaGFuZ2VkIGxhdGVyIG9uLgotICAgIGFwcGx5UG9zaXRpb25BZnRlclJl
bmRlcmluZ0NvbnRlbnRzKGNzc1Bvc2l0aW9uKTsKKyAgICBGbG9hdFJlY3QgZW5kVmlzaWJsZUNv
bnRlbnRSZWN0KGNsYW1wVmlld3BvcnRUb0NvbnRlbnRzKGNzc1Bvc2l0aW9uLCBtX2VmZmVjdGl2
ZVNjYWxlKSwgbV92aWV3cG9ydFNpemUgLyBtX2VmZmVjdGl2ZVNjYWxlKTsKKyAgICBpZiAobV9s
YXN0RnJhbWVDb3ZlcmVkUmVjdC5pbnRlcnNlY3RzKGVuZFZpc2libGVDb250ZW50UmVjdCkpCisg
ICAgICAgIG1fY2xpZW50LT5zZXRWaWV3cG9ydFBvc2l0aW9uKGVuZFZpc2libGVDb250ZW50UmVj
dC5sb2NhdGlvbigpKTsKKyAgICBlbHNlCisgICAgICAgIC8vIEtlZXAgdGhlIHVuY2xhbXBlZCBw
b3NpdGlvbiBpbiBjYXNlIHRoZSBjb250ZW50cyBzaXplIGlzIGNoYW5nZWQgbGF0ZXIgb24uCisg
ICAgICAgIGFwcGx5UG9zaXRpb25BZnRlclJlbmRlcmluZ0NvbnRlbnRzKGNzc1Bvc2l0aW9uKTsK
IH0KIAogdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpkaWRDaGFuZ2VWaWV3cG9ydFNpemUo
Y29uc3QgRmxvYXRTaXplJiBuZXdTaXplKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmgKaW5kZXggNzk3M2U4MmY3OGUzNDMyODJiMmMwYjIx
YTc2YmY5NGZiMzdiYTgyOC4uNTc3MWE1ZmRhMThkOGExOTBiMjYwYmJjM2JkN2NmYzBhMGQzZTQx
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRy
b2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJv
bGxlci5oCkBAIC05OCw3ICs5OCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpZENvbW1pdExvYWQo
KTsKICAgICB2b2lkIGRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBuZXdTaXplKTsKICAgICB2b2lkIGRpZENoYW5nZVZpZXdwb3J0QXR0cmlidXRlcyhjb25zdCBX
ZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmKTsKLSAgICB2b2lkIGRpZFJlbmRlckZyYW1lKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSk7CisgICAgdm9pZCBkaWRSZW5kZXJG
cmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6
OkludFJlY3QmIGNvdmVyZWRSZWN0KTsKICAgICB2b2lkIGluaXRpYWxWaWV3cG9ydFJlYWR5KCk7
CiAgICAgdm9pZCBwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYg
Y3NzUG9zaXRpb24pOwogCkBAIC0xMjksNiArMTI5LDcgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wg
bV92aWV3cG9ydFBvc0lzTG9ja2VkOwogICAgIGJvb2wgbV9lZmZlY3RpdmVTY2FsZUlzTG9ja2Vk
OworICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBtX2xhc3RGcmFtZUNvdmVyZWRSZWN0OwogCiAgICAg
ZnJpZW5kIGNsYXNzIFZpZXdwb3J0VXBkYXRlRGVmZXJyZXI7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IGVjNWEzYzNkOWE1YjFkYWY2YzQ5NTYwY2U3MTAw
Y2EwMDAxNWFjMDcuLjhlZjAwNTBjODU4OTUyNmRkOTFmYzMwNWVhYTNhMjMwMzljZjM5ZmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTM1Niw3ICszNTYsNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCBtYWludGFpbnNJbmFjdGl2ZVNlbGVjdGlvbigpIGNvbnN0IHsg
cmV0dXJuIG1fbWFpbnRhaW5zSW5hY3RpdmVTZWxlY3Rpb247IH0KICAgICB2b2lkIHNldE1haW50
YWluc0luYWN0aXZlU2VsZWN0aW9uKGJvb2wpOwogI2lmIFBMQVRGT1JNKFFUKQotICAgIHZvaWQg
ZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplKTsKKyAg
ICB2b2lkIGRpZFJlbmRlckZyYW1lKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGNvbnRlbnRzU2l6
ZSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgY292ZXJlZFJlY3QpOwogICAgIHZvaWQgcmVnaXN0
ZXJBcHBsaWNhdGlvblNjaGVtZShjb25zdCBTdHJpbmcmIHNjaGVtZSk7CiAgICAgdm9pZCByZXNv
bHZlQXBwbGljYXRpb25TY2hlbWVSZXF1ZXN0KFF0TmV0d29ya1JlcXVlc3REYXRhKTsKICAgICB2
b2lkIHNlbmRBcHBsaWNhdGlvblNjaGVtZVJlcGx5KGNvbnN0IFFRdWlja05ldHdvcmtSZXBseSop
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmNwcAppbmRleCBi
MjIxOTNjNDliYWI0YzhlYWQxODE3NmE1MjU1MTg5NWE4ZjRhZjM0Li44YjNhNjA2NzE3YmEzYWVj
MmMzZGNlNTNjNGJjYmU4YjJlNjUwMDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
cXQvUXRQYWdlQ2xpZW50LmNwcApAQCAtNzMsOSArNzMsOSBAQCB2b2lkIFF0UGFnZUNsaWVudDo6
c2V0Vmlld05lZWRzRGlzcGxheShjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0KQogICAgIFFR
dWlja1dlYlZpZXdQcml2YXRlOjpnZXQobV93ZWJWaWV3KS0+c2V0TmVlZHNEaXNwbGF5KCk7CiB9
CiAKLXZvaWQgUXRQYWdlQ2xpZW50OjpkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiBjb250ZW50c1NpemUpCit2b2lkIFF0UGFnZUNsaWVudDo6ZGlkUmVuZGVyRnJhbWUoY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JiBjb3ZlcmVkUmVjdCkKIHsKLSAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6Z2V0KG1fd2ViVmll
dyktPnZpZXdwb3J0Q29udHJvbGxlcigpLT5kaWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUpOwor
ICAgIFFRdWlja1dlYlZpZXdQcml2YXRlOjpnZXQobV93ZWJWaWV3KS0+dmlld3BvcnRDb250cm9s
bGVyKCktPmRpZFJlbmRlckZyYW1lKGNvbnRlbnRzU2l6ZSwgY292ZXJlZFJlY3QpOwogfQogCiB2
b2lkIFF0UGFnZUNsaWVudDo6cGFnZURpZFJlcXVlc3RTY3JvbGwoY29uc3QgSW50UG9pbnQmIHBv
cykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuaAppbmRleCA5MDNk
YTkxZTdkY2UzNmI3ZjY2ZThmMzQwZTg1M2QxYjY4ZTU1ZDcyLi44ZDQ5ZWFhMDYwYmI0NTI3MGFi
ZTI5YjQwMDlhYTA3OGE1YmYxMjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXRQYWdlQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0
UGFnZUNsaWVudC5oCkBAIC00Myw3ICs0Myw3IEBAIHB1YmxpYzoKIAogICAgIC8vIFFRdWlja1dl
YlZpZXcuCiAgICAgdmlydHVhbCB2b2lkIHNldFZpZXdOZWVkc0Rpc3BsYXkoY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYpOwotICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5kZXJGcmFtZShjb25zdCBXZWJD
b3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUpOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZW5kZXJG
cmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6
OkludFJlY3QmIGNvdmVyZWRSZWN0KTsKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFNpemUgdmll
d1NpemUoKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNWaWV3Rm9jdXNlZCgpOwogICAgIHZpcnR1YWwg
Ym9vbCBpc1ZpZXdWaXNpYmxlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvV2ViUGFnZVByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dl
YlBhZ2VQcm94eVF0LmNwcAppbmRleCAwNmQ4MjkwMDk1MzcwY2YxNWQ4NDc5MTBmZmNjNTU0MzNl
NGE0OTg5Li5lNjc5Mzg5OWVhMmU3NGYzNjdkN2UyMmI1ZWFiYjQ3N2Y1NTdiZWRmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUGFnZVByb3h5UXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQYWdlUHJveHlRdC5jcHAKQEAgLTkzLDkg
KzkzLDkgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmNhbmNlbENvbXBvc2l0aW9uKCkKICAgICBwcm9j
ZXNzKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNhbmNlbENvbXBvc2l0aW9uKCksIG1fcGFn
ZUlEKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmRpZFJlbmRlckZyYW1lKGNvbnN0IFdlYkNv
cmU6OkludFNpemUmIGNvbnRlbnRzU2l6ZSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRSZW5kZXJG
cmFtZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6
OkludFJlY3QmIGNvdmVyZWRSZWN0KQogewotICAgIG1fcGFnZUNsaWVudC0+ZGlkUmVuZGVyRnJh
bWUoY29udGVudHNTaXplKTsKKyAgICBtX3BhZ2VDbGllbnQtPmRpZFJlbmRlckZyYW1lKGNvbnRl
bnRzU2l6ZSwgY292ZXJlZFJlY3QpOwogfQogCiB2b2lkIFdlYlBhZ2VQcm94eTo6cmVnaXN0ZXJB
cHBsaWNhdGlvblNjaGVtZShjb25zdCBTdHJpbmcmIHNjaGVtZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5h
dGVkR3JhcGhpY3NMYXllci5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nv
b3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgKaW5kZXggZjRlYTJm
YjkyZmNiM2U1YTdhYTcwNjQyYWJiZjk5OWM3OTgwZDg2NC4uM2ViYTc5YjQyYzMwMjg3NTM4Nzlm
M2VmOWZiMmYwZGUwOWMyZjkwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvQ29vcmRpbmF0ZWRHcmFwaGljc0xheWVyLmgKQEAgLTEzMyw2ICsxMzMsNyBAQCBwdWJsaWM6
CiAKICAgICBHcmFwaGljc0xheWVyKiBtYXNrVGFyZ2V0KCkgY29uc3QgeyByZXR1cm4gbV9tYXNr
VGFyZ2V0OyB9CiAgICAgdm9pZCBzZXRNYXNrVGFyZ2V0KEdyYXBoaWNzTGF5ZXIqIGxheWVyKSB7
IG1fbWFza1RhcmdldCA9IGxheWVyOyB9CisgICAgSW50UmVjdCBjb3ZlclJlY3QoKSBjb25zdCB7
IHJldHVybiBtX21haW5CYWNraW5nU3RvcmUgPyBtX21haW5CYWNraW5nU3RvcmUtPmNvdmVyUmVj
dCgpIDogSW50UmVjdCgpOyB9CiAKICAgICBzdGF0aWMgdm9pZCBpbml0RmFjdG9yeSgpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRH
cmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvQ29vcmRpbmF0ZWRHcmFwaGljcy9MYXllclRyZWVDb29yZGluYXRvci5jcHAK
aW5kZXggMDhjNTEwYWFmY2YxZTMwZTNiOGFhNDMwMzY1ODhjOGY3MDJlYjhjZC4uNmVhZDBiNjNi
MDhiNjM4N2EwYTM4OGM3YjM4ODliMGFhNWNjZGI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0Nvb3JkaW5hdGVkR3JhcGhpY3MvTGF5ZXJUcmVlQ29vcmRp
bmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9Db29yZGlu
YXRlZEdyYXBoaWNzL0xheWVyVHJlZUNvb3JkaW5hdG9yLmNwcApAQCAtMjc0LDcgKzI3NCw4IEBA
IGJvb2wgTGF5ZXJUcmVlQ29vcmRpbmF0b3I6OmZsdXNoUGVuZGluZ0xheWVyQ2hhbmdlcygpCiAg
ICAgICAgIGRpZFN5bmMgPSB0cnVlOwogCiAgICAgICAgIEludFNpemUgY29udGVudHNTaXplID0g
cm91bmRlZEludFNpemUobV9ub25Db21wb3NpdGVkQ29udGVudExheWVyLT5zaXplKCkpOwotICAg
ICAgICBtX3dlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OkxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHk6
OkRpZFJlbmRlckZyYW1lKGNvbnRlbnRzU2l6ZSkpOworICAgICAgICBJbnRSZWN0IGNvdmVyZWRS
ZWN0ID0gdG9Db29yZGluYXRlZEdyYXBoaWNzTGF5ZXIobV9ub25Db21wb3NpdGVkQ29udGVudExh
eWVyLmdldCgpKS0+Y292ZXJSZWN0KCk7CisgICAgICAgIG1fd2ViUGFnZS0+c2VuZChNZXNzYWdl
czo6TGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eTo6RGlkUmVuZGVyRnJhbWUoY29udGVudHNTaXpl
LCBjb3ZlcmVkUmVjdCkpOwogICAgICAgICBtX3dhaXRpbmdGb3JVSVByb2Nlc3MgPSB0cnVlOwog
ICAgICAgICBtX3Nob3VsZFN5bmNGcmFtZSA9IGZhbHNlOwogICAgIH0K
</data>
<flag name="review"
          id="178212"
          type_id="1"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>