<?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>145884</bug_id>
          
          <creation_ts>2015-06-11 10:59:05 -0700</creation_ts>
          <short_desc>Remove WebPluginSiteDataManager</short_desc>
          <delta_ts>2015-06-11 11:34:24 -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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1101324</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-06-11 10:59:05 -0700</bug_when>
    <thetext>Remove WebPluginSiteDataManager</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1101326</commentid>
    <comment_count>1</comment_count>
      <attachid>254731</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-06-11 10:59:50 -0700</bug_when>
    <thetext>Created attachment 254731
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1101327</commentid>
    <comment_count>2</comment_count>
      <attachid>254731</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-06-11 11:01:10 -0700</bug_when>
    <thetext>Comment on attachment 254731
Patch

r=me, feel the burn!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1101337</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-06-11 11:34:24 -0700</bug_when>
    <thetext>Committed r185463: &lt;http://trac.webkit.org/changeset/185463&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>254731</attachid>
            <date>2015-06-11 10:59:50 -0700</date>
            <delta_ts>2015-06-11 11:01:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-145884-20150611105921.patch</filename>
            <type>text/plain</type>
            <size>38176</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg1NDYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNGZjMDZkZGRjNDY4NDk2
ZDk0NTY2NzIwYjQ0ZTMzYWM1NGU3ODcxNS4uNGQ5NGY5NGY1NTdlNzFkOTMzN2VmYTM5OGY1NTU0
ODgzOWMyYWMwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU3IEBACiAyMDE1LTA2LTExICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVtb3ZlIFdlYlBs
dWdpblNpdGVEYXRhTWFuYWdlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQ1ODg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwOgorICAgICAgICAo
V2ViS2l0OjpQbHVnaW5Qcm9jZXNzOjpjbGVhclNpdGVEYXRhKTogRGVsZXRlZC4KKyAgICAgICAg
KiBQbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuaDoKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNz
L1BsdWdpblByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dL
QVBJQ2FzdC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BsdWdpblNpdGVEYXRhTWFuYWdlci5jcHA6CisgICAg
ICAgICogVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc01hbmFnZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzTWFuYWdlcjo6Y2xlYXJTaXRlRGF0YSk6IERlbGV0ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc01hbmFnZXIuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzUHJveHk6OmNsZWFyU2l0ZURhdGEpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzUHJveHk6OnBsdWdpblByb2Nlc3NDcmFzaGVk
T3JGYWlsZWRUb0xhdW5jaCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nl
c3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6
UGx1Z2luUHJvY2Vzc1Byb3h5OjpkaWRDbGVhclNpdGVEYXRhKTogRGVsZXRlZC4KKyAgICAgICAg
KiBVSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICog
VUlQcm9jZXNzL1BsdWdpbnMvV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNwcDogUmVtb3ZlZC4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpHZXRTaXRlc1dpdGhE
YXRhU3RhdGU6OkdldFNpdGVzV2l0aERhdGFTdGF0ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJL
aXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6R2V0U2l0ZXNXaXRoRGF0YVN0YXRlOjpnZXRT
aXRlc1dpdGhEYXRhRm9yTmV4dFBsdWdpbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Oldl
YlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6R2V0U2l0ZXNXaXRoRGF0YVN0YXRlOjpkaWRHZXRTaXRl
c1dpdGhEYXRhRm9yU2luZ2xlUGx1Z2luKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6V2Vi
UGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpDbGVhclNpdGVEYXRhU3RhdGU6OkNsZWFyU2l0ZURhdGFT
dGF0ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdl
cjo6Q2xlYXJTaXRlRGF0YVN0YXRlOjpjbGVhclNpdGVEYXRhRm9yTmV4dFBsdWdpbik6IERlbGV0
ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6Q2xlYXJTaXRl
RGF0YVN0YXRlOjpkaWRDbGVhclNpdGVEYXRhRm9yU2luZ2xlUGx1Z2luKTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYktpdDo6V2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpjcmVhdGUpOiBEZWxldGVk
LgorICAgICAgICAoV2ViS2l0OjpXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OldlYlBsdWdpblNp
dGVEYXRhTWFuYWdlcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVE
YXRhTWFuYWdlcjo6fldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcik6IERlbGV0ZWQuCisgICAgICAg
IChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6aW52YWxpZGF0ZSk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6Z2V0U2l0ZXNXaXRo
RGF0YSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdl
cjo6ZGlkR2V0U2l0ZXNXaXRoRGF0YSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBs
dWdpblNpdGVEYXRhTWFuYWdlcjo6Y2xlYXJTaXRlRGF0YSk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6ZGlkQ2xlYXJTaXRlRGF0YSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6ZGlkR2V0U2l0
ZXNXaXRoRGF0YUZvclNpbmdsZVBsdWdpbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Oldl
YlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6ZGlkR2V0U2l0ZXNXaXRoRGF0YUZvckFsbFBsdWdpbnMp
OiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OmRp
ZENsZWFyU2l0ZURhdGFGb3JTaW5nbGVQbHVnaW4pOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0
OjpXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OmRpZENsZWFyU2l0ZURhdGFGb3JBbGxQbHVnaW5z
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lucy9XZWJQbHVnaW5TaXRlRGF0
YU1hbmFnZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKFdlYktpdDo6V2ViUGx1Z2luU2l0ZURhdGFN
YW5hZ2VyOjpwcm9jZXNzUG9vbCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdp
blNpdGVEYXRhTWFuYWdlcjo6Y2xlYXJQcm9jZXNzUG9vbCk6IERlbGV0ZWQuCisgICAgICAgICog
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
c1Bvb2w6On5XZWJQcm9jZXNzUG9vbCk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCisyMDE1LTA2
LTExICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKICAgICAgICAgTWFr
ZSBXS1dlYnNpdGVEYXRhU3RvcmVSZWYgYmFja2VkIGJ5IGFuIEFQSTo6V2Vic2l0ZURhdGFTdG9y
ZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ1ODgy
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vz
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwCmlu
ZGV4IDU3NDk5YTZjYmU3YzljZjU0MTUzODcyOGFhOGE2MjYwMDEyZWE2MzIuLjEwYjNlZDRjOWUx
MjVlMmU1NTMzY2JmMDA3MGM4OTBkZGNhNjFiMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGx1
Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmNwcApAQCAtMTk5LDIxICsxOTksNiBAQCB2b2lkIFBs
dWdpblByb2Nlc3M6OmdldFNpdGVzV2l0aERhdGEodWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBw
YXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpQbHVnaW5Qcm9jZXNzUHJv
eHk6OkRpZEdldFNpdGVzV2l0aERhdGEoc2l0ZXMsIGNhbGxiYWNrSUQpLCAwKTsKIH0KIAotdm9p
ZCBQbHVnaW5Qcm9jZXNzOjpjbGVhclNpdGVEYXRhKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRl
cywgdWludDY0X3QgZmxhZ3MsIHVpbnQ2NF90IG1heEFnZUluU2Vjb25kcywgdWludDY0X3QgY2Fs
bGJhY2tJRCkKLXsKLSAgICBpZiAoTmV0c2NhcGVQbHVnaW5Nb2R1bGUqIG1vZHVsZSA9IG5ldHNj
YXBlUGx1Z2luTW9kdWxlKCkpIHsKLSAgICAgICAgaWYgKHNpdGVzLmlzRW1wdHkoKSkgewotICAg
ICAgICAgICAgLy8gQ2xlYXIgZXZlcnl0aGluZy4KLSAgICAgICAgICAgIG1vZHVsZS0+Y2xlYXJT
aXRlRGF0YShTdHJpbmcoKSwgZmxhZ3MsIG1heEFnZUluU2Vjb25kcyk7Ci0gICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpdGVzLnNpemUoKTsgKytp
KQotICAgICAgICAgICAgICAgIG1vZHVsZS0+Y2xlYXJTaXRlRGF0YShzaXRlc1tpXSwgZmxhZ3Ms
IG1heEFnZUluU2Vjb25kcyk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBwYXJlbnRQcm9jZXNz
Q29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpQbHVnaW5Qcm9jZXNzUHJveHk6OkRpZENsZWFy
U2l0ZURhdGEoY2FsbGJhY2tJRCksIDApOwotfQotCiB2b2lkIFBsdWdpblByb2Nlc3M6OmRlbGV0
ZVdlYnNpdGVEYXRhKHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZp
ZWRTaW5jZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsKICAgICBpZiAoYXV0byogbW9kdWxlID0g
bmV0c2NhcGVQbHVnaW5Nb2R1bGUoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGx1
Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNz
L1BsdWdpblByb2Nlc3MuaAppbmRleCBjMzkxOWFiOTk1MTkwNDY1NGE5YzkyYzk4ZmY0YWMyMDc1
MTNkYzBmLi4xY2M0YmY3MWE5ZjkwZjhiYTQyMWQzYThhMjA0ZjI0M2E0YTk1ZmU0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuaApAQCAtMTAwLDcgKzEw
MCw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbigpOwog
CiAgICAgdm9pZCBnZXRTaXRlc1dpdGhEYXRhKHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIHZv
aWQgY2xlYXJTaXRlRGF0YShjb25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90IGZs
YWdzLCB1aW50NjRfdCBtYXhBZ2VJblNlY29uZHMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogICAg
IHZvaWQgZGVsZXRlV2Vic2l0ZURhdGEoc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9w
b2ludCBtb2RpZmllZFNpbmNlLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKICAgICB2b2lkIGRlbGV0
ZVdlYnNpdGVEYXRhRm9ySG9zdE5hbWVzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBob3N0TmFtZXMs
IHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbHVn
aW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9QbHVn
aW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggYmJkNDU0MGMyZWE0MjFl
OGY2NmI2OWMyOGY3OTg2NTJjMWIxMGVlNi4uMDcwZTk0MDBjYzhkZTA5YWE1NWUxZTAxOTM1NjJk
ZTZiMWNmMjA2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9QbHVn
aW5Qcm9jZXNzLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3Mv
UGx1Z2luUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtMzUsMTAgKzM1LDYgQEAgbWVzc2FnZXMgLT4g
UGx1Z2luUHJvY2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgIyBEaWRHZXRTaXRlc1dpdGhEYXRh
IG1lc3NhZ2Ugd2l0aCB0aGUgc2l0ZXMuCiAgICAgR2V0U2l0ZXNXaXRoRGF0YSh1aW50NjRfdCBj
YWxsYmFja0lEKQogCi0gICAgIyBBc2tzIHRoZSBwbHVnLWluIHRvIGNsZWFyIGRhdGEgZm9yIHRo
ZSBnaXZlbiBzaXRlcy4gVGhlIHBsdWctaW4gcHJvY2VzcyBzZW5kcyBiYWNrCi0gICAgIyBhIERp
ZENsZWFyU2l0ZURhdGEgbWVzc2FnZSB3aGVuIGRvbmUuCi0gICAgQ2xlYXJTaXRlRGF0YShWZWN0
b3I8U3RyaW5nPiBzaXRlcywgdWludDY0X3QgZmxhZ3MsIHVpbnQ2NF90IG1heEFnZUluU2Vjb25k
cywgdWludDY0X3QgY2FsbGJhY2tJRCkKLQogICAgIERlbGV0ZVdlYnNpdGVEYXRhKHN0ZDo6Y2hy
b25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5jZSwgdWludDY0X3QgY2Fs
bGJhY2tJRCkKICAgICBEZWxldGVXZWJzaXRlRGF0YUZvckhvc3ROYW1lcyhWZWN0b3I8U3RyaW5n
PiBob3N0TmFtZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0FQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS0FQSUNhc3QuaAppbmRleCA2MTNkMGVlNWZlOWY3YmI3MjM2ZWExMTUyMDE4
Zjg5MjdlNjg2MzM5Li43MTAxMGFhOTNhYzA3NThkNGQyNGU4OTA0NjBmNDMwNmM5ODBjZDk2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oCkBAIC0xMDIsNyAr
MTAyLDYgQEAgY2xhc3MgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXJQcm94eTsKIGNsYXNzIFdl
Yk9yaWdpbkRhdGFNYW5hZ2VyUHJveHk7CiBjbGFzcyBXZWJQYWdlR3JvdXA7CiBjbGFzcyBXZWJQ
YWdlUHJveHk7Ci1jbGFzcyBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI7CiBjbGFzcyBXZWJQcmVm
ZXJlbmNlczsKIGNsYXNzIFdlYlByb2Nlc3NQb29sOwogY2xhc3MgV2ViUHJvdGVjdGlvblNwYWNl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAppbmRleCAy
OWM4ZGQyNzE5OTVmNjc3MjRkZmVjNGRkZWUwNDRlMmEyZWJiZTI5Li44NWE3N2ViYzYwODQ4OTA1
NTQ4NDBhZTJhYzlkMzU4NzJhZDg0MDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tDb250ZXh0LmNwcApAQCAtMzksNyArMzksNiBAQAogI2luY2x1ZGUgIldLUmV0YWlu
UHRyLmgiCiAjaW5jbHVkZSAiV2ViQ2VydGlmaWNhdGVJbmZvLmgiCiAjaW5jbHVkZSAiV2ViSWNv
bkRhdGFiYXNlLmgiCi0jaW5jbHVkZSAiV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmgiCiAjaW5j
bHVkZSAiV2ViUHJvY2Vzc1Bvb2wuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1BsdWdpblNpdGVEYXRhTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tQbHVnaW5TaXRlRGF0YU1hbmFnZXIuY3BwCmluZGV4IDM2YzAyMDEzMWM0
NmMwOTgzNzcyMTdlZmE5YWU3NmI5OGZmMmE1N2IuLjEwMTVmYzRmMmZhMDMwMmM3ZGYyYTIwMThk
OWI5NWUyYjhiYTNjMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1BsdWdpblNpdGVEYXRhTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNwcApAQCAtMjgsNyArMjgsNiBAQAog
CiAjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCiAjaW5jbHVkZSAiV0tBUElDYXN0LmgiCi0jaW5jbHVk
ZSAiV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2wu
aCIKICNpbmNsdWRlICJXZWJzaXRlRGF0YVJlY29yZC5oIgogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzTWFuYWdlci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzTWFuYWdlci5jcHAKaW5k
ZXggNTY2YTJjMDY5MGNkMTMwYmVjMGM2NmMwMDI4NGEwYzhlYWMzZDVlZS4uY2M1ZDVlYjBjMjQ0
ZjVjMDIwYWFkN2ZjNWVhZDg0YjEwNTViMGI1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc01hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NNYW5hZ2VyLmNwcApAQCAtMTE1
LDEyICsxMTUsNiBAQCB2b2lkIFBsdWdpblByb2Nlc3NNYW5hZ2VyOjpkZWxldGVXZWJzaXRlRGF0
YUZvckhvc3ROYW1lcyhjb25zdCBQbHVnaW5Nb2R1bGVJbmZvJgogICAgIHBsdWdpblByb2Nlc3Mt
PmRlbGV0ZVdlYnNpdGVEYXRhRm9ySG9zdE5hbWVzKGhvc3ROYW1lcywgV1RGOjptb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgUGx1Z2luUHJvY2Vzc01hbmFnZXI6OmNsZWFyU2l0
ZURhdGEoY29uc3QgUGx1Z2luTW9kdWxlSW5mbyYgcGx1Z2luLCBXZWJQbHVnaW5TaXRlRGF0YU1h
bmFnZXIqIHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlciwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHNp
dGVzLCB1aW50NjRfdCBmbGFncywgdWludDY0X3QgbWF4QWdlSW5TZWNvbmRzLCB1aW50NjRfdCBj
YWxsYmFja0lEKQotewotICAgIFBsdWdpblByb2Nlc3NQcm94eSogcGx1Z2luUHJvY2VzcyA9IGdl
dE9yQ3JlYXRlUGx1Z2luUHJvY2VzcyhwbHVnaW5Qcm9jZXNzVG9rZW4ocGx1Z2luLCBQbHVnaW5Q
cm9jZXNzVHlwZU5vcm1hbCwgUGx1Z2luUHJvY2Vzc1NhbmRib3hQb2xpY3lOb3JtYWwpKTsKLSAg
ICBwbHVnaW5Qcm9jZXNzLT5jbGVhclNpdGVEYXRhKHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlciwg
c2l0ZXMsIGZsYWdzLCBtYXhBZ2VJblNlY29uZHMsIGNhbGxiYWNrSUQpOwotfQotCiBQbHVnaW5Q
cm9jZXNzUHJveHkqIFBsdWdpblByb2Nlc3NNYW5hZ2VyOjpnZXRPckNyZWF0ZVBsdWdpblByb2Nl
c3ModWludDY0X3QgcGx1Z2luUHJvY2Vzc1Rva2VuKQogewogICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgbV9wbHVnaW5Qcm9jZXNzZXMuc2l6ZSgpOyArK2kpIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NNYW5hZ2VyLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzTWFuYWdlci5oCmluZGV4
IDg5YWQwZDZmODAxZTUyOTYxNTgxNjdjNDIzMWRjODFkMDUzM2ZmNTEuLjgxNTIxMjVkYWVmOGQz
NTllNGJmNmI0MzNmY2EwZmM3NzBiODFkN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc01hbmFnZXIuaApAQCAtNDksNyArNDks
NiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFBsdWdpbkluZm9TdG9yZTsKIGNsYXNzIFBs
dWdpblByb2Nlc3NQcm94eTsKIGNsYXNzIFdlYlByb2Nlc3NQcm94eTsKLWNsYXNzIFdlYlBsdWdp
blNpdGVEYXRhTWFuYWdlcjsKIAogY2xhc3MgUGx1Z2luUHJvY2Vzc01hbmFnZXIgewogICAgIFdU
Rl9NQUtFX05PTkNPUFlBQkxFKFBsdWdpblByb2Nlc3NNYW5hZ2VyKTsKQEAgLTY1LDcgKzY0LDYg
QEAgcHVibGljOgogICAgIHZvaWQgZmV0Y2hXZWJzaXRlRGF0YShjb25zdCBQbHVnaW5Nb2R1bGVJ
bmZvJiwgc3RkOjpmdW5jdGlvbjx2b2lkIChWZWN0b3I8U3RyaW5nPik+IGNvbXBsZXRpb25IYW5k
bGVyKTsKICAgICB2b2lkIGRlbGV0ZVdlYnNpdGVEYXRhKGNvbnN0IFBsdWdpbk1vZHVsZUluZm8m
LCBzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2luY2UsIHN0
ZDo6ZnVuY3Rpb248dm9pZCAoKT4gY29tcGxldGlvbkhhbmRsZXIpOwogICAgIHZvaWQgZGVsZXRl
V2Vic2l0ZURhdGFGb3JIb3N0TmFtZXMoY29uc3QgUGx1Z2luTW9kdWxlSW5mbyYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBob3N0TmFtZXMsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT4gY29tcGxldGlv
bkhhbmRsZXIpOwotICAgIHZvaWQgY2xlYXJTaXRlRGF0YShjb25zdCBQbHVnaW5Nb2R1bGVJbmZv
JiwgV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyKiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHNpdGVz
LCB1aW50NjRfdCBmbGFncywgdWludDY0X3QgbWF4QWdlSW5TZWNvbmRzLCB1aW50NjRfdCBjYWxs
YmFja0lEKTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGlubGluZSBQcm9jZXNzU3VwcHJl
c3Npb25EaXNhYmxlZFRva2VuIHByb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkVG9rZW4oKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNz
UHJveHkuY3BwCmluZGV4IGNjY2RhM2Y1ZGEyYmIyN2Y1YWUyYTcxNTQ0MDAzMTQxNjRhNTE2ZGIu
LmY3NjI1NTM5YWYzZDVkZDViYjIwNzJhZTMzZmViZGIxOWQwYmYyZWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmNw
cApAQCAtMzMsNyArMzMsNiBAQAogI2luY2x1ZGUgIlBsdWdpblByb2Nlc3NNYW5hZ2VyLmgiCiAj
aW5jbHVkZSAiUGx1Z2luUHJvY2Vzc01lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViQ29yZUFyZ3Vt
ZW50Q29kZXJzLmgiCi0jaW5jbHVkZSAiV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmgiCiAjaW5j
bHVkZSAiV2ViUHJvY2Vzc1Bvb2wuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUHJveHkuaCIKICNp
bmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CkBAIC0xNDksMjUgKzE0OCw2IEBAIHZv
aWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpkZWxldGVXZWJzaXRlRGF0YUZvckhvc3ROYW1lcyhjb25z
dCBWZWN0b3I8U3RyaW5nPiYgaG9zCiAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpQ
bHVnaW5Qcm9jZXNzOjpEZWxldGVXZWJzaXRlRGF0YUZvckhvc3ROYW1lcyhob3N0TmFtZXMsIGNh
bGxiYWNrSUQpLCAwKTsKIH0KIAotdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OmNsZWFyU2l0ZURh
dGEoV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyKiB3ZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRlcywgdWludDY0X3QgZmxhZ3MsIHVpbnQ2NF90IG1heEFn
ZUluU2Vjb25kcywgdWludDY0X3QgY2FsbGJhY2tJRCkKLXsKLSAgICBBU1NFUlQoIW1fcGVuZGlu
Z0NsZWFyU2l0ZURhdGFSZXBsaWVzLmNvbnRhaW5zKGNhbGxiYWNrSUQpKTsKLSAgICBtX3BlbmRp
bmdDbGVhclNpdGVEYXRhUmVwbGllcy5zZXQoY2FsbGJhY2tJRCwgd2ViUGx1Z2luU2l0ZURhdGFN
YW5hZ2VyKTsKLQotICAgIGlmIChzdGF0ZSgpID09IFN0YXRlOjpMYXVuY2hpbmcpIHsKLSAgICAg
ICAgQ2xlYXJTaXRlRGF0YVJlcXVlc3QgcmVxdWVzdDsKLSAgICAgICAgcmVxdWVzdC5zaXRlcyA9
IHNpdGVzOwotICAgICAgICByZXF1ZXN0LmZsYWdzID0gZmxhZ3M7Ci0gICAgICAgIHJlcXVlc3Qu
bWF4QWdlSW5TZWNvbmRzID0gbWF4QWdlSW5TZWNvbmRzOwotICAgICAgICByZXF1ZXN0LmNhbGxi
YWNrSUQgPSBjYWxsYmFja0lEOwotICAgICAgICBtX3BlbmRpbmdDbGVhclNpdGVEYXRhUmVxdWVz
dHMuYXBwZW5kKHJlcXVlc3QpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgLy8gQXNr
IHRoZSBwbHVnLWluIHByb2Nlc3MgdG8gY2xlYXIgdGhlIHNpdGUgZGF0YS4KLSAgICBtX2Nvbm5l
Y3Rpb24tPnNlbmQoTWVzc2FnZXM6OlBsdWdpblByb2Nlc3M6OkNsZWFyU2l0ZURhdGEoc2l0ZXMs
IGZsYWdzLCBtYXhBZ2VJblNlY29uZHMsIGNhbGxiYWNrSUQpLCAwKTsKLX0KLQogdm9pZCBQbHVn
aW5Qcm9jZXNzUHJveHk6OnBsdWdpblByb2Nlc3NDcmFzaGVkT3JGYWlsZWRUb0xhdW5jaCgpCiB7
CiAgICAgLy8gVGhlIHBsdWctaW4gcHJvY2VzcyBtdXN0IGhhdmUgY3Jhc2hlZCBvciBleGl0ZWQs
IHNlbmQgYW55IHBlbmRpbmcgc3luYyByZXBsaWVzIHdlIG1pZ2h0IGhhdmUuCkBAIC0xOTgsOSAr
MTc4LDYgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OnBsdWdpblByb2Nlc3NDcmFzaGVkT3JG
YWlsZWRUb0xhdW5jaCgpCiAgICAgICAgIGNhbGxiYWNrKCk7CiAgICAgbV9wZW5kaW5nRGVsZXRl
V2Vic2l0ZURhdGFGb3JIb3N0TmFtZXNDYWxsYmFja3MuY2xlYXIoKTsKIAotICAgIHdoaWxlICgh
bV9wZW5kaW5nQ2xlYXJTaXRlRGF0YVJlcGxpZXMuaXNFbXB0eSgpKQotICAgICAgICBkaWRDbGVh
clNpdGVEYXRhKG1fcGVuZGluZ0NsZWFyU2l0ZURhdGFSZXBsaWVzLmJlZ2luKCktPmtleSk7Ci0K
ICAgICAvLyBUZWxsIHRoZSBwbHVnLWluIHByb2Nlc3MgbWFuYWdlciB0byBmb3JnZXQgYWJvdXQg
dGhpcyBwbHVnLWluIHByb2Nlc3MgcHJveHkuIFRoaXMgbWF5IGNhdXNlIHVzIHRvIGJlIGRlbGV0
ZWQuCiAgICAgbV9wbHVnaW5Qcm9jZXNzTWFuYWdlci0+cmVtb3ZlUGx1Z2luUHJvY2Vzc1Byb3h5
KHRoaXMpOwogfQpAQCAtMjczLDEyICsyNTAsNiBAQCB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6
ZGlkRmluaXNoTGF1bmNoaW5nKFByb2Nlc3NMYXVuY2hlciosIElQQzo6Q29ubmVjdGlvbjo6SQog
ICAgICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OlBsdWdpblByb2Nlc3M6OkRlbGV0
ZVdlYnNpdGVEYXRhRm9ySG9zdE5hbWVzKHJlcXVlc3QuaG9zdE5hbWVzLCByZXF1ZXN0LmNhbGxi
YWNrSUQpLCAwKTsKICAgICBtX3BlbmRpbmdEZWxldGVXZWJzaXRlRGF0YUZvckhvc3ROYW1lc1Jl
cXVlc3RzLmNsZWFyKCk7CiAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fcGVuZGluZ0Ns
ZWFyU2l0ZURhdGFSZXF1ZXN0cy5zaXplKCk7ICsraSkgewotICAgICAgICBjb25zdCBDbGVhclNp
dGVEYXRhUmVxdWVzdCYgcmVxdWVzdCA9IG1fcGVuZGluZ0NsZWFyU2l0ZURhdGFSZXF1ZXN0c1tp
XTsKLSAgICAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpQbHVnaW5Qcm9jZXNzOjpD
bGVhclNpdGVEYXRhKHJlcXVlc3Quc2l0ZXMsIHJlcXVlc3QuZmxhZ3MsIHJlcXVlc3QubWF4QWdl
SW5TZWNvbmRzLCByZXF1ZXN0LmNhbGxiYWNrSUQpLCAwKTsKLSAgICB9Ci0gICAgbV9wZW5kaW5n
Q2xlYXJTaXRlRGF0YVJlcXVlc3RzLmNsZWFyKCk7Ci0KICAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgbV9udW1QZW5kaW5nQ29ubmVjdGlvblJlcXVlc3RzOyArK2kpCiAgICAgICAgIG1fY29u
bmVjdGlvbi0+c2VuZChNZXNzYWdlczo6UGx1Z2luUHJvY2Vzczo6Q3JlYXRlV2ViUHJvY2Vzc0Nv
bm5lY3Rpb24oKSwgMCk7CiAgICAgCkBAIC0zMTIsMTQgKzI4Myw2IEBAIHZvaWQgUGx1Z2luUHJv
Y2Vzc1Byb3h5OjpkaWRHZXRTaXRlc1dpdGhEYXRhKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRl
cywgdWludDY0CiAgICAgY2FsbGJhY2soc2l0ZXMpOwogfQogCi12b2lkIFBsdWdpblByb2Nlc3NQ
cm94eTo6ZGlkQ2xlYXJTaXRlRGF0YSh1aW50NjRfdCBjYWxsYmFja0lEKQotewotICAgIFJlZlB0
cjxXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI+IHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlciA9IG1f
cGVuZGluZ0NsZWFyU2l0ZURhdGFSZXBsaWVzLnRha2UoY2FsbGJhY2tJRCk7Ci0gICAgQVNTRVJU
KHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcik7Ci0gICAgCi0gICAgd2ViUGx1Z2luU2l0ZURhdGFN
YW5hZ2VyLT5kaWRDbGVhclNpdGVEYXRhRm9yU2luZ2xlUGx1Z2luKGNhbGxiYWNrSUQpOwotfQot
CiB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6ZGlkRGVsZXRlV2Vic2l0ZURhdGEodWludDY0X3Qg
Y2FsbGJhY2tJRCkKIHsKICAgICBhdXRvIGNhbGxiYWNrID0gbV9wZW5kaW5nRGVsZXRlV2Vic2l0
ZURhdGFDYWxsYmFja3MudGFrZShjYWxsYmFja0lEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmgKaW5kZXggMDI4N2MwODdk
ODg5OTBmOGE0NDNiYzNkZTI4YmJlMmMxM2MwMTM2NS4uODZkN2JmOTczNTkwMGM0MmZmOWVkMWE4
NGZiNGVlNzA3OWIwNmY5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Bs
dWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmgKQEAgLTQ2LDcgKzQ2LDYgQEAgT0JKQ19DTEFT
UyBXS1BsYWNlaG9sZGVyTW9kYWxXaW5kb3c7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3Mg
UGx1Z2luUHJvY2Vzc01hbmFnZXI7Ci1jbGFzcyBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI7CiBj
bGFzcyBXZWJQcm9jZXNzUHJveHk7CiBzdHJ1Y3QgUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczsKIApAQCAtODMsOSArODIsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZWxldGVXZWJzaXRl
RGF0YShzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2luY2Us
IHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT4gY29tcGxldGlvbkhhbmRsZXIpOwogICAgIHZvaWQgZGVs
ZXRlV2Vic2l0ZURhdGFGb3JIb3N0TmFtZXMoY29uc3QgVmVjdG9yPFN0cmluZz4mIGhvc3ROYW1l
cywgc3RkOjpmdW5jdGlvbjx2b2lkICgpPiBjb21wbGV0aW9uSGFuZGxlcik7CiAKLSAgICAvLyBB
c2tzIHRoZSBwbHVnLWluIHByb2Nlc3MgdG8gY2xlYXIgdGhlIGRhdGEgZm9yIHRoZSBnaXZlbiBz
aXRlcy4KLSAgICB2b2lkIGNsZWFyU2l0ZURhdGEoV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyKiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHNpdGVzLCB1aW50NjRfdCBmbGFncywgdWludDY0X3QgbWF4
QWdlSW5TZWNvbmRzLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKLQogICAgIGJvb2wgaXNWYWxpZCgp
IGNvbnN0IHsgcmV0dXJuIG1fY29ubmVjdGlvbjsgfQogCiAjaWYgUExBVEZPUk0oQ09DT0EpCkBA
IC0xMjksNyArMTI1LDYgQEAgcHJpdmF0ZToKICAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAg
dm9pZCBkaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihjb25zdCBJUEM6OkF0dGFjaG1lbnQm
LCBib29sIHN1cHBvcnRzQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb24pOwogICAgIHZv
aWQgZGlkR2V0U2l0ZXNXaXRoRGF0YShjb25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2
NF90IGNhbGxiYWNrSUQpOwotICAgIHZvaWQgZGlkQ2xlYXJTaXRlRGF0YSh1aW50NjRfdCBjYWxs
YmFja0lEKTsKICAgICB2b2lkIGRpZERlbGV0ZVdlYnNpdGVEYXRhKHVpbnQ2NF90IGNhbGxiYWNr
SUQpOwogICAgIHZvaWQgZGlkRGVsZXRlV2Vic2l0ZURhdGFGb3JIb3N0TmFtZXModWludDY0X3Qg
Y2FsbGJhY2tJRCk7CiAKQEAgLTE4NCwxNSArMTc5LDYgQEAgcHJpdmF0ZToKICAgICBWZWN0b3I8
RGVsZXRlV2Vic2l0ZURhdGFGb3JIb3N0TmFtZXNSZXF1ZXN0PiBtX3BlbmRpbmdEZWxldGVXZWJz
aXRlRGF0YUZvckhvc3ROYW1lc1JlcXVlc3RzOwogICAgIEhhc2hNYXA8dWludDY0X3QsIHN0ZDo6
ZnVuY3Rpb248dm9pZCAoKT4+IG1fcGVuZGluZ0RlbGV0ZVdlYnNpdGVEYXRhRm9ySG9zdE5hbWVz
Q2FsbGJhY2tzOwogCi0gICAgc3RydWN0IENsZWFyU2l0ZURhdGFSZXF1ZXN0IHsKLSAgICAgICAg
VmVjdG9yPFN0cmluZz4gc2l0ZXM7Ci0gICAgICAgIHVpbnQ2NF90IGZsYWdzOwotICAgICAgICB1
aW50NjRfdCBtYXhBZ2VJblNlY29uZHM7Ci0gICAgICAgIHVpbnQ2NF90IGNhbGxiYWNrSUQ7Ci0g
ICAgfTsKLSAgICBWZWN0b3I8Q2xlYXJTaXRlRGF0YVJlcXVlc3Q+IG1fcGVuZGluZ0NsZWFyU2l0
ZURhdGFSZXF1ZXN0czsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8V2ViUGx1Z2luU2l0
ZURhdGFNYW5hZ2VyPj4gbV9wZW5kaW5nQ2xlYXJTaXRlRGF0YVJlcGxpZXM7Ci0KICAgICAvLyBJ
ZiBjcmVhdGVQbHVnaW5Db25uZWN0aW9uIGlzIGNhbGxlZCB3aGlsZSB0aGUgcHJvY2VzcyBpcyBz
dGlsbCBsYXVuY2hpbmcgd2UnbGwga2VlcCBjb3VudCBvZiBpdCBhbmQgc2VuZCBhIGJ1bmNoIG9m
IHJlcXVlc3RzCiAgICAgLy8gd2hlbiB0aGUgcHJvY2VzcyBmaW5pc2hlcyBsYXVuY2hpbmcuCiAg
ICAgdW5zaWduZWQgbV9udW1QZW5kaW5nQ29ubmVjdGlvblJlcXVlc3RzOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1By
b3h5Lm1lc3NhZ2VzLmluCmluZGV4IGM1NTAxY2YwMTQ5ZmJjY2YwZDlkMWU1NWRjNGViYzg0NzAx
OTk2MzUuLjc2NjNlMTA1ZTVkZDhjNDA5NzM2NjMyYWY2NDcyYmQwNmI2MmI0ZGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5t
ZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Q
cm9jZXNzUHJveHkubWVzc2FnZXMuaW4KQEAgLTI2LDcgKzI2LDYgQEAgbWVzc2FnZXMgLT4gUGx1
Z2luUHJvY2Vzc1Byb3h5IHsKICAgICBEaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihJUEM6
OkF0dGFjaG1lbnQgY29ubmVjdGlvbklkZW50aWZpZXIsIGJvb2wgc3VwcG9ydHNBc3luY2hyb25v
dXNQbHVnaW5Jbml0aWFsaXphdGlvbikKIAogICAgIERpZEdldFNpdGVzV2l0aERhdGEoVmVjdG9y
PFN0cmluZz4gc2l0ZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCi0gICAgRGlkQ2xlYXJTaXRlRGF0
YSh1aW50NjRfdCBjYWxsYmFja0lEKQogICAgIERpZERlbGV0ZVdlYnNpdGVEYXRhKHVpbnQ2NF90
IGNhbGxiYWNrSUQpCiAgICAgRGlkRGVsZXRlV2Vic2l0ZURhdGFGb3JIb3N0TmFtZXModWludDY0
X3QgY2FsbGJhY2tJRCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Bs
dWdpbnMvV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9QbHVnaW5zL1dlYlBsdWdpblNpdGVEYXRhTWFuYWdlci5jcHAKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDkwZjVlNjgwYWE2ZTkyN2MzZWIyYTgxZjYwNDA4YjJkMzQ1MjAzZTAu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNwcAorKysg
L2Rldi9udWxsCkBAIC0xLDI1NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExLCAy
MDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIldlYlBsdWdpblNpdGVEYXRhTWFuYWdlci5oIgotCi0jaWYg
RU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0KLSNpbmNsdWRlICJBUElBcnJheS5oIgotI2lu
Y2x1ZGUgIlBsdWdpblByb2Nlc3NNYW5hZ2VyLmgiCi0jaW5jbHVkZSAiV2ViUHJvY2Vzc01lc3Nh
Z2VzLmgiCi0jaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2wuaCIKLQotdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBXZWJQbHVnaW5TaXRlRGF0YU1h
bmFnZXI6OkdldFNpdGVzV2l0aERhdGFTdGF0ZSB7Ci1wdWJsaWM6Ci0gICAgZXhwbGljaXQgR2V0
U2l0ZXNXaXRoRGF0YVN0YXRlKFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlciogd2ViUGx1Z2luU2l0
ZURhdGFNYW5hZ2VyLCB1aW50NjRfdCBjYWxsYmFja0lEKQotICAgICAgICA6IG1fd2ViUGx1Z2lu
U2l0ZURhdGFNYW5hZ2VyKHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcikKLSAgICAgICAgLCBtX2Nh
bGxiYWNrSUQoY2FsbGJhY2tJRCkKLSAgICAgICAgLCBtX3BsdWdpbnMod2ViUGx1Z2luU2l0ZURh
dGFNYW5hZ2VyLT5tX3Byb2Nlc3NQb29sLT5wbHVnaW5JbmZvU3RvcmUoKS5wbHVnaW5zKCkpCi0g
ICAgewotICAgIH0KLQotICAgIHZvaWQgZ2V0U2l0ZXNXaXRoRGF0YUZvck5leHRQbHVnaW4oKQot
ICAgIHsKLSAgICAgICAgaWYgKG1fcGx1Z2lucy5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIFZl
Y3RvcjxTdHJpbmc+IHNpdGVzOwotICAgICAgICAgICAgY29weVRvVmVjdG9yKG1fc2l0ZXMsIHNp
dGVzKTsKLQotICAgICAgICAgICAgbV93ZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXItPmRpZEdldFNp
dGVzV2l0aERhdGFGb3JBbGxQbHVnaW5zKHNpdGVzLCBtX2NhbGxiYWNrSUQpOwotICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAgICAgUmVmUHRyPFdlYlBsdWdpblNpdGVEYXRh
TWFuYWdlcj4gd2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyID0gbV93ZWJQbHVnaW5TaXRlRGF0YU1h
bmFnZXI7Ci0gICAgICAgIHVpbnQ2NF90IGNhbGxiYWNrSUQgPSBtX2NhbGxiYWNrSUQ7Ci0gICAg
ICAgIFBsdWdpblByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0b24oKS5mZXRjaFdlYnNpdGVEYXRhKG1f
cGx1Z2lucy5sYXN0KCksIFt3ZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIsIGNhbGxiYWNrSURdKFZl
Y3RvcjxTdHJpbmc+IGhvc3ROYW1lcykgewotICAgICAgICAgICAgd2ViUGx1Z2luU2l0ZURhdGFN
YW5hZ2VyLT5kaWRHZXRTaXRlc1dpdGhEYXRhRm9yU2luZ2xlUGx1Z2luKGhvc3ROYW1lcywgY2Fs
bGJhY2tJRCk7Ci0gICAgICAgIH0pOwotCi0gICAgICAgIG1fcGx1Z2lucy5yZW1vdmVMYXN0KCk7
Ci0gICAgfQotCi0gICAgdm9pZCBkaWRHZXRTaXRlc1dpdGhEYXRhRm9yU2luZ2xlUGx1Z2luKGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRlcykKLSAgICB7Ci0gICAgICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgc2l0ZXMuc2l6ZSgpOyArK2kpCi0gICAgICAgICAgICBtX3NpdGVzLmFkZChzaXRl
c1tpXSk7Ci0KLSAgICAgICAgZ2V0U2l0ZXNXaXRoRGF0YUZvck5leHRQbHVnaW4oKTsKLSAgICB9
Ci0gICAgCi1wcml2YXRlOgotICAgIFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlciogbV93ZWJQbHVn
aW5TaXRlRGF0YU1hbmFnZXI7Ci0gICAgdWludDY0X3QgbV9jYWxsYmFja0lEOwotICAgIFZlY3Rv
cjxQbHVnaW5Nb2R1bGVJbmZvPiBtX3BsdWdpbnM7Ci0gICAgSGFzaFNldDxTdHJpbmc+IG1fc2l0
ZXM7Ci19OwotCi1jbGFzcyBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OkNsZWFyU2l0ZURhdGFT
dGF0ZSB7Ci1wdWJsaWM6Ci0gICAgZXhwbGljaXQgQ2xlYXJTaXRlRGF0YVN0YXRlKFdlYlBsdWdp
blNpdGVEYXRhTWFuYWdlciogd2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLCBjb25zdCBWZWN0b3I8
U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90IGZsYWdzLCB1aW50NjRfdCBtYXhBZ2VJblNlY29uZHMs
IHVpbnQ2NF90IGNhbGxiYWNrSUQpCi0gICAgICAgIDogbV93ZWJQbHVnaW5TaXRlRGF0YU1hbmFn
ZXIod2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyKQotICAgICAgICAsIG1fc2l0ZXMoc2l0ZXMpCi0g
ICAgICAgICwgbV9mbGFncyhmbGFncykKLSAgICAgICAgLCBtX21heEFnZUluU2Vjb25kcyhtYXhB
Z2VJblNlY29uZHMpCi0gICAgICAgICwgbV9jYWxsYmFja0lEKGNhbGxiYWNrSUQpCi0gICAgICAg
ICwgbV9wbHVnaW5zKHdlYlBsdWdpblNpdGVEYXRhTWFuYWdlci0+bV9wcm9jZXNzUG9vbC0+cGx1
Z2luSW5mb1N0b3JlKCkucGx1Z2lucygpKQotICAgIHsKLSAgICB9Ci0KLSAgICB2b2lkIGNsZWFy
U2l0ZURhdGFGb3JOZXh0UGx1Z2luKCkKLSAgICB7Ci0gICAgICAgIGlmIChtX3BsdWdpbnMuaXNF
bXB0eSgpKSB7Ci0gICAgICAgICAgICBtX3dlYlBsdWdpblNpdGVEYXRhTWFuYWdlci0+ZGlkQ2xl
YXJTaXRlRGF0YUZvckFsbFBsdWdpbnMobV9jYWxsYmFja0lEKTsKLSAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgfQotCi0gICAgICAgIFBsdWdpblByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0b24o
KS5jbGVhclNpdGVEYXRhKG1fcGx1Z2lucy5sYXN0KCksIG1fd2ViUGx1Z2luU2l0ZURhdGFNYW5h
Z2VyLCBtX3NpdGVzLCBtX2ZsYWdzLCBtX21heEFnZUluU2Vjb25kcywgbV9jYWxsYmFja0lEKTsK
LSAgICAgICAgbV9wbHVnaW5zLnJlbW92ZUxhc3QoKTsKLSAgICB9Ci0KLSAgICB2b2lkIGRpZENs
ZWFyU2l0ZURhdGFGb3JTaW5nbGVQbHVnaW4oKQotICAgIHsKLSAgICAgICAgY2xlYXJTaXRlRGF0
YUZvck5leHRQbHVnaW4oKTsKLSAgICB9Ci0gICAgCi1wcml2YXRlOgotICAgIFdlYlBsdWdpblNp
dGVEYXRhTWFuYWdlciogbV93ZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI7Ci0gICAgVmVjdG9yPFN0
cmluZz4gbV9zaXRlczsKLSAgICB1aW50NjRfdCBtX2ZsYWdzOwotICAgIHVpbnQ2NF90IG1fbWF4
QWdlSW5TZWNvbmRzOwotICAgIHVpbnQ2NF90IG1fY2FsbGJhY2tJRDsKLSAgICBWZWN0b3I8UGx1
Z2luTW9kdWxlSW5mbz4gbV9wbHVnaW5zOwotfTsKLQotUGFzc1JlZlB0cjxXZWJQbHVnaW5TaXRl
RGF0YU1hbmFnZXI+IFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcjo6Y3JlYXRlKFdlYlByb2Nlc3NQ
b29sKiBwcm9jZXNzUG9vbCkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYlBsdWdpblNp
dGVEYXRhTWFuYWdlcihwcm9jZXNzUG9vbCkpOwotfQotCi1XZWJQbHVnaW5TaXRlRGF0YU1hbmFn
ZXI6OldlYlBsdWdpblNpdGVEYXRhTWFuYWdlcihXZWJQcm9jZXNzUG9vbCogcHJvY2Vzc1Bvb2wp
Ci0gICAgOiBtX3Byb2Nlc3NQb29sKHByb2Nlc3NQb29sKQotewotfQotCi1XZWJQbHVnaW5TaXRl
RGF0YU1hbmFnZXI6On5XZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIoKQotewotICAgIEFTU0VSVCht
X2FycmF5Q2FsbGJhY2tzLmlzRW1wdHkoKSk7Ci0gICAgQVNTRVJUKG1fdm9pZENhbGxiYWNrcy5p
c0VtcHR5KCkpOwotICAgIEFTU0VSVChtX3BlbmRpbmdHZXRTaXRlc1dpdGhEYXRhLmlzRW1wdHko
KSk7Ci0gICAgQVNTRVJUKG1fcGVuZGluZ0NsZWFyU2l0ZURhdGEuaXNFbXB0eSgpKTsKLX0KLQot
dm9pZCBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OmludmFsaWRhdGUoKQotewotICAgIGludmFs
aWRhdGVDYWxsYmFja01hcChtX2FycmF5Q2FsbGJhY2tzLCBDYWxsYmFja0Jhc2U6OkVycm9yOjpP
d25lcldhc0ludmFsaWRhdGVkKTsKLQotICAgIG1fcGVuZGluZ0dldFNpdGVzV2l0aERhdGEuY2xl
YXIoKTsKLSAgICBtX3BlbmRpbmdDbGVhclNpdGVEYXRhLmNsZWFyKCk7Ci19Ci0KLXZvaWQgV2Vi
UGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpnZXRTaXRlc1dpdGhEYXRhKHN0ZDo6ZnVuY3Rpb248dm9p
ZCAoQVBJOjpBcnJheSosIENhbGxiYWNrQmFzZTo6RXJyb3IpPiBjYWxsYmFja0Z1bmN0aW9uKQot
ewotICAgIFJlZlB0cjxBcnJheUNhbGxiYWNrPiBjYWxsYmFjayA9IEFycmF5Q2FsbGJhY2s6OmNy
ZWF0ZShXVEY6Om1vdmUoY2FsbGJhY2tGdW5jdGlvbikpOwotCi0gICAgaWYgKCFtX3Byb2Nlc3NQ
b29sKSB7Ci0gICAgICAgIGNhbGxiYWNrLT5pbnZhbGlkYXRlKCk7Ci0gICAgICAgIHJldHVybjsK
LSAgICB9Ci0KLSAgICB1aW50NjRfdCBjYWxsYmFja0lEID0gY2FsbGJhY2stPmNhbGxiYWNrSUQo
KTsKLSAgICBtX2FycmF5Q2FsbGJhY2tzLnNldChjYWxsYmFja0lELCBjYWxsYmFjay5yZWxlYXNl
KCkpOwotCi0gICAgQVNTRVJUKCFtX3BlbmRpbmdHZXRTaXRlc1dpdGhEYXRhLmNvbnRhaW5zKGNh
bGxiYWNrSUQpKTsKLQotICAgIEdldFNpdGVzV2l0aERhdGFTdGF0ZSogc3RhdGUgPSBuZXcgR2V0
U2l0ZXNXaXRoRGF0YVN0YXRlKHRoaXMsIGNhbGxiYWNrSUQpOwotICAgIG1fcGVuZGluZ0dldFNp
dGVzV2l0aERhdGEuc2V0KGNhbGxiYWNrSUQsIHN0ZDo6dW5pcXVlX3B0cjxHZXRTaXRlc1dpdGhE
YXRhU3RhdGU+KHN0YXRlKSk7Ci0gICAgc3RhdGUtPmdldFNpdGVzV2l0aERhdGFGb3JOZXh0UGx1
Z2luKCk7Ci19Ci0KLXZvaWQgV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpkaWRHZXRTaXRlc1dp
dGhEYXRhKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRlcywgdWludDY0X3QgY2FsbGJhY2tJRCkK
LXsKLSAgICBSZWZQdHI8QXJyYXlDYWxsYmFjaz4gY2FsbGJhY2sgPSBtX2FycmF5Q2FsbGJhY2tz
LnRha2UoY2FsbGJhY2tJRCk7Ci0gICAgaWYgKCFjYWxsYmFjaykgewotICAgICAgICAvLyBGSVhN
RTogTG9nIGVycm9yIG9yIGFzc2VydC4KLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGNh
bGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2tXaXRoUmV0dXJuVmFsdWUoQVBJOjpBcnJheTo6Y3JlYXRl
U3RyaW5nQXJyYXkoc2l0ZXMpLnB0cigpKTsKLX0KLQotdm9pZCBXZWJQbHVnaW5TaXRlRGF0YU1h
bmFnZXI6OmNsZWFyU2l0ZURhdGEoQVBJOjpBcnJheSogc2l0ZXMsIHVpbnQ2NF90IGZsYWdzLCB1
aW50NjRfdCBtYXhBZ2VJblNlY29uZHMsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoQ2FsbGJhY2tCYXNl
OjpFcnJvcik+IGNhbGxiYWNrRnVuY3Rpb24pCi17Ci0gICAgUmVmUHRyPFZvaWRDYWxsYmFjaz4g
Y2FsbGJhY2sgPSBWb2lkQ2FsbGJhY2s6OmNyZWF0ZShXVEY6Om1vdmUoY2FsbGJhY2tGdW5jdGlv
bikpOwotICAgIGlmICghbV9wcm9jZXNzUG9vbCkgewotICAgICAgICAvLyBGSVhNRTogSWYgdGhl
IGNvbnRleHQgaXMgaW52YWxpZCB3ZSBzaG91bGQgbm90IGNhbGwgdGhlIGNhbGxiYWNrLiBJdCdk
IGJlIGJldHRlciB0byBqdXN0IHJldHVybiBmYWxzZSBmcm9tIGNsZWFyU2l0ZURhdGEuCi0gICAg
ICAgIGNhbGxiYWNrLT5pbnZhbGlkYXRlKENhbGxiYWNrQmFzZTo6RXJyb3I6Ok93bmVyV2FzSW52
YWxpZGF0ZWQpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgVmVjdG9yPFN0cmluZz4g
c2l0ZXNWZWN0b3I7Ci0KLSAgICAvLyBJZiB0aGUgYXJyYXkgaXMgZW1wdHksIGRvbid0IGRvIGFu
eXRoaW5nLgotICAgIGlmIChzaXRlcykgewotICAgICAgICBpZiAoIXNpdGVzLT5zaXplKCkpIHsK
LSAgICAgICAgICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2soKTsKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgfQotCi0gICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l0ZXMt
PnNpemUoKTsgKytpKSB7Ci0gICAgICAgICAgICBpZiAoQVBJOjpTdHJpbmcqIHNpdGUgPSBzaXRl
cy0+YXQ8QVBJOjpTdHJpbmc+KGkpKQotICAgICAgICAgICAgICAgIHNpdGVzVmVjdG9yLmFwcGVu
ZChzaXRlLT5zdHJpbmcoKSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICB1aW50NjRfdCBjYWxs
YmFja0lEID0gY2FsbGJhY2stPmNhbGxiYWNrSUQoKTsKLSAgICBtX3ZvaWRDYWxsYmFja3Muc2V0
KGNhbGxiYWNrSUQsIGNhbGxiYWNrLnJlbGVhc2UoKSk7Ci0KLSAgICBBU1NFUlQoIW1fcGVuZGlu
Z0NsZWFyU2l0ZURhdGEuY29udGFpbnMoY2FsbGJhY2tJRCkpOwotCi0gICAgQ2xlYXJTaXRlRGF0
YVN0YXRlKiBzdGF0ZSA9IG5ldyBDbGVhclNpdGVEYXRhU3RhdGUodGhpcywgc2l0ZXNWZWN0b3Is
IGZsYWdzLCBtYXhBZ2VJblNlY29uZHMsIGNhbGxiYWNrSUQpOwotICAgIG1fcGVuZGluZ0NsZWFy
U2l0ZURhdGEuc2V0KGNhbGxiYWNrSUQsIHN0ZDo6dW5pcXVlX3B0cjxDbGVhclNpdGVEYXRhU3Rh
dGU+KHN0YXRlKSk7Ci0gICAgc3RhdGUtPmNsZWFyU2l0ZURhdGFGb3JOZXh0UGx1Z2luKCk7Ci19
Ci0KLXZvaWQgV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpkaWRDbGVhclNpdGVEYXRhKHVpbnQ2
NF90IGNhbGxiYWNrSUQpCi17Ci0gICAgUmVmUHRyPFZvaWRDYWxsYmFjaz4gY2FsbGJhY2sgPSBt
X3ZvaWRDYWxsYmFja3MudGFrZShjYWxsYmFja0lEKTsKLSAgICBpZiAoIWNhbGxiYWNrKSB7Ci0g
ICAgICAgIC8vIEZJWE1FOiBMb2cgZXJyb3Igb3IgYXNzZXJ0LgotICAgICAgICByZXR1cm47Ci0g
ICAgfQotCi0gICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFjaygpOwotfQotCi12b2lkIFdlYlBs
dWdpblNpdGVEYXRhTWFuYWdlcjo6ZGlkR2V0U2l0ZXNXaXRoRGF0YUZvclNpbmdsZVBsdWdpbihj
b25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCi17Ci0gICAg
R2V0U2l0ZXNXaXRoRGF0YVN0YXRlKiBzdGF0ZSA9IG1fcGVuZGluZ0dldFNpdGVzV2l0aERhdGEu
Z2V0KGNhbGxiYWNrSUQpOwotICAgIEFTU0VSVChzdGF0ZSk7Ci0KLSAgICBzdGF0ZS0+ZGlkR2V0
U2l0ZXNXaXRoRGF0YUZvclNpbmdsZVBsdWdpbihzaXRlcyk7Ci19Ci0KLXZvaWQgV2ViUGx1Z2lu
U2l0ZURhdGFNYW5hZ2VyOjpkaWRHZXRTaXRlc1dpdGhEYXRhRm9yQWxsUGx1Z2lucyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCi17Ci0gICAgc3RkOjp1
bmlxdWVfcHRyPEdldFNpdGVzV2l0aERhdGFTdGF0ZT4gc3RhdGUgPSBtX3BlbmRpbmdHZXRTaXRl
c1dpdGhEYXRhLnRha2UoY2FsbGJhY2tJRCk7Ci0gICAgQVNTRVJUKHN0YXRlKTsKLQotICAgIGRp
ZEdldFNpdGVzV2l0aERhdGEoc2l0ZXMsIGNhbGxiYWNrSUQpOwotfQotCi12b2lkIFdlYlBsdWdp
blNpdGVEYXRhTWFuYWdlcjo6ZGlkQ2xlYXJTaXRlRGF0YUZvclNpbmdsZVBsdWdpbih1aW50NjRf
dCBjYWxsYmFja0lEKQotewotICAgIENsZWFyU2l0ZURhdGFTdGF0ZSogc3RhdGUgPSBtX3BlbmRp
bmdDbGVhclNpdGVEYXRhLmdldChjYWxsYmFja0lEKTsKLSAgICBBU1NFUlQoc3RhdGUpOwotICAg
IAotICAgIHN0YXRlLT5kaWRDbGVhclNpdGVEYXRhRm9yU2luZ2xlUGx1Z2luKCk7Ci19Ci0KLXZv
aWQgV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyOjpkaWRDbGVhclNpdGVEYXRhRm9yQWxsUGx1Z2lu
cyh1aW50NjRfdCBjYWxsYmFja0lEKQotewotICAgIHN0ZDo6dW5pcXVlX3B0cjxDbGVhclNpdGVE
YXRhU3RhdGU+IHN0YXRlID0gbV9wZW5kaW5nQ2xlYXJTaXRlRGF0YS50YWtlKGNhbGxiYWNrSUQp
OwotICAgIEFTU0VSVChzdGF0ZSk7Ci0KLSAgICBkaWRDbGVhclNpdGVEYXRhKGNhbGxiYWNrSUQp
OwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQ
RV9QTFVHSU5fQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdp
bnMvV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
UGx1Z2lucy9XZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMTNmZDdkZjI5NjJiYTY0Y2ViYjY0Yjk4NTgwNTY5MzAyNWZlYWJiMi4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUGx1Z2lucy9XZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIuaAorKysgL2Rldi9udWxs
CkBAIC0xLDg1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTIgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
LSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0g
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYlBsdWdpblNp
dGVEYXRhTWFuYWdlcl9oCi0jZGVmaW5lIFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcl9oCi0KLSNp
ZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLQotI2luY2x1ZGUgIkFQSU9iamVjdC5oIgot
I2luY2x1ZGUgIkFyZ3VtZW50cy5oIgotI2luY2x1ZGUgIkdlbmVyaWNDYWxsYmFjay5oIgotI2lu
Y2x1ZGUgPG1lbW9yeT4KLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi9Q
YXNzUmVmUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBXZWJQcm9jZXNzUG9v
bDsKLWNsYXNzIFdlYlByb2Nlc3NQcm94eTsKLQotdHlwZWRlZiBHZW5lcmljQ2FsbGJhY2s8QVBJ
OjpBcnJheSo+IEFycmF5Q2FsbGJhY2s7Ci0KLWNsYXNzIFdlYlBsdWdpblNpdGVEYXRhTWFuYWdl
ciA6IHB1YmxpYyBBUEk6Ok9iamVjdEltcGw8QVBJOjpPYmplY3Q6OlR5cGU6OlBsdWdpblNpdGVE
YXRhTWFuYWdlcj4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYlBsdWdpblNp
dGVEYXRhTWFuYWdlcj4gY3JlYXRlKFdlYlByb2Nlc3NQb29sKik7Ci0gICAgdmlydHVhbCB+V2Vi
UGx1Z2luU2l0ZURhdGFNYW5hZ2VyKCk7Ci0KLSAgICBXZWJQcm9jZXNzUG9vbCYgcHJvY2Vzc1Bv
b2woKSB7IHJldHVybiAqbV9wcm9jZXNzUG9vbDsgfQotCi0gICAgdm9pZCBpbnZhbGlkYXRlKCk7
Ci0gICAgdm9pZCBjbGVhclByb2Nlc3NQb29sKCkgeyBtX3Byb2Nlc3NQb29sID0gbnVsbHB0cjsg
fQotCi0gICAgdm9pZCBnZXRTaXRlc1dpdGhEYXRhKHN0ZDo6ZnVuY3Rpb248dm9pZCAoQVBJOjpB
cnJheSosIENhbGxiYWNrQmFzZTo6RXJyb3IpPik7Ci0gICAgdm9pZCBkaWRHZXRTaXRlc1dpdGhE
YXRhKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRlcywgdWludDY0X3QgY2FsbGJhY2tJRCk7Ci0K
LSAgICB2b2lkIGNsZWFyU2l0ZURhdGEoQVBJOjpBcnJheSogc2l0ZXMsIHVpbnQ2NF90IGZsYWdz
LCB1aW50NjRfdCBtYXhBZ2VJblNlY29uZHMsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoQ2FsbGJhY2tC
YXNlOjpFcnJvcik+KTsKLSAgICB2b2lkIGRpZENsZWFyU2l0ZURhdGEodWludDY0X3QgY2FsbGJh
Y2tJRCk7Ci0KLSAgICB2b2lkIGRpZEdldFNpdGVzV2l0aERhdGFGb3JTaW5nbGVQbHVnaW4oY29u
c3QgVmVjdG9yPFN0cmluZz4mIHNpdGVzLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKLSAgICB2b2lk
IGRpZENsZWFyU2l0ZURhdGFGb3JTaW5nbGVQbHVnaW4odWludDY0X3QgY2FsbGJhY2tJRCk7ICAg
IAotCi1wcml2YXRlOgotICAgIGV4cGxpY2l0IFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcihXZWJQ
cm9jZXNzUG9vbCopOwotCi0gICAgV2ViUHJvY2Vzc1Bvb2wqIG1fcHJvY2Vzc1Bvb2w7Ci0gICAg
SGFzaE1hcDx1aW50NjRfdCwgUmVmUHRyPEFycmF5Q2FsbGJhY2s+PiBtX2FycmF5Q2FsbGJhY2tz
OwotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+PiBtX3ZvaWRDYWxs
YmFja3M7Ci0KLSAgICB2b2lkIGRpZEdldFNpdGVzV2l0aERhdGFGb3JBbGxQbHVnaW5zKGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBzaXRlcywgdWludDY0X3QgY2FsbGJhY2tJRCk7Ci0gICAgdm9pZCBk
aWRDbGVhclNpdGVEYXRhRm9yQWxsUGx1Z2lucyh1aW50NjRfdCBjYWxsYmFja0lEKTsKLQotICAg
IGNsYXNzIEdldFNpdGVzV2l0aERhdGFTdGF0ZTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBzdGQ6
OnVuaXF1ZV9wdHI8R2V0U2l0ZXNXaXRoRGF0YVN0YXRlPj4gbV9wZW5kaW5nR2V0U2l0ZXNXaXRo
RGF0YTsKLQotICAgIGNsYXNzIENsZWFyU2l0ZURhdGFTdGF0ZTsKLSAgICBIYXNoTWFwPHVpbnQ2
NF90LCBzdGQ6OnVuaXF1ZV9wdHI8Q2xlYXJTaXRlRGF0YVN0YXRlPj4gbV9wZW5kaW5nQ2xlYXJT
aXRlRGF0YTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxF
KE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0KLSNlbmRpZiAvLyBXZWJQbHVnaW5TaXRlRGF0YU1hbmFn
ZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29s
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKaW5kZXgg
YmI1M2FhNDQ2NjcwYzkxZWM3OWZiNGE2NjU1NTFmNjgxNjI0ZWY0NC4uNDU4YWU3YWZmZjQwZmE1
ZGE0NGRlYTQzOWRmYThjOTQwZmQwNzQ5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC01Miw3ICs1Miw2IEBACiAjaW5jbHVkZSAiV2ViTWVtb3J5
U2FtcGxlci5oIgogI2luY2x1ZGUgIldlYk5vdGlmaWNhdGlvbk1hbmFnZXJQcm94eS5oIgogI2lu
Y2x1ZGUgIldlYlBhZ2VHcm91cC5oIgotI2luY2x1ZGUgIldlYlBsdWdpblNpdGVEYXRhTWFuYWdl
ci5oIgogI2luY2x1ZGUgIldlYlByZWZlcmVuY2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NNZXNzYWdlcy5oIgpAQCAt
MTk0LDkgKzE5Myw2IEBAIFdlYlByb2Nlc3NQb29sOjpXZWJQcm9jZXNzUG9vbChBUEk6OlByb2Nl
c3NQb29sQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbikKIAogICAgIC8vIE5PVEU6IFRoZXNl
IHN1Yi1vYmplY3RzIG11c3QgYmUgaW5pdGlhbGl6ZWQgYWZ0ZXIgbV9tZXNzYWdlUmVjZWl2ZXJN
YXAuLgogICAgIG1faWNvbkRhdGFiYXNlID0gV2ViSWNvbkRhdGFiYXNlOjpjcmVhdGUodGhpcyk7
Ci0jaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgbV9wbHVnaW5TaXRlRGF0YU1h
bmFnZXIgPSBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXI6OmNyZWF0ZSh0aGlzKTsKLSNlbmRpZiAv
LyBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKIAogICAgIGFkZFN1cHBsZW1lbnQ8V2ViQXBw
bGljYXRpb25DYWNoZU1hbmFnZXJQcm94eT4oKTsKICAgICBhZGRTdXBwbGVtZW50PFdlYkNvb2tp
ZU1hbmFnZXJQcm94eT4oKTsKQEAgLTI2MSwxMSArMjU3LDYgQEAgV2ViUHJvY2Vzc1Bvb2w6On5X
ZWJQcm9jZXNzUG9vbCgpCiAgICAgV2ViSWNvbkRhdGFiYXNlKiByYXdJY29uRGF0YWJhc2UgPSBt
X2ljb25EYXRhYmFzZS5yZWxlYXNlKCkubGVha1JlZigpOwogICAgIHJhd0ljb25EYXRhYmFzZS0+
ZGVyZWZXaGVuQXBwcm9wcmlhdGUoKTsKIAotI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJ
KQotICAgIG1fcGx1Z2luU2l0ZURhdGFNYW5hZ2VyLT5pbnZhbGlkYXRlKCk7Ci0gICAgbV9wbHVn
aW5TaXRlRGF0YU1hbmFnZXItPmNsZWFyUHJvY2Vzc1Bvb2woKTsKLSNlbmRpZgotCiAgICAgaW52
YWxpZGF0ZUNhbGxiYWNrTWFwKG1fZGljdGlvbmFyeUNhbGxiYWNrcywgQ2FsbGJhY2tCYXNlOjpF
cnJvcjo6T3duZXJXYXNJbnZhbGlkYXRlZCk7CiAKICAgICBwbGF0Zm9ybUludmFsaWRhdGVDb250
ZXh0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bv
b2wuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmluZGV4IDI1
ZGM5M2VkMzIwMjMyOTI4MDczMWFlNDJkNTIzMmU3M2M2ZDFhNTEuLmYyMmY1Mjc3MTJmNGE5NDMw
NmMxMjQ3YWQ0NDBjMzA5N2IwNWEzMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5oCkBAIC0yMzIsOSArMjMyLDYgQEAgcHVibGljOgogICAgIFdlYkNvbnRleHRD
bGllbnQmIGNsaWVudCgpIHsgcmV0dXJuIG1fY2xpZW50OyB9CiAKICAgICBXZWJJY29uRGF0YWJh
c2UqIGljb25EYXRhYmFzZSgpIGNvbnN0IHsgcmV0dXJuIG1faWNvbkRhdGFiYXNlLmdldCgpOyB9
Ci0jaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCi0gICAgV2ViUGx1Z2luU2l0ZURhdGFN
YW5hZ2VyKiBwbHVnaW5TaXRlRGF0YU1hbmFnZXIoKSBjb25zdCB7IHJldHVybiBtX3BsdWdpblNp
dGVEYXRhTWFuYWdlci5nZXQoKTsgfQotI2VuZGlmCiAKICAgICBzdHJ1Y3QgU3RhdGlzdGljcyB7
CiAgICAgICAgIHVuc2lnbmVkIHdrVmlld0NvdW50OwpAQCAtNDgxLDkgKzQ3OCw2IEBAIHByaXZh
dGU6CiAgICAgZG91YmxlIG1fbWVtb3J5U2FtcGxlckludGVydmFsOwogCiAgICAgUmVmUHRyPFdl
Ykljb25EYXRhYmFzZT4gbV9pY29uRGF0YWJhc2U7Ci0jaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJ
Tl9BUEkpCi0gICAgUmVmUHRyPFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlcj4gbV9wbHVnaW5TaXRl
RGF0YU1hbmFnZXI7Ci0jZW5kaWYKIAogICAgIGNvbnN0IFJlZlB0cjxBUEk6OldlYnNpdGVEYXRh
U3RvcmU+IG1fd2Vic2l0ZURhdGFTdG9yZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Byb3h5LmNwcAppbmRleCBlYmJmMTQ5YmM0OGNiN2MyZWM5MTU0MWY0MGRkN2Y0
MTExZTMwNmVhLi5mZTRmODgwZGFiNjE5YTM5YzQxZTcwYjc5OTI3YTM0MzgxMWRjN2MyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcApAQCAtNDUsNyAr
NDUsNiBAQAogI2luY2x1ZGUgIldlYlBhZ2VHcm91cC5oIgogI2luY2x1ZGUgIldlYlBhZ2VQcm94
eS5oIgogI2luY2x1ZGUgIldlYlBhc3RlYm9hcmRQcm94eS5oIgotI2luY2x1ZGUgIldlYlBsdWdp
blNpdGVEYXRhTWFuYWdlci5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NNZXNzYWdlcy5oIgogI2lu
Y2x1ZGUgIldlYlByb2Nlc3NQb29sLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Byb3h5TWVzc2Fn
ZXMuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA1N2ZhZjFkNmViMGM1ODE5MmNiNjRmYmRkNjYxZDg5ZTc5MWQ0Y2Y3Li5kMTJj
YzMyMjIwNTEwMzVlZWQyNGExZjM5MjZlZmRmZTMxODFhZmU1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00NTEsOCArNDUxLDYg
QEAKIAkJMUFDNzUzODAxODNCRTUwRjAwNzJDQjE1IC8qIERhdGFSZWZlcmVuY2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQzc1MzdFMTgzQkU1MEYw
MDcyQ0IxNSAvKiBEYXRhUmVmZXJlbmNlLmggKi87IH07CiAJCTFBQzg2RkYzMTMwQjQ2RDMwMDJD
MTI1NyAvKiBXS1BsdWdpblNpdGVEYXRhTWFuYWdlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUM4NkZGMTEzMEI0NkQzMDAyQzEyNTcgLyogV0tQ
bHVnaW5TaXRlRGF0YU1hbmFnZXIuY3BwICovOyB9OwogCQkxQUM4NkZGNDEzMEI0NkQzMDAyQzEy
NTcgLyogV0tQbHVnaW5TaXRlRGF0YU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQzg2RkYyMTMwQjQ2RDMwMDJDMTI1NyAvKiBXS1BsdWdp
blNpdGVEYXRhTWFuYWdlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07Ci0JCTFBQzg3MDJEMTMwQjQ5QTIwMDJDMTI1NyAvKiBXZWJQbHVnaW5TaXRlRGF0
YU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBQzg3MDJCMTMwQjQ5QTIwMDJDMTI1NyAvKiBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIuaCAq
LzsgfTsKLQkJMUFDODcwMkUxMzBCNDlBMjAwMkMxMjU3IC8qIFdlYlBsdWdpblNpdGVEYXRhTWFu
YWdlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QUM4NzAyQzEzMEI0OUEyMDAyQzEyNTcgLyogV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNwcCAq
LzsgfTsKIAkJMUFDQzg3QkExOTgxQzM0MTAwM0QxQUY0IC8qIFdLTmF2aWdhdGlvblByaXZhdGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQ0M4N0I5
MTk4MUMzNDEwMDNEMUFGNCAvKiBXS05hdmlnYXRpb25Qcml2YXRlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUFDRUNEMjQxNzE2MkRCMTAwMUZD
OUVGIC8qIFN0b3JhZ2VBcmVhTWFwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFBQ0VDRDIyMTcxNjJEQjEwMDFGQzlFRiAvKiBTdG9yYWdlQXJlYU1h
cC5jcHAgKi87IH07CiAJCTFBQ0VDRDI1MTcxNjJEQjEwMDFGQzlFRiAvKiBTdG9yYWdlQXJlYU1h
cC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFDRUNE
MjMxNzE2MkRCMTAwMUZDOUVGIC8qIFN0b3JhZ2VBcmVhTWFwLmggKi87IH07CkBAIC0yNjEzLDgg
KzI2MTEsNiBAQAogCQkxQUM3NTM3RTE4M0JFNTBGMDA3MkNCMTUgLyogRGF0YVJlZmVyZW5jZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhUmVmZXJlbmNlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQzg2RkYxMTMwQjQ2RDMwMDJDMTI1NyAvKiBXS1Bs
dWdpblNpdGVEYXRhTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXS1BsdWdpblNpdGVEYXRhTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFBQzg2RkYyMTMwQjQ2RDMwMDJDMTI1NyAvKiBXS1BsdWdpblNpdGVEYXRhTWFuYWdl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS1BsdWdpblNpdGVEYXRhTWFu
YWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQUM4NzAyQjEzMEI0OUEyMDAy
QzEyNTcgLyogV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQkxQUM4NzAyQzEzMEI0OUEyMDAyQzEyNTcgLyogV2ViUGx1Z2luU2l0ZURh
dGFNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlBs
dWdpblNpdGVEYXRhTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFB
Q0M4N0I5MTk4MUMzNDEwMDNEMUFGNCAvKiBXS05hdmlnYXRpb25Qcml2YXRlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLTmF2aWdhdGlvblByaXZhdGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFDRUNEMjIxNzE2MkRCMTAwMUZDOUVGIC8qIFN0b3JhZ2VB
cmVhTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0b3JhZ2VB
cmVhTWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFDRUNEMjMxNzE2MkRC
MTAwMUZDOUVGIC8qIFN0b3JhZ2VBcmVhTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFN0b3JhZ2VBcmVhTWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01
MDYzLDggKzUwNTksNiBAQAogCQkJCTFBMEVDNzVEMTI0QkM3QjIwMDdFRjRBNSAvKiBQbHVnaW5Q
cm9jZXNzUHJveHkuY3BwICovLAogCQkJCTFBMEVDNzVDMTI0QkM3QjIwMDdFRjRBNSAvKiBQbHVn
aW5Qcm9jZXNzUHJveHkuaCAqLywKIAkJCQkxQTA0M0I0QzEyNEQ1RTM2MDBGRkJGQjUgLyogUGx1
Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluICovLAotCQkJCTFBQzg3MDJDMTMwQjQ5QTIwMDJD
MTI1NyAvKiBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIuY3BwICovLAotCQkJCTFBQzg3MDJCMTMw
QjQ5QTIwMDJDMTI1NyAvKiBXZWJQbHVnaW5TaXRlRGF0YU1hbmFnZXIuaCAqLywKIAkJCSk7CiAJ
CQlwYXRoID0gUGx1Z2luczsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC04MTYzLDcg
KzgxNTcsNiBAQAogCQkJCTdDNDY5NENBMUE0QjRFQTEwMEFENTg0NSAvKiBXZWJQYXN0ZWJvYXJk
UHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUEzRTczNjExMUNDMjY1OTAwN0JE
NTM5IC8qIFdlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFENTky
OUYxNjZFMDYwMDAwRTZCRjAyIC8qIFdlYlBsdWdJbkNsaWVudC5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMUFDODcwMkQxMzBCNDlBMjAwMkMxMjU3IC8qIFdlYlBsdWdpblNpdGVEYXRhTWFuYWdlci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1NzQ0RjAxMjYzOEZCMzAwNkYwRjEyIC8qIFdlYlBvcHVw
SXRlbS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDNCOTQ4NDcxMUZGNEI2NTAwMDMyQjM5IC8qIFdl
YlBvcHVwTWVudS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1NzRFNjMxMjY3RDA4MDAwNkYwRjEy
IC8qIFdlYlBvcHVwTWVudVByb3h5LmggaW4gSGVhZGVycyAqLywKQEAgLTEwMDE4LDcgKzEwMDEx
LDYgQEAKIAkJCQlDMDMzN0RERDEyN0E1MjFDMDA4RkY0RjQgLyogV2ViUGxhdGZvcm1Ub3VjaFBv
aW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEQTk0NEEyMTg4NEU0RjAwMEVEODZEQiAvKiBX
ZWJQbGF0Zm9ybVRvdWNoUG9pbnRJT1MuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFENTkyOUUx
NjZFMDYwMDAwRTZCRjAyIC8qIFdlYlBsdWdJbkNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJ
CQkxQUM4NzAyRTEzMEI0OUEyMDAyQzEyNTcgLyogV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2VyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUJDNTc0NEVGMTI2MzhGQjMwMDZGMEYxMiAvKiBXZWJQb3B1
cEl0ZW0uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRDNCOTQ4NDYxMUZGNEI2NTAwMDMyQjM5IC8q
IFdlYlBvcHVwTWVudS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0M0M0FDNzEyN0I5OURFMDAz
MTdGMTYgLyogV2ViUG9wdXBNZW51TWFjLm1tIGluIFNvdXJjZXMgKi8sCg==
</data>
<flag name="review"
          id="279721"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>