<?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>139844</bug_id>
          
          <creation_ts>2014-12-19 16:20:09 -0800</creation_ts>
          <short_desc>Get rid of the hardcoded set of structs in the message generation script</short_desc>
          <delta_ts>2014-12-19 16:46:46 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>1057218</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-19 16:20:09 -0800</bug_when>
    <thetext>Get rid of the hardcoded set of structs in the message generation script</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057220</commentid>
    <comment_count>1</comment_count>
      <attachid>243587</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-19 16:21:59 -0800</bug_when>
    <thetext>Created attachment 243587
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057222</commentid>
    <comment_count>2</comment_count>
      <attachid>243587</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-12-19 16:24:26 -0800</bug_when>
    <thetext>Comment on attachment 243587
Patch

This is so much better!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057226</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-19 16:46:46 -0800</bug_when>
    <thetext>Committed r177608: &lt;http://trac.webkit.org/changeset/177608&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243587</attachid>
            <date>2014-12-19 16:21:59 -0800</date>
            <delta_ts>2014-12-19 16:24:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139844-20141219162158.patch</filename>
            <type>text/plain</type>
            <size>45331</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3NTk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggODZlY2I4YjIzNjAzM2I3
OTA2ZGI2MWMyODU0MDcxZmNiYTgyZDcyZC4uYjJmMjMyMTM1ODE0MzA1MDJhMzdjMmVjODg4YjRj
ZjFjYWQ3ZDNiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM5IEBACiAyMDE0LTEyLTE5ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgR2V0IHJpZCBvZiB0
aGUgaGFyZGNvZGVkIHNldCBvZiBzdHJ1Y3RzIGluIHRoZSBtZXNzYWdlIGdlbmVyYXRpb24gc2Ny
aXB0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4
NDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnN0
ZWFkLCBtYWtlIGl0IHBvc3NpYmxlIHRvIHVzZSAnc3RydWN0JyBpbiBmcm9udCBvZiB0aGUgdHlw
ZSBuYW1lIHRvIGRlY2xhcmUgdGhhdCB0aGUgdHlwZSBpcyBhIHN0cnVjdC4KKworICAgICAgICAq
IERhdGFiYXNlUHJvY2Vzcy9EYXRhYmFzZVByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgICog
RGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLm1l
c3NhZ2VzLmluOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5tZXNzYWdlcy5p
bjoKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2Vz
LmluOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAoc3Ry
dWN0X29yX2NsYXNzKToKKyAgICAgICAgKGZvcndhcmRfZGVjbGFyYXRpb25zX2Zvcl9uYW1lc3Bh
Y2UpOgorICAgICAgICAoZm9yd2FyZF9kZWNsYXJhdGlvbnNfYW5kX2hlYWRlcnMpOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0L21vZGVsLnB5OgorICAgICAgICAoUGFyYW1ldGVyLl9faW5pdF9f
KToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdC9wYXJzZXIucHk6CisgICAgICAgIChwYXJzZV9w
YXJhbWV0ZXJzX3N0cmluZyk6CisgICAgICAgICogVUlQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZU1h
bmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQubWVzc2Fn
ZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluOgorICAgICAgICAq
IFdlYlByb2Nlc3MvQXBwbGljYXRpb25DYWNoZS9XZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlci5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2Vi
SURCU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL09y
aWdpbkRhdGEvV2ViT3JpZ2luRGF0YU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2Vi
UHJvY2Vzcy9SZXNvdXJjZUNhY2hlL1dlYlJlc291cmNlQ2FjaGVNYW5hZ2VyLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5tZXNzYWdlcy5pbjoK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKKzIwMTQtMTItMTkgIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBVc2UgV2ViQ29y
ZTo6TWFjaFNlbmRSaWdodHMgZm9yIHRoZSBjb21wb3NpdGluZyByZW5kZXIgc2VydmVyIHBvcnQK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTgzNAog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VQcm9j
ZXNzLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0RhdGFiYXNl
UHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCA0M2JlN2QxYTU3ZmNiODRkYTZjN2E4MmVkODFmOWE3
ZjU4NzliZDdkLi5mYTljZmMyMDYzZTkxZjEyNGU4ZWIxMWEyYzY2ZDFiYjZlOTQ4MmUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRGF0YWJhc2VQcm9jZXNzLm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9EYXRhYmFzZVBy
b2Nlc3MubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0LDcgQEAKIAogbWVzc2FnZXMgLT4gRGF0YWJh
c2VQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICAjIEluaXRpYWxpemVzIHRoZSBEYXRhYmFz
ZVByb2Nlc3Mgd2l0aCB0aGUgY29ycmVjdCBwYXJhbWV0ZXJzCi0gICAgSW5pdGlhbGl6ZURhdGFi
YXNlUHJvY2VzcyhXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyBwcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzKQorICAgIEluaXRpYWxpemVEYXRhYmFzZVByb2Nlc3Moc3Ry
dWN0IFdlYktpdDo6RGF0YWJhc2VQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMpCiAKICAgICAjIENyZWF0ZXMgYSBjb25uZWN0aW9uIGZvciBjb21tdW5p
Y2F0aW9uIHdpdGggYSBXZWJQcm9jZXNzCiAgICAgQ3JlYXRlRGF0YWJhc2VUb1dlYlByb2Nlc3ND
b25uZWN0aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9J
bmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJj
ZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29u
bmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCBkZGY5YjgyZjY2OWRiMTI0MWI1MjYxZjJlMzkyYmI3
ZWIxY2RiNGY4Li4xM2M0NWUyM2ExZTIyYWFjM2U5OTEzODY2OGNkOWUzYWYzMzliOGVlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNl
UHJvY2Vzc0lEQkNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvRGF0
YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLm1lc3Nh
Z2VzLmluCkBAIC0yMyw3ICsyMyw3IEBACiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpICYm
IEVOQUJMRShEQVRBQkFTRV9QUk9DRVNTKQogCiBtZXNzYWdlcyAtPiBEYXRhYmFzZVByb2Nlc3NJ
REJDb25uZWN0aW9uIExlZ2FjeVJlY2VpdmVyIHsKLSAgICBFc3RhYmxpc2hDb25uZWN0aW9uKFN0
cmluZyBkYXRhYmFzZU5hbWUsIFdlYktpdDo6U2VjdXJpdHlPcmlnaW5EYXRhIG9wZW5pbmdPcmln
aW4sIFdlYktpdDo6U2VjdXJpdHlPcmlnaW5EYXRhIG1haW5GcmFtZU9yaWdpbikKKyAgICBFc3Rh
Ymxpc2hDb25uZWN0aW9uKFN0cmluZyBkYXRhYmFzZU5hbWUsIHN0cnVjdCBXZWJLaXQ6OlNlY3Vy
aXR5T3JpZ2luRGF0YSBvcGVuaW5nT3JpZ2luLCBzdHJ1Y3QgV2ViS2l0OjpTZWN1cml0eU9yaWdp
bkRhdGEgbWFpbkZyYW1lT3JpZ2luKQogICAgIEdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRh
ZGF0YSh1aW50NjRfdCByZXF1ZXN0SUQpCiAgICAgRGVsZXRlRGF0YWJhc2UodWludDY0X3QgcmVx
dWVzdElELCBTdHJpbmcgZGF0YWJhc2VOYW1lKQogCkBAIC0zNywyMSArMzcsMjEgQEAgbWVzc2Fn
ZXMgLT4gRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbiBMZWdhY3lSZWNlaXZlciB7CiAgICAg
Um9sbGJhY2tUcmFuc2FjdGlvblN5bmMoaW50NjRfdCB0cmFuc2FjdGlvbklEKSAtPiAoYm9vbCBz
dWNjZXNzKSBEZWxheWVkCiAgICAgCiAgICAgQ2hhbmdlRGF0YWJhc2VWZXJzaW9uKHVpbnQ2NF90
IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCB1aW50NjRfdCBuZXdWZXJzaW9uKQot
ICAgIENyZWF0ZU9iamVjdFN0b3JlKHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2Fj
dGlvbklELCBXZWJDb3JlOjpJREJPYmplY3RTdG9yZU1ldGFkYXRhIG9iamVjdFN0b3JlTWV0YWRh
dGEpCisgICAgQ3JlYXRlT2JqZWN0U3RvcmUodWludDY0X3QgcmVxdWVzdElELCBpbnQ2NF90IHRy
YW5zYWN0aW9uSUQsIHN0cnVjdCBXZWJDb3JlOjpJREJPYmplY3RTdG9yZU1ldGFkYXRhIG9iamVj
dFN0b3JlTWV0YWRhdGEpCiAgICAgRGVsZXRlT2JqZWN0U3RvcmUodWludDY0X3QgcmVxdWVzdElE
LCBpbnQ2NF90IHRyYW5zYWN0aW9uSUQsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCkKICAgICBDbGVh
ck9iamVjdFN0b3JlKHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCBp
bnQ2NF90IG9iamVjdFN0b3JlSUQpOwotICAgIENyZWF0ZUluZGV4KHVpbnQ2NF90IHJlcXVlc3RJ
RCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCBpbnQ2NF90IG9iamVjdFN0b3JlSUQsIFdlYkNvcmU6
OklEQkluZGV4TWV0YWRhdGEgaW5kZXhNZXRhZGF0YSkKKyAgICBDcmVhdGVJbmRleCh1aW50NjRf
dCByZXF1ZXN0SUQsIGludDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlE
LCBzdHJ1Y3QgV2ViQ29yZTo6SURCSW5kZXhNZXRhZGF0YSBpbmRleE1ldGFkYXRhKQogICAgIERl
bGV0ZUluZGV4KHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCBpbnQ2
NF90IG9iamVjdFN0b3JlSUQsIGludDY0X3QgaW5kZXhJRCkKIAotICAgIFB1dFJlY29yZCh1aW50
NjRfdCByZXF1ZXN0SUQsIGludDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9y
ZUlELCBXZWJDb3JlOjpJREJLZXlEYXRhIGtleSwgSVBDOjpEYXRhUmVmZXJlbmNlIHZhbHVlLCBp
bnQ2NF90IHB1dE1vZGUsIFZlY3RvcjxpbnQ2NF90PiBpbmRleElEcywgVmVjdG9yPFZlY3RvcjxX
ZWJDb3JlOjpJREJLZXlEYXRhPj4gaW5kZXhLZXlzKQotICAgIEdldFJlY29yZCh1aW50NjRfdCBy
ZXF1ZXN0SUQsIGludDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBp
bnQ2NF90IGluZGV4SUQsIFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSBrZXlSYW5nZSwgaW50NjRf
dCBjdXJzb3JUeXBlKQorICAgIFB1dFJlY29yZCh1aW50NjRfdCByZXF1ZXN0SUQsIGludDY0X3Qg
dHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBzdHJ1Y3QgV2ViQ29yZTo6SURC
S2V5RGF0YSBrZXksIElQQzo6RGF0YVJlZmVyZW5jZSB2YWx1ZSwgaW50NjRfdCBwdXRNb2RlLCBW
ZWN0b3I8aW50NjRfdD4gaW5kZXhJRHMsIFZlY3RvcjxWZWN0b3I8V2ViQ29yZTo6SURCS2V5RGF0
YT4+IGluZGV4S2V5cykKKyAgICBHZXRSZWNvcmQodWludDY0X3QgcmVxdWVzdElELCBpbnQ2NF90
IHRyYW5zYWN0aW9uSUQsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgaW50NjRfdCBpbmRleElELCBz
dHJ1Y3QgV2ViQ29yZTo6SURCS2V5UmFuZ2VEYXRhIGtleVJhbmdlLCBpbnQ2NF90IGN1cnNvclR5
cGUpCiAgICAgCi0gICAgT3BlbkN1cnNvcih1aW50NjRfdCByZXF1ZXN0SUQsIGludDY0X3QgdHJh
bnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBpbnQ2NF90IGluZGV4SUQsIGludDY0
X3QgY3Vyc29yRGlyZWN0aW9uLCBpbnQ2NF90IGN1cnNvclR5cGUsIGludDY0X3QgdGFza1R5cGUs
IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSBrZXlSYW5nZSkKKyAgICBPcGVuQ3Vyc29yKHVpbnQ2
NF90IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCBpbnQ2NF90IG9iamVjdFN0b3Jl
SUQsIGludDY0X3QgaW5kZXhJRCwgaW50NjRfdCBjdXJzb3JEaXJlY3Rpb24sIGludDY0X3QgY3Vy
c29yVHlwZSwgaW50NjRfdCB0YXNrVHlwZSwgc3RydWN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0
YSBrZXlSYW5nZSkKICAgICBDdXJzb3JBZHZhbmNlKHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRf
dCBjdXJzb3JJRCwgdWludDY0X3QgY291bnQpCi0gICAgQ3Vyc29ySXRlcmF0ZSh1aW50NjRfdCBy
ZXF1ZXN0SUQsIGludDY0X3QgY3Vyc29ySUQsIFdlYkNvcmU6OklEQktleURhdGEga2V5KQorICAg
IEN1cnNvckl0ZXJhdGUodWludDY0X3QgcmVxdWVzdElELCBpbnQ2NF90IGN1cnNvcklELCBzdHJ1
Y3QgV2ViQ29yZTo6SURCS2V5RGF0YSBrZXkpCiAgICAgCi0gICAgQ291bnQodWludDY0X3QgcmVx
dWVzdElELCBpbnQ2NF90IHRyYW5zYWN0aW9uSUQsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgaW50
NjRfdCBpbmRleElELCBXZWJDb3JlOjpJREJLZXlSYW5nZURhdGEga2V5UmFuZ2UpCi0gICAgRGVs
ZXRlUmFuZ2UodWludDY0X3QgcmVxdWVzdElELCBpbnQ2NF90IHRyYW5zYWN0aW9uSUQsIGludDY0
X3Qgb2JqZWN0U3RvcmVJRCwgV2ViQ29yZTo6SURCS2V5UmFuZ2VEYXRhIGtleVJhbmdlKQorICAg
IENvdW50KHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRfdCB0cmFuc2FjdGlvbklELCBpbnQ2NF90
IG9iamVjdFN0b3JlSUQsIGludDY0X3QgaW5kZXhJRCwgc3RydWN0IFdlYkNvcmU6OklEQktleVJh
bmdlRGF0YSBrZXlSYW5nZSkKKyAgICBEZWxldGVSYW5nZSh1aW50NjRfdCByZXF1ZXN0SUQsIGlu
dDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBzdHJ1Y3QgV2ViQ29y
ZTo6SURCS2V5UmFuZ2VEYXRhIGtleVJhbmdlKQogICAgIAogICAgIENsb3NlKCkKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVz
c2FnZXMuaW4KaW5kZXggNGVjZjc5NDdjMDA0MTNhYTFhNDZiODBhZTYyOWVkNDc3MWM1MWJiMS4u
MTUyODljNTQ2NzcxMzI0MmQ1N2QyNjFmMmEwOGE2ZWQxNzZhYzc5ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMu
aW4KQEAgLTI0LDcgKzI0LDcgQEAKIAogbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3MgTGVnYWN5
UmVjZWl2ZXIgewogICAgICMgSW5pdGlhbGl6ZXMgdGhlIG5ldHdvcmsgcHJvY2Vzcy4KLSAgICBJ
bml0aWFsaXplTmV0d29ya1Byb2Nlc3MoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycyBwcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzKQorICAgIEluaXRpYWxpemVOZXR3b3Jr
UHJvY2VzcyhzdHJ1Y3QgV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyBw
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzKQogCiAgICAgIyBDcmVhdGVzIGEgY29ubmVjdGlvbiBm
b3IgY29tbXVuaWNhdGlvbiB3aXRoIGEgV2ViUHJvY2VzcwogICAgIENyZWF0ZU5ldHdvcmtDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblBy
b2Nlc3MvUGx1Z2luUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1BsdWdpblBy
b2Nlc3MvUGx1Z2luUHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCBlYjA4MGE4YjAxYzM4N2ViNzg3
NjQ0ZDk5Nzc2NmMwNjUyZGFjZDZmLi42NTViMWVlMTQ2NWIxMzcwN2Q5MjEzMWI1NWQ3OGY4OTE3
ODEyYTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblBy
b2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9QbHVn
aW5Qcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNCw3ICsyNCw3IEBACiAKIG1lc3NhZ2VzIC0+IFBs
dWdpblByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgICMgSW5pdGlhbGl6ZXMgdGhlIHBsdWct
aW4gcHJvY2Vzcy4KLSAgICBJbml0aWFsaXplUGx1Z2luUHJvY2VzcyhXZWJLaXQ6OlBsdWdpblBy
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgcHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycykKKyAgICBJ
bml0aWFsaXplUGx1Z2luUHJvY2VzcyhzdHJ1Y3QgV2ViS2l0OjpQbHVnaW5Qcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzIHByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMpCiAgICAgCiAgICAgIyBDcmVh
dGVzIGEgd2ViIHByb2Nlc3MgY29ubmVjdGlvbi4gV2hlbiB0aGUgY29ubmVjdGlvbiBoYXMgYmVl
biBjcmVhdGVkLAogICAgICMgVGhlIHBsdWctaW4gcHJvY2VzcyBzZW5kcyBiYWNrIGEgRGlkQ3Jl
YXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24gbWVzc2FnZSB3aXRoCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluIGIv
U291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9XZWJQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdl
cy5pbgppbmRleCA2MzUxMWI0ZWIyY2JhOTMzNjY1YjEwOTlhMWQzNjJjYmIzYjFiZTk3Li5lY2Uy
NGU4NDRjMTc4NzZkMDA5MDVhYmM0NzJkNDY1ZjQxZGZlNGEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1dlYlByb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24ubWVz
c2FnZXMuaW4KQEAgLTI0LDEwICsyNCwxMCBAQAogCiBtZXNzYWdlcyAtPiBXZWJQcm9jZXNzQ29u
bmVjdGlvbiBMZWdhY3lSZWNlaXZlciB7CiAgICAgIyBDcmVhdGVzIGEgcGx1Zy1pbiBpbnN0YW5j
ZSB1c2luZyB0aGUgZ2l2ZW4gY3JlYXRpb24gcGFyYW1ldGVycy4KLSAgICBDcmVhdGVQbHVnaW4o
V2ViS2l0OjpQbHVnaW5DcmVhdGlvblBhcmFtZXRlcnMgcGx1Z2luQ3JlYXRpb25QYXJhbWV0ZXJz
KSAtPiAoYm9vbCBjcmVhdGlvblJlc3VsdCwgYm9vbCB3YW50c1doZWVsRXZlbnRzLCB1aW50MzJf
dCByZW1vdGVMYXllckNsaWVudElEKSBEZWxheWVkCisgICAgQ3JlYXRlUGx1Z2luKHN0cnVjdCBX
ZWJLaXQ6OlBsdWdpbkNyZWF0aW9uUGFyYW1ldGVycyBwbHVnaW5DcmVhdGlvblBhcmFtZXRlcnMp
IC0+IChib29sIGNyZWF0aW9uUmVzdWx0LCBib29sIHdhbnRzV2hlZWxFdmVudHMsIHVpbnQzMl90
IHJlbW90ZUxheWVyQ2xpZW50SUQpIERlbGF5ZWQKIAogICAgICMgQ3JlYXRlcyBhIHBsdWctaW4g
aW5zdGFuY2UgYXN5bmNocm9ub3VzbHkgdXNpbmcgdGhlIGdpdmVuIGNyZWF0aW9uIHBhcmFtZXRl
cnMuCi0gICAgQ3JlYXRlUGx1Z2luQXN5bmNocm9ub3VzbHkoV2ViS2l0OjpQbHVnaW5DcmVhdGlv
blBhcmFtZXRlcnMgcGx1Z2luQ3JlYXRpb25QYXJhbWV0ZXJzKQorICAgIENyZWF0ZVBsdWdpbkFz
eW5jaHJvbm91c2x5KHN0cnVjdCBXZWJLaXQ6OlBsdWdpbkNyZWF0aW9uUGFyYW1ldGVycyBwbHVn
aW5DcmVhdGlvblBhcmFtZXRlcnMpCiAKICAgICAjIERlc3Ryb3lzIHRoZSBwbHVnLWluIGluc3Rh
bmNlIHdpdGggdGhlIGdpdmVuIGluc3RhbmNlIElELgogICAgIERlc3Ryb3lQbHVnaW4odWludDY0
X3QgcGx1Z2luSW5zdGFuY2VJRCwgYm9vbCBhc3luY2hyb25vdXNDcmVhdGlvbkluY29tcGxldGUp
IC0+ICgpIERlbGF5ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NjcmlwdHMvd2Via2l0
L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdDIvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkK
aW5kZXggNWI0YTM5ZTAwNjI4MDIyNjI1NTZjZGFiNzJjOWE1NWIwM2UyMTJjYy4uYWQ1ZjcxMzNk
ZDBiNTIwZmY1ZGM2NTNiNWRmNzFkYWYzNTU3YTRkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dlYktpdDIvU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTE1Myw4NiArMTUzLDIwIEBAIGRlZiBtZXNzYWdlX3Rv
X3N0cnVjdF9kZWNsYXJhdGlvbihtZXNzYWdlKToKICAgICByZXR1cm4gc3Vycm91bmRfaW5fY29u
ZGl0aW9uKCcnLmpvaW4ocmVzdWx0KSwgbWVzc2FnZS5jb25kaXRpb24pCiAKIAotZGVmIHN0cnVj
dF9vcl9jbGFzcyhuYW1lc3BhY2UsIHR5cGUpOgotICAgIHN0cnVjdHMgPSBmcm96ZW5zZXQoWwot
ICAgICAgICAnV2ViQ29yZTo6QW5pbWF0aW9uJywKLSAgICAgICAgJ1dlYkNvcmU6OkVkaXRvckNv
bW1hbmRzRm9yS2V5RXZlbnQnLAotICAgICAgICAnV2ViQ29yZTo6Q29tcG9zaXRpb25VbmRlcmxp
bmUnLAotICAgICAgICAnV2ViQ29yZTo6Q29va2llJywKLSAgICAgICAgJ1dlYkNvcmU6OkZsb2F0
UG9pbnQzRCcsCi0gICAgICAgICdXZWJDb3JlOjpGaWxlQ2hvb3NlclNldHRpbmdzJywKLSAgICAg
ICAgJ1dlYkNvcmU6OkdyYW1tYXJEZXRhaWwnLAotICAgICAgICAnV2ViQ29yZTo6SGlnaGxpZ2h0
JywKLSAgICAgICAgJ1dlYkNvcmU6OklEQkRhdGFiYXNlTWV0YWRhdGEnLAotICAgICAgICAnV2Vi
Q29yZTo6SURCR2V0UmVzdWx0JywKLSAgICAgICAgJ1dlYkNvcmU6OklEQkluZGV4TWV0YWRhdGEn
LAotICAgICAgICAnV2ViQ29yZTo6SURCS2V5RGF0YScsCi0gICAgICAgICdXZWJDb3JlOjpJREJL
ZXlSYW5nZURhdGEnLAotICAgICAgICAnV2ViQ29yZTo6SURCT2JqZWN0U3RvcmVNZXRhZGF0YScs
Ci0gICAgICAgICdXZWJDb3JlOjpJZGVudGl0eVRyYW5zZm9ybU9wZXJhdGlvbicsCi0gICAgICAg
ICdXZWJDb3JlOjpLZXlwcmVzc0NvbW1hbmQnLAotICAgICAgICAnV2ViQ29yZTo6TGVuZ3RoJywK
LSAgICAgICAgJ1dlYkNvcmU6Ok1hdHJpeFRyYW5zZm9ybU9wZXJhdGlvbicsCi0gICAgICAgICdX
ZWJDb3JlOjpNYXRyaXgzRFRyYW5zZm9ybU9wZXJhdGlvbicsCi0gICAgICAgICdXZWJDb3JlOjpO
b3RpZmljYXRpb25Db250ZW50cycsCi0gICAgICAgICdXZWJDb3JlOjpQYXN0ZWJvYXJkSW1hZ2Un
LAotICAgICAgICAnV2ViQ29yZTo6UGFzdGVib2FyZFdlYkNvbnRlbnQnLAotICAgICAgICAnV2Vi
Q29yZTo6UGVyc3BlY3RpdmVUcmFuc2Zvcm1PcGVyYXRpb24nLAotICAgICAgICAnV2ViQ29yZTo6
UGx1Z2luSW5mbycsCi0gICAgICAgICdXZWJDb3JlOjpQcmludEluZm8nLAotICAgICAgICAnV2Vi
Q29yZTo6Um90YXRlVHJhbnNmb3JtT3BlcmF0aW9uJywKLSAgICAgICAgJ1dlYkNvcmU6OlNjYWxl
VHJhbnNmb3JtT3BlcmF0aW9uJywKLSAgICAgICAgJ1dlYkNvcmU6OlNrZXdUcmFuc2Zvcm1PcGVy
YXRpb24nLAotICAgICAgICAnV2ViQ29yZTo6VGV4dEluZGljYXRvckRhdGEnLAotICAgICAgICAn
V2ViQ29yZTo6VGltaW5nRnVuY3Rpb24nLAotICAgICAgICAnV2ViQ29yZTo6VHJhbnNmb3JtYXRp
b25NYXRyaXgnLAotICAgICAgICAnV2ViQ29yZTo6VHJhbnNmb3JtT3BlcmF0aW9uJywKLSAgICAg
ICAgJ1dlYkNvcmU6OlRyYW5zZm9ybU9wZXJhdGlvbnMnLAotICAgICAgICAnV2ViQ29yZTo6VHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uJywKLSAgICAgICAgJ1dlYkNvcmU6OlZpZXdwb3J0QXJn
dW1lbnRzJywKLSAgICAgICAgJ1dlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRlcycsCi0gICAgICAg
ICdXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcycsCi0gICAgICAgICdXZWJLaXQ6OkFjdGlvbk1lbnVI
aXRUZXN0UmVzdWx0JywKLSAgICAgICAgJ1dlYktpdDo6QXNzaXN0ZWROb2RlSW5mb3JtYXRpb24n
LAotICAgICAgICAnV2ViS2l0OjpBdHRyaWJ1dGVkU3RyaW5nJywKLSAgICAgICAgJ1dlYktpdDo6
QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlJywKLSAgICAgICAgJ1dlYktpdDo6Q29sb3JTcGFjZURh
dGEnLAotICAgICAgICAnV2ViS2l0OjpDb250ZXh0TWVudVN0YXRlJywKLSAgICAgICAgJ1dlYktp
dDo6RGF0YWJhc2VQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJywKLSAgICAgICAgJ1dlYktpdDo6
RGljdGlvbmFyeVBvcHVwSW5mbycsCi0gICAgICAgICdXZWJLaXQ6OkRyYXdpbmdBcmVhSW5mbycs
Ci0gICAgICAgICdXZWJLaXQ6OkVkaXRpbmdSYW5nZScsCi0gICAgICAgICdXZWJLaXQ6OkVkaXRv
clN0YXRlJywKLSAgICAgICAgJ1dlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRp
b24nLAotICAgICAgICAnV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YScsCi0gICAgICAgICdX
ZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJywKLSAgICAgICAgJ1dlYktp
dDo6UGFnZVN0YXRlJywKLSAgICAgICAgJ1dlYktpdDo6UGxhdGZvcm1Qb3B1cE1lbnVEYXRhJywK
LSAgICAgICAgJ1dlYktpdDo6UGx1Z2luQ3JlYXRpb25QYXJhbWV0ZXJzJywKLSAgICAgICAgJ1dl
YktpdDo6UGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycycsCi0gICAgICAgICdXZWJLaXQ6
OlByaW50SW5mbycsCi0gICAgICAgICdXZWJLaXQ6OlNlY3VyaXR5T3JpZ2luRGF0YScsCi0gICAg
ICAgICdXZWJLaXQ6OlN0YXRpc3RpY3NEYXRhJywKLSAgICAgICAgJ1dlYktpdDo6VGV4dENoZWNr
ZXJTdGF0ZScsCi0gICAgICAgICdXZWJLaXQ6OldLT3B0aW9uSXRlbScsCi0gICAgICAgICdXZWJL
aXQ6OldlYk5hdmlnYXRpb25EYXRhU3RvcmUnLAotICAgICAgICAnV2ViS2l0OjpXZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzJywKLSAgICAgICAgJ1dlYktpdDo6V2ViUHJlZmVyZW5jZXNTdG9yZScs
Ci0gICAgICAgICdXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMnLAotICAgICAg
ICAnV2ViS2l0OjpXZWJTY3JpcHRNZXNzYWdlSGFuZGxlckhhbmRsZScsCi0gICAgICAgICdXZWJL
aXQ6OldpbmRvd0dlb21ldHJ5JywKLSAgICBdKQorZGVmIHN0cnVjdF9vcl9jbGFzcyhuYW1lc3Bh
Y2UsIGtpbmRfYW5kX3R5cGUpOgorICAgIGtpbmQsIHR5cGUgPSBraW5kX2FuZF90eXBlCiAKICAg
ICBxdWFsaWZpZWRfbmFtZSA9ICclczo6JXMnICUgKG5hbWVzcGFjZSwgdHlwZSkKLSAgICBpZiBx
dWFsaWZpZWRfbmFtZSBpbiBzdHJ1Y3RzOgorICAgIGlmIGtpbmQgPT0gJ3N0cnVjdCc6CiAgICAg
ICAgIHJldHVybiAnc3RydWN0ICVzJyAlIHR5cGUKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4g
J2NsYXNzICVzJyAlIHR5cGUKIAotICAgIHJldHVybiAnY2xhc3MgJXMnICUgdHlwZQogCi1kZWYg
Zm9yd2FyZF9kZWNsYXJhdGlvbnNfZm9yX25hbWVzcGFjZShuYW1lc3BhY2UsIHR5cGVzKToKK2Rl
ZiBmb3J3YXJkX2RlY2xhcmF0aW9uc19mb3JfbmFtZXNwYWNlKG5hbWVzcGFjZSwga2luZF9hbmRf
dHlwZXMpOgogICAgIHJlc3VsdCA9IFtdCiAgICAgcmVzdWx0LmFwcGVuZCgnbmFtZXNwYWNlICVz
IHtcbicgJSBuYW1lc3BhY2UpCi0gICAgcmVzdWx0ICs9IFsnICAgICVzO1xuJyAlIHN0cnVjdF9v
cl9jbGFzcyhuYW1lc3BhY2UsIHgpIGZvciB4IGluIHR5cGVzXQorICAgIHJlc3VsdCArPSBbJyAg
ICAlcztcbicgJSBzdHJ1Y3Rfb3JfY2xhc3MobmFtZXNwYWNlLCB4KSBmb3IgeCBpbiBraW5kX2Fu
ZF90eXBlc10KICAgICByZXN1bHQuYXBwZW5kKCd9XG4nKQogICAgIHJldHVybiAnJy5qb2luKHJl
c3VsdCkKIApAQCAtMjUzLDkgKzE4NywxMCBAQCBkZWYgZm9yd2FyZF9kZWNsYXJhdGlvbnNfYW5k
X2hlYWRlcnMocmVjZWl2ZXIpOgogICAgIGZvciBtZXNzYWdlIGluIHJlY2VpdmVyLm1lc3NhZ2Vz
OgogICAgICAgICBpZiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnMgIT0gTm9uZSBhbmQgbWVzc2Fn
ZS5oYXNfYXR0cmlidXRlKERFTEFZRURfQVRUUklCVVRFKToKICAgICAgICAgICAgIGhlYWRlcnMu
YWRkKCc8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+JykKLSAgICAgICAgICAgIHR5cGVzX2J5
X25hbWVzcGFjZVsnSVBDJ10udXBkYXRlKFsnQ29ubmVjdGlvbiddKQorICAgICAgICAgICAgdHlw
ZXNfYnlfbmFtZXNwYWNlWydJUEMnXS51cGRhdGUoWygnY2xhc3MnLCAnQ29ubmVjdGlvbicpXSkK
IAogICAgIGZvciBwYXJhbWV0ZXIgaW4gcmVjZWl2ZXIuaXRlcnBhcmFtZXRlcnMoKToKKyAgICAg
ICAga2luZCA9IHBhcmFtZXRlci5raW5kCiAgICAgICAgIHR5cGUgPSBwYXJhbWV0ZXIudHlwZQog
CiAgICAgICAgIGlmIHR5cGUuZmluZCgnPCcpICE9IC0xOgpAQCAtMjcyLDcgKzIwNyw3IEBAIGRl
ZiBmb3J3YXJkX2RlY2xhcmF0aW9uc19hbmRfaGVhZGVycyhyZWNlaXZlcik6CiAgICAgICAgIGlm
IGxlbihzcGxpdCkgPT0gMjoKICAgICAgICAgICAgIG5hbWVzcGFjZSA9IHNwbGl0WzBdCiAgICAg
ICAgICAgICBpbm5lcl90eXBlID0gc3BsaXRbMV0KLSAgICAgICAgICAgIHR5cGVzX2J5X25hbWVz
cGFjZVtuYW1lc3BhY2VdLmFkZChpbm5lcl90eXBlKQorICAgICAgICAgICAgdHlwZXNfYnlfbmFt
ZXNwYWNlW25hbWVzcGFjZV0uYWRkKChraW5kLCBpbm5lcl90eXBlKSkKICAgICAgICAgZWxpZiBs
ZW4oc3BsaXQpID4gMjoKICAgICAgICAgICAgICMgV2UgcHJvYmFibHkgaGF2ZSBhIG5lc3RlZCBz
dHJ1Y3QsIHdoaWNoIG1lYW5zIHdlIGNhbid0IGZvcndhcmQgZGVjbGFyZSBpdC4KICAgICAgICAg
ICAgICMgSW5jbHVkZSBpdHMgaGVhZGVyIGluc3RlYWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9TY3JpcHRzL3dlYmtpdC9tb2RlbC5weSBiL1NvdXJjZS9XZWJLaXQyL1NjcmlwdHMvd2Vi
a2l0L21vZGVsLnB5CmluZGV4IDE1MzYxOWU0NWEzZTYxNzY1Y2U0NzE0ZjE5ZjNhYTA2MzFjYTE5
MDEuLmViZjc1Y2NkNGE1MDlkYjIyMTQ1NDc4NTRlOTFkN2JiY2JmYzMyNjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1NjcmlwdHMvd2Via2l0L21vZGVsLnB5CisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NjcmlwdHMvd2Via2l0L21vZGVsLnB5CkBAIC01MSw3ICs1MSw4IEBAIGNsYXNzIE1lc3Nh
Z2Uob2JqZWN0KToKIAogCiBjbGFzcyBQYXJhbWV0ZXIob2JqZWN0KToKLSAgICBkZWYgX19pbml0
X18oc2VsZiwgdHlwZSwgbmFtZSwgYXR0cmlidXRlcz1Ob25lLCBjb25kaXRpb249Tm9uZSk6Cisg
ICAgZGVmIF9faW5pdF9fKHNlbGYsIGtpbmQsIHR5cGUsIG5hbWUsIGF0dHJpYnV0ZXM9Tm9uZSwg
Y29uZGl0aW9uPU5vbmUpOgorICAgICAgICBzZWxmLmtpbmQgPSBraW5kCiAgICAgICAgIHNlbGYu
dHlwZSA9IHR5cGUKICAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBzZWxmLmF0dHJp
YnV0ZXMgPSBmcm96ZW5zZXQoYXR0cmlidXRlcyBvciBbXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1NjcmlwdHMvd2Via2l0L3BhcnNlci5weSBiL1NvdXJjZS9XZWJLaXQyL1NjcmlwdHMv
d2Via2l0L3BhcnNlci5weQppbmRleCAzMmIyNTY0Yzg1ZjI5N2Q2ZWY3NjE4OTJmZTU2NzY2MTM5
YWNmOGI1Li42OWE4MWRmZWY2MmFmODU4NDJjNDQwOTEyYmQ2NTk1YzkyMTNkNTY2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TY3JpcHRzL3dlYmtpdC9wYXJzZXIucHkKKysrIGIvU291cmNl
L1dlYktpdDIvU2NyaXB0cy93ZWJraXQvcGFyc2VyLnB5CkBAIC0xMjcsNiArMTI3LDE1IEBAIGRl
ZiBwYXJzZV9wYXJhbWV0ZXJzX3N0cmluZyhwYXJhbWV0ZXJzX3N0cmluZyk6CiAgICAgZm9yIHBh
cmFtZXRlcl9zdHJpbmcgaW4gc3BsaXRfcGFyYW1ldGVyc19zdHJpbmcocGFyYW1ldGVyc19zdHJp
bmcpOgogICAgICAgICBtYXRjaCA9IHJlLnNlYXJjaChyJ1xzKig/OlxbKD9QPGF0dHJpYnV0ZXM+
Lio/KVxdXHMrKT8oP1A8dHlwZV9hbmRfbmFtZT4uKiknLCBwYXJhbWV0ZXJfc3RyaW5nKQogICAg
ICAgICBhdHRyaWJ1dGVzX3N0cmluZywgdHlwZV9hbmRfbmFtZV9zdHJpbmcgPSBtYXRjaC5ncm91
cCgnYXR0cmlidXRlcycsICd0eXBlX2FuZF9uYW1lJykKLSAgICAgICAgcGFyYW1ldGVyX3R5cGUs
IHBhcmFtZXRlcl9uYW1lID0gdHlwZV9hbmRfbmFtZV9zdHJpbmcucnNwbGl0KCcgJywgMSkKLSAg
ICAgICAgcGFyYW1ldGVycy5hcHBlbmQobW9kZWwuUGFyYW1ldGVyKHR5cGU9cGFyYW1ldGVyX3R5
cGUsIG5hbWU9cGFyYW1ldGVyX25hbWUsIGF0dHJpYnV0ZXM9cGFyc2VfYXR0cmlidXRlc19zdHJp
bmcoYXR0cmlidXRlc19zdHJpbmcpKSkKKworICAgICAgICBzcGxpdCA9IHR5cGVfYW5kX25hbWVf
c3RyaW5nLnJzcGxpdCgnICcsIDEpCisgICAgICAgIHBhcmFtZXRlcl9raW5kID0gJ2NsYXNzJwor
ICAgICAgICBpZiBzcGxpdFswXS5zdGFydHN3aXRoKCdzdHJ1Y3QgJyk6CisgICAgICAgICAgICBw
YXJhbWV0ZXJfa2luZCA9ICdzdHJ1Y3QnCisgICAgICAgICAgICBzcGxpdFswXSA9IHNwbGl0WzBd
Wzc6XQorCisgICAgICAgIHBhcmFtZXRlcl90eXBlID0gc3BsaXRbMF0KKyAgICAgICAgcGFyYW1l
dGVyX25hbWUgPSBzcGxpdFsxXQorCisgICAgICAgIHBhcmFtZXRlcnMuYXBwZW5kKG1vZGVsLlBh
cmFtZXRlcihraW5kPXBhcmFtZXRlcl9raW5kLCB0eXBlPXBhcmFtZXRlcl90eXBlLCBuYW1lPXBh
cmFtZXRlcl9uYW1lLCBhdHRyaWJ1dGVzPXBhcnNlX2F0dHJpYnV0ZXNfc3RyaW5nKGF0dHJpYnV0
ZXNfc3RyaW5nKSkpCiAgICAgcmV0dXJuIHBhcmFtZXRlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9TdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
aW5kZXggM2EwZWY0M2VjZDk5OTQzZjFlN2I1NDA0MmMyZmYxNWY1NjNkN2ZjMi4uYzE4NTM4MzJk
MjZlZjRjNjk3NWY0M2I5MzZjYjljYWE3NzM1NzVlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
QEAgLTIxLDkgKzIxLDkgQEAKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAogbWVzc2FnZXMgLT4gU3RvcmFnZU1h
bmFnZXIgewotICAgIENyZWF0ZUxvY2FsU3RvcmFnZU1hcCh1aW50NjRfdCBzdG9yYWdlTWFwSUQs
IHVpbnQ2NF90IHN0b3JhZ2VOYW1lc3BhY2VJRCwgV2ViS2l0OjpTZWN1cml0eU9yaWdpbkRhdGEg
c2VjdXJpdHlPcmlnaW5EYXRhKSBXYW50c0Nvbm5lY3Rpb24KLSAgICBDcmVhdGVUcmFuc2llbnRM
b2NhbFN0b3JhZ2VNYXAodWludDY0X3Qgc3RvcmFnZU1hcElELCB1aW50NjRfdCBzdG9yYWdlTmFt
ZXNwYWNlSUQsIFdlYktpdDo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcExldmVsU2VjdXJpdHlPcmln
aW5EYXRhLCBXZWJLaXQ6OlNlY3VyaXR5T3JpZ2luRGF0YSBzZWN1cml0eU9yaWdpbkRhdGEpIFdh
bnRzQ29ubmVjdGlvbgotICAgIENyZWF0ZVNlc3Npb25TdG9yYWdlTWFwKHVpbnQ2NF90IHN0b3Jh
Z2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU5hbWVzcGFjZUlELCBXZWJLaXQ6OlNlY3VyaXR5T3Jp
Z2luRGF0YSBzZWN1cml0eU9yaWdpbkRhdGEpIFdhbnRzQ29ubmVjdGlvbgorICAgIENyZWF0ZUxv
Y2FsU3RvcmFnZU1hcCh1aW50NjRfdCBzdG9yYWdlTWFwSUQsIHVpbnQ2NF90IHN0b3JhZ2VOYW1l
c3BhY2VJRCwgc3RydWN0IFdlYktpdDo6U2VjdXJpdHlPcmlnaW5EYXRhIHNlY3VyaXR5T3JpZ2lu
RGF0YSkgV2FudHNDb25uZWN0aW9uCisgICAgQ3JlYXRlVHJhbnNpZW50TG9jYWxTdG9yYWdlTWFw
KHVpbnQ2NF90IHN0b3JhZ2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU5hbWVzcGFjZUlELCBzdHJ1
Y3QgV2ViS2l0OjpTZWN1cml0eU9yaWdpbkRhdGEgdG9wTGV2ZWxTZWN1cml0eU9yaWdpbkRhdGEs
IHN0cnVjdCBXZWJLaXQ6OlNlY3VyaXR5T3JpZ2luRGF0YSBzZWN1cml0eU9yaWdpbkRhdGEpIFdh
bnRzQ29ubmVjdGlvbgorICAgIENyZWF0ZVNlc3Npb25TdG9yYWdlTWFwKHVpbnQ2NF90IHN0b3Jh
Z2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU5hbWVzcGFjZUlELCBzdHJ1Y3QgV2ViS2l0OjpTZWN1
cml0eU9yaWdpbkRhdGEgc2VjdXJpdHlPcmlnaW5EYXRhKSBXYW50c0Nvbm5lY3Rpb24KICAgICBE
ZXN0cm95U3RvcmFnZU1hcCh1aW50NjRfdCBzdG9yYWdlTWFwSUQpIFdhbnRzQ29ubmVjdGlvbgog
CiAgICAgR2V0VmFsdWVzKHVpbnQ2NF90IHN0b3JhZ2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU1h
cFNlZWQpIC0+IChIYXNoTWFwPFN0cmluZywgU3RyaW5nPiB2YWx1ZXMpIFdhbnRzQ29ubmVjdGlv
bgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQubWVzc2Fn
ZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5tZXNzYWdlcy5pbgpp
bmRleCAyZTRmNDYyYTI5NTUzZTNkNjNjMjBhMTUzNDY1OWMxMDQ4MzI0NjhmLi42NDMxNGIzMjM2
ZjdiMWY2ZGYwYWExOWU0ZTk2NTBkMzIxMmZlNWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViQ29udGV4dC5tZXNzYWdlcy5pbgpAQCAtMjIsMTEgKzIyLDExIEBACiAKIG1l
c3NhZ2VzIC0+IFdlYkNvbnRleHQgTGVnYWN5UmVjZWl2ZXIgewogCi0gICAgRGlkR2V0U3RhdGlz
dGljcyhXZWJLaXQ6OlN0YXRpc3RpY3NEYXRhIHN0YXRpc3RpY3NEYXRhLCB1aW50NjRfdCBjYWxs
YmFja0lEKQorICAgIERpZEdldFN0YXRpc3RpY3Moc3RydWN0IFdlYktpdDo6U3RhdGlzdGljc0Rh
dGEgc3RhdGlzdGljc0RhdGEsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAKICNpZiBQTEFURk9STShJ
T1MpCi0gICAgV3JpdGVXZWJDb250ZW50VG9QYXN0ZWJvYXJkKFdlYkNvcmU6OlBhc3RlYm9hcmRX
ZWJDb250ZW50IGNvbnRlbnQpCi0gICAgV3JpdGVJbWFnZVRvUGFzdGVib2FyZChXZWJDb3JlOjpQ
YXN0ZWJvYXJkSW1hZ2UgcGFzdGVib2FyZEltYWdlKQorICAgIFdyaXRlV2ViQ29udGVudFRvUGFz
dGVib2FyZChzdHJ1Y3QgV2ViQ29yZTo6UGFzdGVib2FyZFdlYkNvbnRlbnQgY29udGVudCkKKyAg
ICBXcml0ZUltYWdlVG9QYXN0ZWJvYXJkKHN0cnVjdCBXZWJDb3JlOjpQYXN0ZWJvYXJkSW1hZ2Ug
cGFzdGVib2FyZEltYWdlKQogICAgIFdyaXRlU3RyaW5nVG9QYXN0ZWJvYXJkKFN0cmluZyBwYXN0
ZWJvYXJkVHlwZSwgU3RyaW5nIHRleHQpIAogICAgIFJlYWRTdHJpbmdGcm9tUGFzdGVib2FyZCh1
aW50NjRfdCBpbmRleCwgU3RyaW5nIHBhc3RlYm9hcmRUeXBlKSAtPiAoU3RyaW5nIHN0cmluZykK
ICAgICBSZWFkVVJMRnJvbVBhc3RlYm9hcmQodWludDY0X3QgaW5kZXgsIFN0cmluZyBwYXN0ZWJv
YXJkVHlwZSkgLT4gKFN0cmluZyBzdHJpbmcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgppbmRleCBiYjZmMWVhOWFhMGRmMmFjYTNlNWU4
YmQ3MGVlMjc0NjQzZDBjNmRlLi44NzAzMGY5ZmUzZTA2MDA3OTdiNTIxNGI2NzkzOGE1MjI2MTYx
MDg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVz
c2FnZXMuaW4KQEAgLTIyLDcgKzIyLDcgQEAKIAogbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsK
ICAgICAjIFVJIG1lc3NhZ2VzCi0gICAgQ3JlYXRlTmV3UGFnZSh1aW50NjRfdCBmcmFtZUlELCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMg
d2luZG93RmVhdHVyZXMsIFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEgbmF2aWdhdGlvbkFj
dGlvbkRhdGEpIC0+ICh1aW50NjRfdCBuZXdQYWdlSUQsIFdlYktpdDo6V2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycyBuZXdQYWdlUGFyYW1ldGVycykKKyAgICBDcmVhdGVOZXdQYWdlKHVpbnQ2NF90
IGZyYW1lSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBzdHJ1Y3QgV2ViQ29y
ZTo6V2luZG93RmVhdHVyZXMgd2luZG93RmVhdHVyZXMsIHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRp
b25BY3Rpb25EYXRhIG5hdmlnYXRpb25BY3Rpb25EYXRhKSAtPiAodWludDY0X3QgbmV3UGFnZUlE
LCBzdHJ1Y3QgV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIG5ld1BhZ2VQYXJhbWV0
ZXJzKQogICAgIFNob3dQYWdlKCkKICAgICBDbG9zZVBhZ2UoYm9vbCBzdG9wUmVzcG9uc2l2ZW5l
c3NUaW1lcikKICAgICBSdW5KYXZhU2NyaXB0QWxlcnQodWludDY0X3QgZnJhbWVJRCwgU3RyaW5n
IG1lc3NhZ2UpIC0+ICgpIERlbGF5ZWQKQEAgLTQyLDcgKzQyLDcgQEAgbWVzc2FnZXMgLT4gV2Vi
UGFnZVByb3h5IHsKICAgICBXZWJHTFBvbGljeUZvclVSTChTdHJpbmcgdXJsKSAtPiAodWludDMy
X3QgbG9hZFBvbGljeSkKICAgICBSZXNvbHZlV2ViR0xQb2xpY3lGb3JVUkwoU3RyaW5nIHVybCkg
LT4gKHVpbnQzMl90IGxvYWRQb2xpY3kpCiAjZW5kaWYgLy8gRU5BQkxFKFdFQkdMKQotICAgIERp
ZENoYW5nZVZpZXdwb3J0UHJvcGVydGllcyhXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMgYXR0
cmlidXRlcykKKyAgICBEaWRDaGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoc3RydWN0IFdlYkNvcmU6
OlZpZXdwb3J0QXR0cmlidXRlcyBhdHRyaWJ1dGVzKQogICAgIERpZFJlY2VpdmVFdmVudCh1aW50
MzJfdCB0eXBlLCBib29sIGhhbmRsZWQpCiAgICAgU3RvcFJlc3BvbnNpdmVuZXNzVGltZXIoKQog
I2lmICFQTEFURk9STShJT1MpCkBAIC03Niw3ICs3Niw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQ
cm94eSB7CiAKICAgICBSdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoU3RyaW5nIG1lc3NhZ2Us
IHVpbnQ2NF90IGZyYW1lSUQpIC0+IChib29sIHNob3VsZENsb3NlKQogICAgIFBhZ2VEaWRTY3Jv
bGwoKQotICAgIFJ1bk9wZW5QYW5lbCh1aW50NjRfdCBmcmFtZUlELCBXZWJDb3JlOjpGaWxlQ2hv
b3NlclNldHRpbmdzIHBhcmFtZXRlcnMpCisgICAgUnVuT3BlblBhbmVsKHVpbnQ2NF90IGZyYW1l
SUQsIHN0cnVjdCBXZWJDb3JlOjpGaWxlQ2hvb3NlclNldHRpbmdzIHBhcmFtZXRlcnMpCiAgICAg
UHJpbnRGcmFtZSh1aW50NjRfdCBmcmFtZUlEKSAtPiAoKQogICAgIFJ1bk1vZGFsKCkKICAgICBO
b3RpZnlTY3JvbGxlclRodW1iSXNWaXNpYmxlSW5SZWN0KFdlYkNvcmU6OkludFJlY3Qgc2Nyb2xs
ZXJUaHVtYikKQEAgLTExNSw4ICsxMTUsOCBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewog
CiAgICAgIyBQb2xpY3kgbWVzc2FnZXMKICAgICBEZWNpZGVQb2xpY3lGb3JSZXNwb25zZVN5bmMo
dWludDY0X3QgZnJhbWVJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCB1aW50
NjRfdCBsaXN0ZW5lcklELCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVy
IHVzZXJEYXRhKSAtPiAoYm9vbCByZWNlaXZlZFBvbGljeUFjdGlvbiwgdWludDY0X3QgcG9saWN5
QWN0aW9uLCB1aW50NjRfdCBkb3dubG9hZElEKSBWYXJpYWRpYwotICAgIERlY2lkZVBvbGljeUZv
ck5hdmlnYXRpb25BY3Rpb24odWludDY0X3QgZnJhbWVJRCwgdWludDY0X3QgbmF2aWdhdGlvbklE
LCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5hdmlnYXRpb25BY3Rpb25EYXRhLCB1aW50
NjRfdCBvcmlnaW5hdGluZ0ZyYW1lSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBvcmlnaW5h
bFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCB1aW50NjRfdCBsaXN0
ZW5lcklELCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRh
KSAtPiAoYm9vbCByZWNlaXZlZFBvbGljeUFjdGlvbiwgdWludDY0X3QgbmV3TmF2aWdhdGlvbklE
LCB1aW50NjRfdCBwb2xpY3lBY3Rpb24sIHVpbnQ2NF90IGRvd25sb2FkSUQpIFZhcmlhZGljCi0g
ICAgRGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKHVpbnQ2NF90IGZyYW1lSUQsIFdlYktp
dDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCByZXF1ZXN0LCBTdHJpbmcgZnJhbWVOYW1lLCB1aW50NjRfdCBsaXN0ZW5l
cklELCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKSBW
YXJpYWRpYworICAgIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24odWludDY0X3QgZnJh
bWVJRCwgdWludDY0X3QgbmF2aWdhdGlvbklELCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0
aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgdWludDY0X3Qgb3JpZ2luYXRpbmdGcmFtZUlE
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QgcmVxdWVzdCwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpJbmplY3Rl
ZEJ1bmRsZVVzZXJNZXNzYWdlRW5jb2RlciB1c2VyRGF0YSkgLT4gKGJvb2wgcmVjZWl2ZWRQb2xp
Y3lBY3Rpb24sIHVpbnQ2NF90IG5ld05hdmlnYXRpb25JRCwgdWludDY0X3QgcG9saWN5QWN0aW9u
LCB1aW50NjRfdCBkb3dubG9hZElEKSBWYXJpYWRpYworICAgIERlY2lkZVBvbGljeUZvck5ld1dp
bmRvd0FjdGlvbih1aW50NjRfdCBmcmFtZUlELCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0
aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJl
cXVlc3QsIFN0cmluZyBmcmFtZU5hbWUsIHVpbnQ2NF90IGxpc3RlbmVySUQsIFdlYktpdDo6SW5q
ZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUVuY29kZXIgdXNlckRhdGEpIFZhcmlhZGljCiAgICAgVW5h
YmxlVG9JbXBsZW1lbnRQb2xpY3kodWludDY0X3QgZnJhbWVJRCwgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciBlcnJvciwgV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVVzZXJNZXNzYWdlRW5jb2RlciB1c2Vy
RGF0YSkgIFZhcmlhZGljCiAKICAgICAjIFByb2dyZXNzIG1lc3NhZ2VzCkBAIC0xNjUsMTEgKzE2
NSwxMSBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAgIFNjcmlwdFZhbHVlQ2FsbGJh
Y2soSVBDOjpEYXRhUmVmZXJlbmNlIHJlc3VsdERhdGEsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAg
ICAgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrKFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0PiBwYWdlUmVj
dHMsIGRvdWJsZSB0b3RhbFNjYWxlRmFjdG9yRm9yUHJpbnRpbmcsIHVpbnQ2NF90IGNhbGxiYWNr
SUQpCiAgICAgVmFsaWRhdGVDb21tYW5kQ2FsbGJhY2soU3RyaW5nIGNvbW1hbmQsIGJvb2wgaXNF
bmFibGVkLCBpbnQzMl90IHN0YXRlLCB1aW50NjRfdCBjYWxsYmFja0lEKQotICAgIEVkaXRpbmdS
YW5nZUNhbGxiYWNrKFdlYktpdDo6RWRpdGluZ1JhbmdlIHJhbmdlLCB1aW50NjRfdCBjYWxsYmFj
a0lEKQorICAgIEVkaXRpbmdSYW5nZUNhbGxiYWNrKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5n
ZSByYW5nZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBVbnNpZ25lZENhbGxiYWNrKHVpbnQ2
NF90IHJlc3VsdCwgdWludDY0X3QgY2FsbGJhY2tJRCkKLSAgICBSZWN0Rm9yQ2hhcmFjdGVyUmFu
Z2VDYWxsYmFjayhXZWJDb3JlOjpJbnRSZWN0IHJlY3QsIFdlYktpdDo6RWRpdGluZ1JhbmdlIGFj
dHVhbFJhbmdlLCB1aW50NjRfdCBjYWxsYmFja0lEKQorICAgIFJlY3RGb3JDaGFyYWN0ZXJSYW5n
ZUNhbGxiYWNrKFdlYkNvcmU6OkludFJlY3QgcmVjdCwgc3RydWN0IFdlYktpdDo6RWRpdGluZ1Jh
bmdlIGFjdHVhbFJhbmdlLCB1aW50NjRfdCBjYWxsYmFja0lEKQogI2lmIFBMQVRGT1JNKE1BQykK
LSAgICBBdHRyaWJ1dGVkU3RyaW5nRm9yQ2hhcmFjdGVyUmFuZ2VDYWxsYmFjayhXZWJLaXQ6OkF0
dHJpYnV0ZWRTdHJpbmcgc3RyaW5nLCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSBhY3R1YWxSYW5nZSwg
dWludDY0X3QgY2FsbGJhY2tJRCkKKyAgICBBdHRyaWJ1dGVkU3RyaW5nRm9yQ2hhcmFjdGVyUmFu
Z2VDYWxsYmFjayhzdHJ1Y3QgV2ViS2l0OjpBdHRyaWJ1dGVkU3RyaW5nIHN0cmluZywgc3RydWN0
IFdlYktpdDo6RWRpdGluZ1JhbmdlIGFjdHVhbFJhbmdlLCB1aW50NjRfdCBjYWxsYmFja0lEKQog
I2VuZGlmCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIEdlc3R1cmVDYWxsYmFjayhXZWJDb3JlOjpJ
bnRQb2ludCBwb2ludCwgdWludDMyX3QgZ2VzdHVyZVR5cGUsIHVpbnQzMl90IGdlc3R1cmVTdGF0
ZSwgdWludDMyX3QgZmxhZ3MsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCkBAIC0xNzcsOCArMTc3LDgg
QEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAgICBBdXRvY29ycmVjdGlvbkRhdGFDYWxs
YmFjayhWZWN0b3I8V2ViQ29yZTo6RmxvYXRSZWN0PiB0ZXh0UmVjdHMsIFN0cmluZyBmb250TmFt
ZSwgZG91YmxlIGZvbnRTaXplLCB1aW50NjRfdCB0cmFpdHMsIHVpbnQ2NF90IGNhbGxiYWNrSUQp
CiAgICAgQXV0b2NvcnJlY3Rpb25Db250ZXh0Q2FsbGJhY2soU3RyaW5nIGJlZm9yZVRleHQsIFN0
cmluZyBtYXJrZWRUZXh0LCBTdHJpbmcgc2VsZWN0ZWRUZXh0LCBTdHJpbmcgYWZ0ZXJUZXh0LCB1
aW50NjRfdCBsb2NhdGlvbiwgdWludDY0X3QgbGVuZ3RoLCB1aW50NjRfdCBjYWxsYmFja0lEKQog
ICAgIERpY3RhdGlvbkNvbnRleHRDYWxsYmFjayhTdHJpbmcgc2VsZWN0ZWRUZXh0LCBTdHJpbmcg
YmVmb3JlVGV4dCwgU3RyaW5nIGFmdGVyVGV4dCwgdWludDY0X3QgY2FsbGJhY2tJRCkKLSAgICBJ
bnRlcnByZXRLZXlFdmVudChXZWJLaXQ6OkVkaXRvclN0YXRlIHN0YXRlLCBib29sIGlzQ2hhckV2
ZW50KSAtPiAoYm9vbCBoYW5kbGVkKQotICAgIERpZFJlY2VpdmVQb3NpdGlvbkluZm9ybWF0aW9u
KFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24gaW5mb3JtYXRpb24pCisg
ICAgSW50ZXJwcmV0S2V5RXZlbnQoc3RydWN0IFdlYktpdDo6RWRpdG9yU3RhdGUgc3RhdGUsIGJv
b2wgaXNDaGFyRXZlbnQpIC0+IChib29sIGhhbmRsZWQpCisgICAgRGlkUmVjZWl2ZVBvc2l0aW9u
SW5mb3JtYXRpb24oc3RydWN0IFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRp
b24gaW5mb3JtYXRpb24pCiAgICAgU2F2ZUltYWdlVG9MaWJyYXJ5KFdlYktpdDo6U2hhcmVkTWVt
b3J5OjpIYW5kbGUgaGFuZGxlLCB1aW50NjRfdCBzaXplKQogICAgIERpZFVwZGF0ZUJsb2NrU2Vs
ZWN0aW9uV2l0aFRvdWNoKHVpbnQzMl90IHRvdWNoLCB1aW50MzJfdCBmbGFncywgZmxvYXQgZ3Jv
d1RocmVzaG9sZCwgZmxvYXQgc2hyaW5rVGhyZXNob2xkKQogICAgIFNob3dQbGF5YmFja1Rhcmdl
dFBpY2tlcihib29sIGhhc1ZpZGVvLCBXZWJDb3JlOjpJbnRSZWN0IGVsZW1lbnRSZWN0KQpAQCAt
MjIyLDEyICsyMjIsMTIgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAgICBFeGVjdXRl
VW5kb1JlZG8odWludDMyX3QgYWN0aW9uKSAtPiAoYm9vbCByZXN1bHQpCiAKICAgICAjIEVkaXRv
ciBub3RpZmljYXRpb25zCi0gICAgRWRpdG9yU3RhdGVDaGFuZ2VkKFdlYktpdDo6RWRpdG9yU3Rh
dGUgZWRpdG9yU3RhdGUpCi0gICAgQ29tcG9zaXRpb25XYXNDYW5jZWxlZChXZWJLaXQ6OkVkaXRv
clN0YXRlIGVkaXRvclN0YXRlKQorICAgIEVkaXRvclN0YXRlQ2hhbmdlZChzdHJ1Y3QgV2ViS2l0
OjpFZGl0b3JTdGF0ZSBlZGl0b3JTdGF0ZSkKKyAgICBDb21wb3NpdGlvbldhc0NhbmNlbGVkKHN0
cnVjdCBXZWJLaXQ6OkVkaXRvclN0YXRlIGVkaXRvclN0YXRlKQogCiAgICAgIyBGaW5kIG1lc3Nh
Z2VzCiAgICAgRGlkQ291bnRTdHJpbmdNYXRjaGVzKFN0cmluZyBzdHJpbmcsIHVpbnQzMl90IG1h
dGNoQ291bnQpCi0gICAgU2V0VGV4dEluZGljYXRvcihXZWJDb3JlOjpUZXh0SW5kaWNhdG9yRGF0
YSBpbmRpY2F0b3IsIGJvb2wgZmFkZU91dCkKKyAgICBTZXRUZXh0SW5kaWNhdG9yKHN0cnVjdCBX
ZWJDb3JlOjpUZXh0SW5kaWNhdG9yRGF0YSBpbmRpY2F0b3IsIGJvb2wgZmFkZU91dCkKICAgICBD
bGVhclRleHRJbmRpY2F0b3IoKQogICAgIERpZEZpbmRTdHJpbmcoU3RyaW5nIHN0cmluZywgdWlu
dDMyX3QgbWF0Y2hDb3VudCwgaW50MzJfdCBtYXRjaEluZGV4KQogICAgIERpZEZhaWxUb0ZpbmRT
dHJpbmcoU3RyaW5nIHN0cmluZykKQEAgLTIzNSw3ICsyMzUsNyBAQCBtZXNzYWdlcyAtPiBXZWJQ
YWdlUHJveHkgewogICAgIERpZEdldEltYWdlRm9yRmluZE1hdGNoKFdlYktpdDo6U2hhcmVhYmxl
Qml0bWFwOjpIYW5kbGUgY29udGVudEltYWdlSGFuZGxlLCB1aW50MzJfdCBtYXRjaEluZGV4KQog
CiAgICAgIyBQb3B1cE1lbnUgbWVzc2FnZXMKLSAgICBTaG93UG9wdXBNZW51KFdlYkNvcmU6Oklu
dFJlY3QgcmVjdCwgdWludDY0X3QgdGV4dERpcmVjdGlvbiwgVmVjdG9yPFdlYktpdDo6V2ViUG9w
dXBJdGVtPiBpdGVtcywgaW50MzJfdCBzZWxlY3RlZEluZGV4LCBXZWJLaXQ6OlBsYXRmb3JtUG9w
dXBNZW51RGF0YSBkYXRhKQorICAgIFNob3dQb3B1cE1lbnUoV2ViQ29yZTo6SW50UmVjdCByZWN0
LCB1aW50NjRfdCB0ZXh0RGlyZWN0aW9uLCBWZWN0b3I8V2ViS2l0OjpXZWJQb3B1cEl0ZW0+IGl0
ZW1zLCBpbnQzMl90IHNlbGVjdGVkSW5kZXgsIHN0cnVjdCBXZWJLaXQ6OlBsYXRmb3JtUG9wdXBN
ZW51RGF0YSBkYXRhKQogICAgIEhpZGVQb3B1cE1lbnUoKQogCiAjaWYgRU5BQkxFKENPTlRFWFRf
TUVOVVMpCkBAIC0yNzYsNyArMjc2LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAg
ICBDaGVja0dyYW1tYXJPZlN0cmluZyhTdHJpbmcgdGV4dCkgLT4gKFZlY3RvcjxXZWJDb3JlOjpH
cmFtbWFyRGV0YWlsPiByZXN1bHRzLCBpbnQzMl90IGJhZEdyYW1tYXJMb2NhdGlvbiwgaW50MzJf
dCBiYWRHcmFtbWFyTGVuZ3RoKQogICAgIFNwZWxsaW5nVUlJc1Nob3dpbmcoKSAtPiAoYm9vbCBp
c1Nob3dpbmcpCiAgICAgVXBkYXRlU3BlbGxpbmdVSVdpdGhNaXNzcGVsbGVkV29yZChTdHJpbmcg
bWlzc3BlbGxlZFdvcmQpCi0gICAgVXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKFN0
cmluZyBiYWRHcmFtbWFyUGhyYXNlLCBXZWJDb3JlOjpHcmFtbWFyRGV0YWlsIGdyYW1tYXJEZXRh
aWwpCisgICAgVXBkYXRlU3BlbGxpbmdVSVdpdGhHcmFtbWFyU3RyaW5nKFN0cmluZyBiYWRHcmFt
bWFyUGhyYXNlLCBzdHJ1Y3QgV2ViQ29yZTo6R3JhbW1hckRldGFpbCBncmFtbWFyRGV0YWlsKQog
ICAgIEdldEd1ZXNzZXNGb3JXb3JkKFN0cmluZyB3b3JkLCBTdHJpbmcgY29udGV4dCkgLT4gKFZl
Y3RvcjxTdHJpbmc+IGd1ZXNzZXMpCiAgICAgTGVhcm5Xb3JkKFN0cmluZyB3b3JkKTsKICAgICBJ
Z25vcmVXb3JkKFN0cmluZyB3b3JkKTsKQEAgLTI5Niw3ICsyOTYsNyBAQCBtZXNzYWdlcyAtPiBX
ZWJQYWdlUHJveHkgewogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgIyBEaWN0aW9uYXJ5IHN1
cHBvcnQuCi0gICAgRGlkUGVyZm9ybURpY3Rpb25hcnlMb29rdXAoV2ViS2l0OjpEaWN0aW9uYXJ5
UG9wdXBJbmZvIGRpY3Rpb25hcnlQb3B1cEluZm8pCisgICAgRGlkUGVyZm9ybURpY3Rpb25hcnlM
b29rdXAoc3RydWN0IFdlYktpdDo6RGljdGlvbmFyeVBvcHVwSW5mbyBkaWN0aW9uYXJ5UG9wdXBJ
bmZvKQogCiAgICAgIyBLZXlib2FyZCBpbnB1dCBzdXBwb3J0IG1lc3NhZ2VzCiAgICAgRXhlY3V0
ZVNhdmVkQ29tbWFuZEJ5U2VsZWN0b3IoU3RyaW5nIHNlbGVjdG9yKSAtPiAoYm9vbCBoYW5kbGVk
KQpAQCAtMzUxLDEyICszNTEsMTIgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAgICBS
ZXN0b3JlUGFnZUNlbnRlckFuZFNjYWxlKFdlYkNvcmU6OkZsb2F0UG9pbnQgdW5vYnNjdXJlZENl
bnRlciwgZG91YmxlIHNjYWxlKQogICAgIERpZEdldFRhcEhpZ2hsaWdodEdlb21ldHJpZXModWlu
dDY0X3QgcmVxdWVzdElELCBXZWJDb3JlOjpDb2xvciBjb2xvciwgVmVjdG9yPFdlYkNvcmU6OkZs
b2F0UXVhZD4gZ2VvbWV0cmllcywgV2ViQ29yZTo6SW50U2l6ZSB0b3BMZWZ0UmFkaXVzLCBXZWJD
b3JlOjpJbnRTaXplIHRvcFJpZ2h0UmFkaXVzLCBXZWJDb3JlOjpJbnRTaXplIGJvdHRvbUxlZnRS
YWRpdXMsIFdlYkNvcmU6OkludFNpemUgYm90dG9tUmlnaHRSYWRpdXMpCiAKLSAgICBTdGFydEFz
c2lzdGluZ05vZGUoV2ViS2l0OjpBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiBpbmZvcm1hdGlvbiwg
Ym9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNOb2RlLCBXZWJLaXQ6Oklu
amVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKSBWYXJpYWRpYworICAgIFN0
YXJ0QXNzaXN0aW5nTm9kZShzdHJ1Y3QgV2ViS2l0OjpBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiBp
bmZvcm1hdGlvbiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNOb2Rl
LCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKSBWYXJp
YWRpYwogICAgIFN0b3BBc3Npc3RpbmdOb2RlKCkKICAgICBOb3RpZnlSZXZlYWxlZFNlbGVjdGlv
bigpCiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQotICAgIFNob3dJbnNwZWN0b3JIaWdobGlnaHQo
V2ViQ29yZTo6SGlnaGxpZ2h0IGhpZ2hsaWdodCkKKyAgICBTaG93SW5zcGVjdG9ySGlnaGxpZ2h0
KHN0cnVjdCBXZWJDb3JlOjpIaWdobGlnaHQgaGlnaGxpZ2h0KQogICAgIEhpZGVJbnNwZWN0b3JI
aWdobGlnaHQoKQogCiAgICAgU2hvd0luc3BlY3RvckluZGljYXRpb24oKQpAQCAtNDE0LDYgKzQx
NCw2IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgSXNQbGF5aW5nQXVkaW9EaWRD
aGFuZ2UoYm9vbCBuZXdJc1BsYXlpbmdBdWRpbykKIAogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBE
aWRQZXJmb3JtQWN0aW9uTWVudUhpdFRlc3QoV2ViS2l0OjpBY3Rpb25NZW51SGl0VGVzdFJlc3Vs
dCByZXN1bHQsIGJvb2wgZm9ySW1tZWRpYXRlQWN0aW9uLCBXZWJLaXQ6OkluamVjdGVkQnVuZGxl
VXNlck1lc3NhZ2VFbmNvZGVyIHVzZXJEYXRhKSBWYXJpYWRpYworICAgIERpZFBlcmZvcm1BY3Rp
b25NZW51SGl0VGVzdChzdHJ1Y3QgV2ViS2l0OjpBY3Rpb25NZW51SGl0VGVzdFJlc3VsdCByZXN1
bHQsIGJvb2wgZm9ySW1tZWRpYXRlQWN0aW9uLCBXZWJLaXQ6OkluamVjdGVkQnVuZGxlVXNlck1l
c3NhZ2VFbmNvZGVyIHVzZXJEYXRhKSBWYXJpYWRpYwogI2VuZGlmCiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgppbmRleCAw
MWRhYWY1MmZhMDlmODBjOTg2NTkwY2Q5M2IzOTI3Y2E4MGEyNWM0Li4xZWVjZDRlZGVlNjQxN2M1
MzFkZDViY2JiMjQ3N2Y0OGU1ZjVjYTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4KQEAgLTIzLDEyICsyMywxMiBAQAog
bWVzc2FnZXMgLT4gV2ViUHJvY2Vzc1Byb3h5IExlZ2FjeVJlY2VpdmVyIHsKIAogICAgICMgSGlz
dG9yeSBjbGllbnQgbWVzc2FnZXMuCi0gICAgRGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlvbkRhdGEo
dWludDY0X3QgcGFnZUlELCBXZWJLaXQ6OldlYk5hdmlnYXRpb25EYXRhU3RvcmUgc3RvcmUsIHVp
bnQ2NF90IGZyYW1lSUQpCisgICAgRGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlvbkRhdGEodWludDY0
X3QgcGFnZUlELCBzdHJ1Y3QgV2ViS2l0OjpXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlIHN0b3JlLCB1
aW50NjRfdCBmcmFtZUlEKQogICAgIERpZFBlcmZvcm1DbGllbnRSZWRpcmVjdCh1aW50NjRfdCBw
YWdlSUQsIFN0cmluZyBzb3VyY2VVUkxTdHJpbmcsIFN0cmluZyBkZXN0aW5hdGlvblVSTFN0cmlu
ZywgdWludDY0X3QgZnJhbWVJRCkKICAgICBEaWRQZXJmb3JtU2VydmVyUmVkaXJlY3QodWludDY0
X3QgcGFnZUlELCBTdHJpbmcgc291cmNlVVJMU3RyaW5nLCBTdHJpbmcgZGVzdGluYXRpb25VUkxT
dHJpbmcsIHVpbnQ2NF90IGZyYW1lSUQpCiAgICAgRGlkVXBkYXRlSGlzdG9yeVRpdGxlKHVpbnQ2
NF90IHBhZ2VJRCwgU3RyaW5nIHRpdGxlLCBTdHJpbmcgdXJsLCB1aW50NjRfdCBmcmFtZUlEKQog
Ci0gICAgQWRkQmFja0ZvcndhcmRJdGVtKHVpbnQ2NF90IGl0ZW1JRCwgdWludDY0X3QgcGFnZUlE
LCBXZWJLaXQ6OlBhZ2VTdGF0ZSBwYWdlU3RhdGUpCisgICAgQWRkQmFja0ZvcndhcmRJdGVtKHVp
bnQ2NF90IGl0ZW1JRCwgdWludDY0X3QgcGFnZUlELCBzdHJ1Y3QgV2ViS2l0OjpQYWdlU3RhdGUg
cGFnZVN0YXRlKQogICAgIERpZERlc3Ryb3lGcmFtZSh1aW50NjRfdCBmcmFtZUlEKSAKIAogICAg
IFNob3VsZFRlcm1pbmF0ZSgpIC0+IChib29sIHNob3VsZFRlcm1pbmF0ZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvQXBwbGljYXRpb25DYWNoZS9XZWJBcHBsaWNhdGlv
bkNhY2hlTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvQXBw
bGljYXRpb25DYWNoZS9XZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlci5tZXNzYWdlcy5pbgppbmRl
eCBiZjIxZDlkOWYyYjViNWYzYjE5ZDJlYjg0ZDgyNDdmMDhlMTE4NTVmLi5iY2QyMGIyYTJkZGNk
Y2Y1NzgyYThmMTY3NWVjNDI5YzM5MmNiOTUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL0FwcGxpY2F0aW9uQ2FjaGUvV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXIubWVz
c2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9BcHBsaWNhdGlvbkNhY2hl
L1dlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0yMiw2ICsyMiw2IEBA
CiAKIG1lc3NhZ2VzIC0+IFdlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyIHsKICAgICB2b2lkIEdl
dEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5zKHVpbnQ2NF90IGNhbGxiYWNrSUQpCi0gICAgdm9pZCBE
ZWxldGVFbnRyaWVzRm9yT3JpZ2luKFdlYktpdDo6U2VjdXJpdHlPcmlnaW5EYXRhIG9yaWdpbklk
ZW50aWZpZXIpCisgICAgdm9pZCBEZWxldGVFbnRyaWVzRm9yT3JpZ2luKHN0cnVjdCBXZWJLaXQ6
OlNlY3VyaXR5T3JpZ2luRGF0YSBvcmlnaW5JZGVudGlmaWVyKQogICAgIHZvaWQgRGVsZXRlQWxs
RW50cmllcygpCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFi
YXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25u
ZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IDZlNGYzYjI4N2RlYjhlYWY5Yjk0Y2ExZWY5MmM5YzQ2
YzczNGVlZjIuLjQ0MDJkZTkxZTU4NTMxNDc4ZDMyNGIwY2JmM2RiNWE1NGVkNzRjYzEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJ
REJTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2Vz
LmluCkBAIC0yMyw3ICsyMyw3IEBACiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpICYmIEVO
QUJMRShEQVRBQkFTRV9QUk9DRVNTKQogCiBtZXNzYWdlcyAtPiBXZWJJREJTZXJ2ZXJDb25uZWN0
aW9uIExlZ2FjeVJlY2VpdmVyIHsKLSAgICBEaWRHZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0
YWRhdGEodWludDY0X3QgcmVxdWVzdElELCBib29sIHN1Y2Nlc3MsIFdlYkNvcmU6OklEQkRhdGFi
YXNlTWV0YWRhdGEgbWV0YWRhdGEpCisgICAgRGlkR2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1l
dGFkYXRhKHVpbnQ2NF90IHJlcXVlc3RJRCwgYm9vbCBzdWNjZXNzLCBzdHJ1Y3QgV2ViQ29yZTo6
SURCRGF0YWJhc2VNZXRhZGF0YSBtZXRhZGF0YSkKICAgICBEaWREZWxldGVEYXRhYmFzZSh1aW50
NjRfdCByZXF1ZXN0SUQsIGJvb2wgc3VjY2VzcykKIAogICAgIERpZE9wZW5UcmFuc2FjdGlvbih1
aW50NjRfdCByZXF1ZXN0SUQsIGJvb2wgc3VjY2VzcykKQEAgLTQwLDExICs0MCwxMSBAQCBtZXNz
YWdlcyAtPiBXZWJJREJTZXJ2ZXJDb25uZWN0aW9uIExlZ2FjeVJlY2VpdmVyIHsKICAgICBEaWRD
cmVhdGVJbmRleCh1aW50NjRfdCByZXF1ZXN0SUQsIGJvb2wgc3VjY2VzcykKICAgICBEaWREZWxl
dGVJbmRleCh1aW50NjRfdCByZXF1ZXN0SUQsIGJvb2wgc3VjY2VzcykKIAotICAgIERpZFB1dFJl
Y29yZCh1aW50NjRfdCByZXF1ZXN0SUQsIFdlYkNvcmU6OklEQktleURhdGEgcmVzdWx0S2V5LCB1
aW50MzJfdCBlcnJvckNvZGUsIFN0cmluZyBlcnJvck1lc3NhZ2UpCi0gICAgRGlkR2V0UmVjb3Jk
KHVpbnQ2NF90IHJlcXVlc3RJRCwgV2ViQ29yZTo6SURCR2V0UmVzdWx0IGdldFJlc3VsdCwgdWlu
dDMyX3QgZXJyb3JDb2RlLCBTdHJpbmcgZXJyb3JNZXNzYWdlKQotICAgIERpZE9wZW5DdXJzb3Io
dWludDY0X3QgcmVxdWVzdElELCBpbnQ2NF90IGN1cnNvcklELCBXZWJDb3JlOjpJREJLZXlEYXRh
IGtleSwgV2ViQ29yZTo6SURCS2V5RGF0YSBwcmltYXJ5S2V5LCBJUEM6OkRhdGFSZWZlcmVuY2Ug
dmFsdWUsIHVpbnQzMl90IGVycm9yQ29kZSwgU3RyaW5nIGVycm9yTWVzc2FnZSkKLSAgICBEaWRB
ZHZhbmNlQ3Vyc29yKHVpbnQ2NF90IHJlcXVlc3RJRCwgV2ViQ29yZTo6SURCS2V5RGF0YSBrZXks
IFdlYkNvcmU6OklEQktleURhdGEgcHJpbWFyeUtleSwgSVBDOjpEYXRhUmVmZXJlbmNlIHZhbHVl
LCB1aW50MzJfdCBlcnJvckNvZGUsIFN0cmluZyBlcnJvck1lc3NhZ2UpCi0gICAgRGlkSXRlcmF0
ZUN1cnNvcih1aW50NjRfdCByZXF1ZXN0SUQsIFdlYkNvcmU6OklEQktleURhdGEga2V5LCBXZWJD
b3JlOjpJREJLZXlEYXRhIHByaW1hcnlLZXksIElQQzo6RGF0YVJlZmVyZW5jZSB2YWx1ZSwgdWlu
dDMyX3QgZXJyb3JDb2RlLCBTdHJpbmcgZXJyb3JNZXNzYWdlKQorICAgIERpZFB1dFJlY29yZCh1
aW50NjRfdCByZXF1ZXN0SUQsIHN0cnVjdCBXZWJDb3JlOjpJREJLZXlEYXRhIHJlc3VsdEtleSwg
dWludDMyX3QgZXJyb3JDb2RlLCBTdHJpbmcgZXJyb3JNZXNzYWdlKQorICAgIERpZEdldFJlY29y
ZCh1aW50NjRfdCByZXF1ZXN0SUQsIHN0cnVjdCBXZWJDb3JlOjpJREJHZXRSZXN1bHQgZ2V0UmVz
dWx0LCB1aW50MzJfdCBlcnJvckNvZGUsIFN0cmluZyBlcnJvck1lc3NhZ2UpCisgICAgRGlkT3Bl
bkN1cnNvcih1aW50NjRfdCByZXF1ZXN0SUQsIGludDY0X3QgY3Vyc29ySUQsIHN0cnVjdCBXZWJD
b3JlOjpJREJLZXlEYXRhIGtleSwgc3RydWN0IFdlYkNvcmU6OklEQktleURhdGEgcHJpbWFyeUtl
eSwgSVBDOjpEYXRhUmVmZXJlbmNlIHZhbHVlLCB1aW50MzJfdCBlcnJvckNvZGUsIFN0cmluZyBl
cnJvck1lc3NhZ2UpCisgICAgRGlkQWR2YW5jZUN1cnNvcih1aW50NjRfdCByZXF1ZXN0SUQsIHN0
cnVjdCBXZWJDb3JlOjpJREJLZXlEYXRhIGtleSwgc3RydWN0IFdlYkNvcmU6OklEQktleURhdGEg
cHJpbWFyeUtleSwgSVBDOjpEYXRhUmVmZXJlbmNlIHZhbHVlLCB1aW50MzJfdCBlcnJvckNvZGUs
IFN0cmluZyBlcnJvck1lc3NhZ2UpCisgICAgRGlkSXRlcmF0ZUN1cnNvcih1aW50NjRfdCByZXF1
ZXN0SUQsIHN0cnVjdCBXZWJDb3JlOjpJREJLZXlEYXRhIGtleSwgc3RydWN0IFdlYkNvcmU6OklE
QktleURhdGEgcHJpbWFyeUtleSwgSVBDOjpEYXRhUmVmZXJlbmNlIHZhbHVlLCB1aW50MzJfdCBl
cnJvckNvZGUsIFN0cmluZyBlcnJvck1lc3NhZ2UpCiAgICAgRGlkQ291bnQodWludDY0X3QgcmVx
dWVzdElELCBpbnQ2NF90IGNvdW50LCB1aW50MzJfdCBlcnJvckNvZGUsIFN0cmluZyBlcnJvck1l
c3NhZ2UpCiAgICAgRGlkRGVsZXRlUmFuZ2UodWludDY0X3QgcmVxdWVzdElELCB1aW50MzJfdCBl
cnJvckNvZGUsIFN0cmluZyBlcnJvck1lc3NhZ2UpCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL09yaWdpbkRhdGEvV2ViT3JpZ2luRGF0YU1hbmFnZXIubWVzc2FnZXMu
aW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL09yaWdpbkRhdGEvV2ViT3JpZ2luRGF0YU1h
bmFnZXIubWVzc2FnZXMuaW4KaW5kZXggYThlN2EzMTM5ZTlmZGI5MTMwMDc4NzM4YjdiY2EzMDcy
OGQzMDlmOC4uNWMxOGMyYTU3MjY5ZmRmYzllZGExNjBkYzY4M2Y1MjhkNDYwMjIyMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9PcmlnaW5EYXRhL1dlYk9yaWdpbkRhdGFN
YW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvT3JpZ2lu
RGF0YS9XZWJPcmlnaW5EYXRhTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjIsNyArMjIsNyBAQAog
CiBtZXNzYWdlcyAtPiBXZWJPcmlnaW5EYXRhTWFuYWdlciB7CiAgICAgdm9pZCBHZXRPcmlnaW5z
KHVpbnQzMl90IHR5cGVzLCB1aW50NjRfdCBjYWxsYmFja0lEKQotICAgIHZvaWQgRGVsZXRlRW50
cmllc0Zvck9yaWdpbih1aW50MzJfdCB0eXBlcywgV2ViS2l0OjpTZWN1cml0eU9yaWdpbkRhdGEg
b3JpZ2luSWRlbnRpZmllciwgdWludDY0X3QgY2FsbGJhY2tJRCkKKyAgICB2b2lkIERlbGV0ZUVu
dHJpZXNGb3JPcmlnaW4odWludDMyX3QgdHlwZXMsIHN0cnVjdCBXZWJLaXQ6OlNlY3VyaXR5T3Jp
Z2luRGF0YSBvcmlnaW5JZGVudGlmaWVyLCB1aW50NjRfdCBjYWxsYmFja0lEKQogICAgIHZvaWQg
RGVsZXRlRW50cmllc01vZGlmaWVkQmV0d2VlbkRhdGVzKHVpbnQzMl90IHR5cGVzLCBkb3VibGUg
c3RhcnREYXRlLCBkb3VibGUgZW5kRGF0ZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKICAgICB2b2lk
IERlbGV0ZUFsbEVudHJpZXModWludDMyX3QgdHlwZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1Jlc291cmNlQ2FjaGUvV2Vi
UmVzb3VyY2VDYWNoZU1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1Jlc291cmNlQ2FjaGUvV2ViUmVzb3VyY2VDYWNoZU1hbmFnZXIubWVzc2FnZXMuaW4KaW5k
ZXggMzM2YjI1MzAxMzcyMjExNGEzYzk2OWU4YmY3NGIzZmIxZjA1YmQ5NS4uOGNmOWU3YTVhMjc1
ZjA0ZjE3NGM2OGZmYmE2YTBlZDdkMDFmNzgxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9SZXNvdXJjZUNhY2hlL1dlYlJlc291cmNlQ2FjaGVNYW5hZ2VyLm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUmVzb3VyY2VDYWNoZS9XZWJSZXNv
dXJjZUNhY2hlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjIsNiArMjIsNiBAQAogCiBtZXNzYWdl
cyAtPiBXZWJSZXNvdXJjZUNhY2hlTWFuYWdlciB7CiAgICAgdm9pZCBHZXRDYWNoZU9yaWdpbnMo
dWludDY0X3QgY2FsbGJhY2tJRCkKLSAgICB2b2lkIENsZWFyQ2FjaGVGb3JPcmlnaW4oV2ViS2l0
OjpTZWN1cml0eU9yaWdpbkRhdGEgb3JpZ2luSWRlbnRpZmllciwgdWludDMyX3QgY2FjaGVzVG9D
bGVhcikKKyAgICB2b2lkIENsZWFyQ2FjaGVGb3JPcmlnaW4oc3RydWN0IFdlYktpdDo6U2VjdXJp
dHlPcmlnaW5EYXRhIG9yaWdpbklkZW50aWZpZXIsIHVpbnQzMl90IGNhY2hlc1RvQ2xlYXIpCiAg
ICAgdm9pZCBDbGVhckNhY2hlRm9yQWxsT3JpZ2lucyh1aW50MzJfdCBjYWNoZXNUb0NsZWFyKQog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdB
cmVhLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdp
bmdBcmVhLm1lc3NhZ2VzLmluCmluZGV4IDFjZmI2MzM3Y2U0YWVhZDdkZTkyZjQ0ODYyYjQ0ZTc3
ODJhYzhmNzQuLjk4NDRlN2NhZDg5MmNmOWNjZTZmMTA4MWRhMzU3MzZjNGI2YWViMDcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5tZXNz
YWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0Fy
ZWEubWVzc2FnZXMuaW4KQEAgLTI4LDcgKzI4LDcgQEAgbWVzc2FnZXMgLT4gRHJhd2luZ0FyZWEg
ewogICAgIC8vIFVzZWQgYnkgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuCiAgICAgVXBk
YXRlR2VvbWV0cnkoV2ViQ29yZTo6SW50U2l6ZSB2aWV3U2l6ZSwgV2ViQ29yZTo6SW50U2l6ZSBs
YXllclBvc2l0aW9uKQogICAgIFNldERldmljZVNjYWxlRmFjdG9yKGZsb2F0IGRldmljZVNjYWxl
RmFjdG9yKQotICAgIFNldENvbG9yU3BhY2UoV2ViS2l0OjpDb2xvclNwYWNlRGF0YSBjb2xvclNw
YWNlKQorICAgIFNldENvbG9yU3BhY2Uoc3RydWN0IFdlYktpdDo6Q29sb3JTcGFjZURhdGEgY29s
b3JTcGFjZSkKICAgICBTZXRFeHBvc2VkUmVjdChXZWJDb3JlOjpGbG9hdFJlY3QgZXhwb3NlZFJl
Y3QpCiAKICAgICBBZGp1c3RUcmFuc2llbnRab29tKGRvdWJsZSBzY2FsZSwgV2ViQ29yZTo6Rmxv
YXRQb2ludCBvcmlnaW4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDg5ZmE2YmFiN2ExMjkwNjM0OWMwMzY5MjRi
MTA1YzhkYzk2ZTVlMzcuLjQ4ZGE1NmViMjY4MDU5MzRjMDAwYTQzNmZkNWZmNmMzZTk5ZjFjYjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
Lm1lc3NhZ2VzLmluCkBAIC03Nyw3ICs3Nyw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2UgTGVnYWN5
UmVjZWl2ZXIgewogICAgIFN5bmNBcHBseUF1dG9jb3JyZWN0aW9uKFN0cmluZyBjb3JyZWN0aW9u
LCBTdHJpbmcgb3JpZ2luYWxUZXh0KSAtPiAoYm9vbCBhdXRvY29ycmVjdGlvbkFwcGxpZWQpCiAg
ICAgUmVxdWVzdEF1dG9jb3JyZWN0aW9uQ29udGV4dCh1aW50NjRfdCBjYWxsYmFja0lEKQogICAg
IEdldEF1dG9jb3JyZWN0aW9uQ29udGV4dCgpIC0+IChTdHJpbmcgYmVmb3JlQ29udGV4dCwgU3Ry
aW5nIG1hcmtlZFRleHQsIFN0cmluZyBzZWxlY3RlZFRleHQsIFN0cmluZyBhZnRlckNvbnRleHQs
IHVpbnQ2NF90IGxvY2F0aW9uLCB1aW50NjRfdCBsZW5ndGgpIAotICAgIEdldFBvc2l0aW9uSW5m
b3JtYXRpb24oV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQpIC0+IChXZWJLaXQ6OkludGVyYWN0aW9u
SW5mb3JtYXRpb25BdFBvc2l0aW9uIGluZm9ybWF0aW9uKQorICAgIEdldFBvc2l0aW9uSW5mb3Jt
YXRpb24oV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQpIC0+IChzdHJ1Y3QgV2ViS2l0OjpJbnRlcmFj
dGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiBpbmZvcm1hdGlvbikKICAgICBSZXF1ZXN0UG9zaXRp
b25JbmZvcm1hdGlvbihXZWJDb3JlOjpJbnRQb2ludCBwb2ludCkKICAgICBTdGFydEludGVyYWN0
aW9uV2l0aEVsZW1lbnRBdFBvc2l0aW9uKFdlYkNvcmU6OkludFBvaW50IHBvaW50KQogICAgIFN0
b3BJbnRlcmFjdGlvbigpCkBAIC0xNjgsNyArMTY4LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZSBM
ZWdhY3lSZWNlaXZlciB7CiAgICAgUGVyZm9ybURpY3Rpb25hcnlMb29rdXBPZkN1cnJlbnRTZWxl
Y3Rpb24oKQogI2VuZGlmCiAKLSAgICBQcmVmZXJlbmNlc0RpZENoYW5nZShXZWJLaXQ6OldlYlBy
ZWZlcmVuY2VzU3RvcmUgc3RvcmUpCisgICAgUHJlZmVyZW5jZXNEaWRDaGFuZ2Uoc3RydWN0IFdl
YktpdDo6V2ViUHJlZmVyZW5jZXNTdG9yZSBzdG9yZSkKIAogICAgIFNldFVzZXJBZ2VudChTdHJp
bmcgdXNlckFnZW50KQogICAgIFNldEN1c3RvbVRleHRFbmNvZGluZ05hbWUoU3RyaW5nIGVuY29k
aW5nTmFtZSkKQEAgLTI4NSwxOCArMjg1LDE4IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2UgTGVnYWN5
UmVjZWl2ZXIgewogICAgIFNldFdpbmRvd1Jlc2l6ZXJTaXplKFdlYkNvcmU6OkludFNpemUgaW50
ZXJzZWN0c1ZpZXcpCiAKICAgICAjIFByaW50aW5nLgotICAgIEJlZ2luUHJpbnRpbmcodWludDY0
X3QgZnJhbWVJRCwgV2ViS2l0OjpQcmludEluZm8gcHJpbnRJbmZvKQorICAgIEJlZ2luUHJpbnRp
bmcodWludDY0X3QgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5mbykK
ICAgICBFbmRQcmludGluZygpCi0gICAgQ29tcHV0ZVBhZ2VzRm9yUHJpbnRpbmcodWludDY0X3Qg
ZnJhbWVJRCwgV2ViS2l0OjpQcmludEluZm8gcHJpbnRJbmZvLCB1aW50NjRfdCBjYWxsYmFja0lE
KQorICAgIENvbXB1dGVQYWdlc0ZvclByaW50aW5nKHVpbnQ2NF90IGZyYW1lSUQsIHN0cnVjdCBX
ZWJLaXQ6OlByaW50SW5mbyBwcmludEluZm8sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAjaWYgUExB
VEZPUk0oQ09DT0EpCi0gICAgRHJhd1JlY3RUb0ltYWdlKHVpbnQ2NF90IGZyYW1lSUQsIFdlYktp
dDo6UHJpbnRJbmZvIHByaW50SW5mbywgV2ViQ29yZTo6SW50UmVjdCByZWN0LCBXZWJDb3JlOjpJ
bnRTaXplIGltYWdlU2l6ZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKLSAgICBEcmF3UGFnZXNUb1BE
Rih1aW50NjRfdCBmcmFtZUlELCBXZWJLaXQ6OlByaW50SW5mbyBwcmludEluZm8sIHVpbnQzMl90
IGZpcnN0LCB1aW50MzJfdCBjb3VudCwgdWludDY0X3QgY2FsbGJhY2tJRCkKKyAgICBEcmF3UmVj
dFRvSW1hZ2UodWludDY0X3QgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6UHJpbnRJbmZvIHByaW50
SW5mbywgV2ViQ29yZTo6SW50UmVjdCByZWN0LCBXZWJDb3JlOjpJbnRTaXplIGltYWdlU2l6ZSwg
dWludDY0X3QgY2FsbGJhY2tJRCkKKyAgICBEcmF3UGFnZXNUb1BERih1aW50NjRfdCBmcmFtZUlE
LCBzdHJ1Y3QgV2ViS2l0OjpQcmludEluZm8gcHJpbnRJbmZvLCB1aW50MzJfdCBmaXJzdCwgdWlu
dDMyX3QgY291bnQsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAjaWYgUExBVEZPUk0oSU9TKQotICAg
IENvbXB1dGVQYWdlc0ZvclByaW50aW5nQW5kU3RhcnREcmF3aW5nVG9QREYodWludDY0X3QgZnJh
bWVJRCwgV2ViS2l0OjpQcmludEluZm8gcHJpbnRJbmZvLCB1aW50MzJfdCBmaXJzdFBhZ2UpIC0+
IChWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4gcGFnZVJlY3RzLCBkb3VibGUgdG90YWxTY2FsZUZh
Y3RvcikgRGVsYXllZAorICAgIENvbXB1dGVQYWdlc0ZvclByaW50aW5nQW5kU3RhcnREcmF3aW5n
VG9QREYodWludDY0X3QgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5m
bywgdWludDMyX3QgZmlyc3RQYWdlKSAtPiAoVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+IHBhZ2VS
ZWN0cywgZG91YmxlIHRvdGFsU2NhbGVGYWN0b3IpIERlbGF5ZWQKICNlbmRpZgogI2VuZGlmCiAj
aWYgUExBVEZPUk0oR1RLKQotICAgIERyYXdQYWdlc0ZvclByaW50aW5nKHVpbnQ2NF90IGZyYW1l
SUQsIFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5mbywgdWludDY0X3QgY2FsbGJhY2tJRCkKKyAg
ICBEcmF3UGFnZXNGb3JQcmludGluZyh1aW50NjRfdCBmcmFtZUlELCBzdHJ1Y3QgV2ViS2l0OjpQ
cmludEluZm8gcHJpbnRJbmZvLCB1aW50NjRfdCBjYWxsYmFja0lEKQogI2VuZGlmCiAKICAgICAj
IE1lZGlhCkBAIC0zNDcsMzAgKzM0NywzMCBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlIExlZ2FjeVJl
Y2VpdmVyIHsKICAgICBTaG91bGREZWxheVdpbmRvd09yZGVyaW5nRXZlbnQoV2ViS2l0OjpXZWJN
b3VzZUV2ZW50IGV2ZW50KSAtPiAoYm9vbCByZXN1bHQpCiAgICAgQWNjZXB0c0ZpcnN0TW91c2Uo
aW50IGV2ZW50TnVtYmVyLCBXZWJLaXQ6OldlYk1vdXNlRXZlbnQgZXZlbnQpIC0+IChib29sIHJl
c3VsdCkKIAotICAgIEluc2VydFRleHRBc3luYyhTdHJpbmcgdGV4dCwgV2ViS2l0OjpFZGl0aW5n
UmFuZ2UgcmVwbGFjZW1lbnRSYW5nZSwgYm9vbCByZWdpc3RlclVuZG9Hcm91cCkKKyAgICBJbnNl
cnRUZXh0QXN5bmMoU3RyaW5nIHRleHQsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBs
YWNlbWVudFJhbmdlLCBib29sIHJlZ2lzdGVyVW5kb0dyb3VwKQogICAgIEdldE1hcmtlZFJhbmdl
QXN5bmModWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBHZXRTZWxlY3RlZFJhbmdlQXN5bmModWlu
dDY0X3QgY2FsbGJhY2tJRCkKICAgICBDaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoV2ViQ29y
ZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotICAgIEZpcnN0UmVjdEZv
ckNoYXJhY3RlclJhbmdlQXN5bmMoV2ViS2l0OjpFZGl0aW5nUmFuZ2UgcmFuZ2UsIHVpbnQ2NF90
IGNhbGxiYWNrSUQpOwotICAgIFNldENvbXBvc2l0aW9uQXN5bmMoU3RyaW5nIHRleHQsIFZlY3Rv
cjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4gdW5kZXJsaW5lcywgV2ViS2l0OjpFZGl0
aW5nUmFuZ2Ugc2VsZWN0aW9uUmFuZ2UsIFdlYktpdDo6RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50
UmFuZ2UpCisgICAgRmlyc3RSZWN0Rm9yQ2hhcmFjdGVyUmFuZ2VBc3luYyhzdHJ1Y3QgV2ViS2l0
OjpFZGl0aW5nUmFuZ2UgcmFuZ2UsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOworICAgIFNldENvbXBv
c2l0aW9uQXN5bmMoU3RyaW5nIHRleHQsIFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVy
bGluZT4gdW5kZXJsaW5lcywgc3RydWN0IFdlYktpdDo6RWRpdGluZ1JhbmdlIHNlbGVjdGlvblJh
bmdlLCBzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5nUmFuZ2UgcmVwbGFjZW1lbnRSYW5nZSkKICAgICBD
b25maXJtQ29tcG9zaXRpb25Bc3luYygpCiAjZW5kaWYKICNpZiBQTEFURk9STShNQUMpCi0gICAg
SW5zZXJ0RGljdGF0ZWRUZXh0QXN5bmMoU3RyaW5nIHRleHQsIFdlYktpdDo6RWRpdGluZ1Jhbmdl
IHJlcGxhY2VtZW50UmFuZ2UsIFZlY3RvcjxXZWJDb3JlOjpEaWN0YXRpb25BbHRlcm5hdGl2ZT4g
ZGljdGF0aW9uQWx0ZXJuYXRpdmVzLCBib29sIHJlZ2lzdGVyVW5kb0dyb3VwKQotICAgIEF0dHJp
YnV0ZWRTdWJzdHJpbmdGb3JDaGFyYWN0ZXJSYW5nZUFzeW5jKFdlYktpdDo6RWRpdGluZ1Jhbmdl
IHJhbmdlLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKKyAgICBJbnNlcnREaWN0YXRlZFRleHRBc3lu
YyhTdHJpbmcgdGV4dCwgc3RydWN0IFdlYktpdDo6RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50UmFu
Z2UsIFZlY3RvcjxXZWJDb3JlOjpEaWN0YXRpb25BbHRlcm5hdGl2ZT4gZGljdGF0aW9uQWx0ZXJu
YXRpdmVzLCBib29sIHJlZ2lzdGVyVW5kb0dyb3VwKQorICAgIEF0dHJpYnV0ZWRTdWJzdHJpbmdG
b3JDaGFyYWN0ZXJSYW5nZUFzeW5jKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSwg
dWludDY0X3QgY2FsbGJhY2tJRCk7CiAjZW5kaWYKICNpZiBQTEFURk9STShNQUMpICYmICFVU0Uo
QVNZTkNfTlNURVhUSU5QVVRDTElFTlQpCi0gICAgSW5zZXJ0VGV4dChTdHJpbmcgdGV4dCwgV2Vi
S2l0OjpFZGl0aW5nUmFuZ2UgcmVwbGFjZW1lbnRSYW5nZSkgLT4gKGJvb2wgaGFuZGxlZCwgV2Vi
S2l0OjpFZGl0b3JTdGF0ZSBuZXdTdGF0ZSkKLSAgICBTZXRDb21wb3NpdGlvbihTdHJpbmcgdGV4
dCwgVmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uVW5kZXJsaW5lPiB1bmRlcmxpbmVzLCBXZWJL
aXQ6OkVkaXRpbmdSYW5nZSBzZWxlY3Rpb25SYW5nZSwgV2ViS2l0OjpFZGl0aW5nUmFuZ2UgcmVw
bGFjZW1lbnRSYW5nZSkgLT4gKFdlYktpdDo6RWRpdG9yU3RhdGUgbmV3U3RhdGUpCi0gICAgQ29u
ZmlybUNvbXBvc2l0aW9uKCkgLT4gKFdlYktpdDo6RWRpdG9yU3RhdGUgbmV3U3RhdGUpCi0gICAg
SW5zZXJ0RGljdGF0ZWRUZXh0KFN0cmluZyB0ZXh0LCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBs
YWNlbWVudFJhbmdlLCBWZWN0b3I8V2ViQ29yZTo6RGljdGF0aW9uQWx0ZXJuYXRpdmU+IGRpY3Rh
dGlvbkFsdGVybmF0aXZlcykgLT4gKGJvb2wgaGFuZGxlZCwgV2ViS2l0OjpFZGl0b3JTdGF0ZSBu
ZXdTdGF0ZSkKLSAgICBHZXRBdHRyaWJ1dGVkU3Vic3RyaW5nRnJvbVJhbmdlKFdlYktpdDo6RWRp
dGluZ1JhbmdlIHJhbmdlKSAtPiAoV2ViS2l0OjpBdHRyaWJ1dGVkU3RyaW5nIHJlc3VsdCkKLSAg
ICBHZXRNYXJrZWRSYW5nZSgpIC0+IChXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkKLSAgICBH
ZXRTZWxlY3RlZFJhbmdlKCkgLT4gKFdlYktpdDo6RWRpdGluZ1JhbmdlIHJhbmdlKQorICAgIElu
c2VydFRleHQoU3RyaW5nIHRleHQsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBsYWNl
bWVudFJhbmdlKSAtPiAoYm9vbCBoYW5kbGVkLCBzdHJ1Y3QgV2ViS2l0OjpFZGl0b3JTdGF0ZSBu
ZXdTdGF0ZSkKKyAgICBTZXRDb21wb3NpdGlvbihTdHJpbmcgdGV4dCwgVmVjdG9yPFdlYkNvcmU6
OkNvbXBvc2l0aW9uVW5kZXJsaW5lPiB1bmRlcmxpbmVzLCBzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5n
UmFuZ2Ugc2VsZWN0aW9uUmFuZ2UsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBsYWNl
bWVudFJhbmdlKSAtPiAoc3RydWN0IFdlYktpdDo6RWRpdG9yU3RhdGUgbmV3U3RhdGUpCisgICAg
Q29uZmlybUNvbXBvc2l0aW9uKCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRvclN0YXRlIG5ld1N0
YXRlKQorICAgIEluc2VydERpY3RhdGVkVGV4dChTdHJpbmcgdGV4dCwgc3RydWN0IFdlYktpdDo6
RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50UmFuZ2UsIFZlY3RvcjxXZWJDb3JlOjpEaWN0YXRpb25B
bHRlcm5hdGl2ZT4gZGljdGF0aW9uQWx0ZXJuYXRpdmVzKSAtPiAoYm9vbCBoYW5kbGVkLCBzdHJ1
Y3QgV2ViS2l0OjpFZGl0b3JTdGF0ZSBuZXdTdGF0ZSkKKyAgICBHZXRBdHRyaWJ1dGVkU3Vic3Ry
aW5nRnJvbVJhbmdlKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgLT4gKHN0cnVj
dCBXZWJLaXQ6OkF0dHJpYnV0ZWRTdHJpbmcgcmVzdWx0KQorICAgIEdldE1hcmtlZFJhbmdlKCkg
LT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkKKyAgICBHZXRTZWxlY3RlZFJh
bmdlKCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkKICAgICBDaGFyYWN0
ZXJJbmRleEZvclBvaW50KFdlYkNvcmU6OkludFBvaW50IHBvaW50KSAtPiAodWludDY0X3QgcmVz
dWx0KQotICAgIEZpcnN0UmVjdEZvckNoYXJhY3RlclJhbmdlKFdlYktpdDo6RWRpdGluZ1Jhbmdl
IHJhbmdlKSAtPiAoV2ViQ29yZTo6SW50UmVjdCByZXN1bHRSZWN0KQotICAgIEV4ZWN1dGVLZXlw
cmVzc0NvbW1hbmRzKFZlY3RvcjxXZWJDb3JlOjpLZXlwcmVzc0NvbW1hbmQ+IHNhdmVkQ29tbWFu
ZHMpIC0+IChib29sIGhhbmRsZWQsIFdlYktpdDo6RWRpdG9yU3RhdGUgbmV3U3RhdGUpCi0gICAg
Q2FuY2VsQ29tcG9zaXRpb24oKSAtPiAoV2ViS2l0OjpFZGl0b3JTdGF0ZSBuZXdTdGF0ZSkKKyAg
ICBGaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZShzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5nUmFuZ2Ug
cmFuZ2UpIC0+IChXZWJDb3JlOjpJbnRSZWN0IHJlc3VsdFJlY3QpCisgICAgRXhlY3V0ZUtleXBy
ZXNzQ29tbWFuZHMoVmVjdG9yPFdlYkNvcmU6OktleXByZXNzQ29tbWFuZD4gc2F2ZWRDb21tYW5k
cykgLT4gKGJvb2wgaGFuZGxlZCwgc3RydWN0IFdlYktpdDo6RWRpdG9yU3RhdGUgbmV3U3RhdGUp
CisgICAgQ2FuY2VsQ29tcG9zaXRpb24oKSAtPiAoc3RydWN0IFdlYktpdDo6RWRpdG9yU3RhdGUg
bmV3U3RhdGUpCiAjZW5kaWYKIAogICAgIFNldE1pbmltdW1MYXlvdXRTaXplKFdlYkNvcmU6Oklu
dFNpemUgbWluaW11bUxheW91dFNpemUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggYzk2MzUzMjg4ZmMwZTcyYTVjMzZmZTZkMmRk
ZmZkZGJjOTE1YTZkMS4uMDBkODNhYjVkMTU3NzAxMzQwNmY0Yjg1MDliZjY2YmJjNzg4MmJiZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5p
bgpAQCAtMjIsMTAgKzIyLDEwIEBACiAKIG1lc3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVj
ZWl2ZXIgewogICAgICMgSW5pdGlhbGl6ZSB0aGUgV2ViUHJvY2Vzcy4gCi0gICAgSW5pdGlhbGl6
ZVdlYlByb2Nlc3MoV2ViS2l0OjpXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMsIFdlYktpdDo6V2ViQ29udGV4dFVzZXJNZXNzYWdlRW5jb2RlciBp
bml0aWFsaXphdGlvblVzZXJEYXRhKSBWYXJpYWRpYworICAgIEluaXRpYWxpemVXZWJQcm9jZXNz
KHN0cnVjdCBXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgcHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVycywgV2ViS2l0OjpXZWJDb250ZXh0VXNlck1lc3NhZ2VFbmNvZGVyIGluaXRp
YWxpemF0aW9uVXNlckRhdGEpIFZhcmlhZGljCiAKICAgICAjIENyZWF0ZSBhIG5ldyBwYWdlLgot
ICAgIENyZWF0ZVdlYlBhZ2UodWludDY0X3QgbmV3UGFnZUlELCBXZWJLaXQ6OldlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnMgcGFnZUNyZWF0aW9uUGFyYW1ldGVycykKKyAgICBDcmVhdGVXZWJQYWdl
KHVpbnQ2NF90IG5ld1BhZ2VJRCwgc3RydWN0IFdlYktpdDo6V2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycyBwYWdlQ3JlYXRpb25QYXJhbWV0ZXJzKQogCiAgICAgIyBHbG9iYWwgcHJlZmVyZW5jZXMu
CiAgICAgU2V0Q2FjaGVNb2RlbCh1aW50MzJfdCBjYWNoZU1vZGVsKQpAQCAtNjYsNyArNjYsNyBA
QCBtZXNzYWdlcyAtPiBXZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBSZXN1bWVEb3du
bG9hZCh1aW50NjRfdCBkb3dubG9hZElELCBJUEM6OkRhdGFSZWZlcmVuY2UgcmVzdW1lRGF0YSwg
U3RyaW5nIHBhdGgsIFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHNhbmRib3hFeHRl
bnNpb25IYW5kbGUpCiAgICAgQ2FuY2VsRG93bmxvYWQodWludDY0X3QgZG93bmxvYWRJRCkKIAot
ICAgIFNldFRleHRDaGVja2VyU3RhdGUoV2ViS2l0OjpUZXh0Q2hlY2tlclN0YXRlIHRleHRDaGVj
a2VyU3RhdGUpCisgICAgU2V0VGV4dENoZWNrZXJTdGF0ZShzdHJ1Y3QgV2ViS2l0OjpUZXh0Q2hl
Y2tlclN0YXRlIHRleHRDaGVja2VyU3RhdGUpCiAKICAgICBTZXRFbmhhbmNlZEFjY2Vzc2liaWxp
dHkoYm9vbCBmbGFnKQogCg==
</data>
<flag name="review"
          id="268491"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>