<?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>85264</bug_id>
          
          <creation_ts>2012-04-30 23:09:40 -0700</creation_ts>
          <short_desc>WIP: css3-images image-resolution</short_desc>
          <delta_ts>2022-07-13 09:50:35 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=85262</see_also>
          <bug_file_loc>http://www.w3.org/TR/2011/WD-css3-images-20110217/#image-resolution</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>DoNotImportToRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Barr">davidbarr</reporter>
          <assigned_to name="David Barr">davidbarr</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>macpherson</cc>
    
    <cc>mikelawther</cc>
    
    <cc>noel.gordon</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>613255</commentid>
    <comment_count>0</comment_count>
    <who name="David Barr">davidbarr</who>
    <bug_when>2012-04-30 23:09:40 -0700</bug_when>
    <thetext>This bug is to track the initial draft of adding image-resolution.
I expect it to be broken into a series of smaller patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613260</commentid>
    <comment_count>1</comment_count>
      <attachid>139586</attachid>
    <who name="David Barr">davidbarr</who>
    <bug_when>2012-04-30 23:20:57 -0700</bug_when>
    <thetext>Created attachment 139586
Draft patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613262</commentid>
    <comment_count>2</comment_count>
    <who name="David Barr">davidbarr</who>
    <bug_when>2012-04-30 23:33:03 -0700</bug_when>
    <thetext>The attached draft patch demonstrates which components of the CSS stack are relevant to this feature.
It does not implement extracting resolution data from images or the &apos;snap&apos; keyword.
Given that my primary goal was to enumerate the affected components, I expect some bugs.
This feature should be testable using javascript tests, ie no pixel tests required.

TODO: add an enum for image-resolution flags (snap/from-image) and implement snap.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1883116</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-07-13 09:49:58 -0700</bug_when>
    <thetext>The code has changed significantly since this patch was created. We probably can&apos;t use it in its current form.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139586</attachid>
            <date>2012-04-30 23:20:57 -0700</date>
            <delta_ts>2012-04-30 23:23:10 -0700</delta_ts>
            <desc>Draft patch</desc>
            <filename>bug-85264-20120501162054.patch</filename>
            <type>text/plain</type>
            <size>38782</size>
            <attacher name="David Barr">davidbarr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE1NDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2ZhMDRlYWE3NWIzY2Nk
Y2ZlNjE5NDAyNWZiYmNhYzZjOGRiODE4Yy4uYjdiNmU4MWY2NmRlZTJjOTZhMjExYTBlZTU0NzMw
ZGUzMjVjMDc0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc0IEBACisyMDEyLTA0LTMwICBEYXZp
ZCBCYXJyICA8ZGF2aWRiYXJyQGNocm9taXVtLm9yZz4KKworICAgICAgICBFeHBlcmltZW50YWwg
Y3NzMy1pbWFnZXMgaW1hZ2UtcmVzb2x1dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODUyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHM7IGRyYWZ0IHBhdGNoLgorCisgICAgICAg
ICogV2ViQ29yZS5leHAuaW46CisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAgICAoV2ViQ29yZTo6UnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c2V0Q1NTSW1hZ2VSZXNvbHV0aW9uRW5hYmxlZCk6CisgICAg
ICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpjc3NJbWFnZVJlc29sdXRpb25F
bmFibGVkKToKKyAgICAgICAgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMpOgorICAgICAgICAqIGNz
cy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb246OmdldFByb3BlcnR5
Q1NTVmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NHcmFtbWFyLnk6CisgICAgICAgICogY3NzL0NT
U1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1ZhbGlkS2V5d29yZFByb3BlcnR5QW5k
VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjp2YWxpZFVuaXQpOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6dW5pdEZyb21TdHJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFy
c2VyOjpwYXJzZVZhbGlkUHJpbWl0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6
cGFyc2VWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OmRldGVjdE51bWJlclRv
a2VuKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmg6CisgICAgICAgICogY3NzL0NTU1ByaW1p
dGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzVmFsaWRDU1NVbml0VHlwZUZvckRv
dWJsZUNvbnZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6dW5pdENhdGVnb3J5KToKKyAgICAg
ICAgKFdlYkNvcmU6OmNvbnZlcnNpb25Ub0Nhbm9uaWNhbFVuaXRzU2NhbGVGYWN0b3IpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmNhbm9uaWNhbFVuaXRUeXBlRm9yQ2F0
ZWdvcnkpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmN1c3RvbUNzc1Rl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmNsb25lRm9yQ1NTT00p
OgorICAgICAgICAqIGNzcy9DU1NQcmltaXRpdmVWYWx1ZS5oOgorICAgICAgICAqIGNzcy9DU1NQ
cm9wZXJ0eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eTo6aXNJbmhlcml0ZWRQ
cm9wZXJ0eSk6CisgICAgICAgICogY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW46CisgICAgICAgICog
Y3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46CisgICAgICAgICogY3NzL1N0eWxlQnVpbGRlci5jcHA6
CisgICAgICAgIChBcHBseVByb3BlcnR5SW1hZ2VSZXNvbHV0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OkFwcGx5UHJvcGVydHlJbWFnZVJlc29sdXRpb246OmFwcGx5SW5oZXJpdFZhbHVlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGx5UHJvcGVydHlJbWFnZVJlc29sdXRpb246OmFwcGx5SW5pdGlh
bFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkFwcGx5UHJvcGVydHlJbWFnZVJlc29sdXRpb246
OmFwcGx5VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QXBwbHlQcm9wZXJ0eUltYWdlUmVzb2x1
dGlvbjo6Y3JlYXRlSGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlQnVpbGRlcjo6U3R5bGVCdWlsZGVyKToKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNv
bHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjpjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVySW1hZ2U6OmltYWdlRGltZW5zaW9uc0NoYW5nZWQpOgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6ZGlmZik6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6
CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJp
dGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpvcGVy
YXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YS5oOgorICAgICAgICAoU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSk6CisgICAgICAgICogdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGlu
Z3M6OkludGVybmFsU2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxTZXR0aW5n
czo6cmVzdG9yZVRvKToKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldENT
U0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICog
dGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmg6CisgICAgICAgIChJbnRlcm5hbFNldHRpbmdzKToK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEyLTA0LTI3ICBB
bGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5Abm9raWEuY29tPgogCiAgICAgICAg
IFtRdF0gRml4IG1pbmltYWwgYnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGQw
MmEyMTZmODI3YWYzYjAwMjZlZGU1ZDRkNDNjYjRlMzk5YWM3MzAuLjgxOWY1NTkxN2IxZWI0ZmQ5
NzNhMzQxYjJhM2UwMDQyMmZlY2M1YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMTItMDQtMzAgIERhdmlkIEJhcnIgIDxkYXZpZGJhcnJAY2hyb21pdW0u
b3JnPgorCisgICAgICAgIEV4cGVyaW1lbnRhbCBjc3MzLWltYWdlcyBpbWFnZS1yZXNvbHV0aW9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTI2NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcHVibGlj
L1dlYlJ1bnRpbWVGZWF0dXJlcy5oOgorICAgICAgICAoV2ViUnVudGltZUZlYXR1cmVzKToKKyAg
ICAgICAgKiBzcmMvV2ViUnVudGltZUZlYXR1cmVzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UnVudGltZUZlYXR1cmVzOjplbmFibGVDU1NJbWFnZVJlc29sdXRpb24pOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUnVudGltZUZlYXR1cmVzOjppc0NTU0ltYWdlUmVz
b2x1dGlvbkVuYWJsZWQpOgorCiAyMDEyLTA0LTI3ICBMZWFuZHJvIEdyYWNpYSBHaWwgIDxsZWFu
ZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTZWxlY3RpdmVseSByZXRyaWV2ZSB0
ZXh0IGFyb3VuZCBhIHRvdWNoZWQgcG9pbnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGU5MmMw
MjgyYmJlYjgxMmJlOTc5NGQ1ZjBmMmQ1MGRmOTQ1N2ZhNWYuLjFjOTM4MTNkNWZlZjk0NGFkYWFm
OWZiY2RiMzE3Njk3YTg2YTRlMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
ZXhwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC0xMTgxLDYgKzEx
ODEsNyBAQCBfX1pON1dlYkNvcmUxMUJpdG1hcEltYWdlQzFFUE5TXzEzSW1hZ2VPYnNlcnZlckUK
IF9fWk43V2ViQ29yZTExSlNET01XaW5kb3c2c19pbmZvRQogX19aTjdXZWJDb3JlNUltYWdlN3Nl
dERhdGFFTjNXVEYxMFBhc3NSZWZQdHJJTlNfMTJTaGFyZWRCdWZmZXJFRUViCiBfX1pON1dlYkNv
cmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMyMmlzQ1NTRXhjbHVzaW9uc0VuYWJsZWRFCitfX1pO
N1dlYkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMyN2lzQ1NTSW1hZ2VSZXNvbHV0aW9uRW5h
YmxlZEUKIF9fWk5LM0pTQzhCaW5kaW5nczEwUm9vdE9iamVjdDEyZ2xvYmFsT2JqZWN0RXYKIF9f
Wk5LM1dURjZTdHJpbmcxNGNyZWF0ZUNGU3RyaW5nRXYKIF9fWk5LN1dlYkNvcmU0Tm9kZTl0cmVl
U2NvcGVFdgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50
aW1lRW5hYmxlZEZlYXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMv
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKaW5kZXggYjdjMzFlNmE5MDNhNzFjYTA0ODYzYjdh
MTVhZjE4YTM2MWQwZTYwYi4uODMzMDBmNzU5ZmU4MjhiOTUwOGMyZDJiZDY3YTBjYWJmNjVmNTU5
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1
bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwCkBAIC01Niw2ICs1Niw3IEBAIGJvb2wgUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6aXNEZXZpY2VNb3Rpb25FbmFibGVkID0gdHJ1ZTsKIGJvb2wgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6aXNEZXZpY2VPcmllbnRhdGlvbkVuYWJsZWQgPSB0cnVlOwogYm9v
bCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjppc1NwZWVjaElucHV0RW5hYmxlZCA9IHRydWU7CiBi
b29sIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmlzQ1NTRXhjbHVzaW9uc0VuYWJsZWQgPSBmYWxz
ZTsKK2Jvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNDU1NJbWFnZVJlc29sdXRpb25FbmFi
bGVkID0gZmFsc2U7CiAKICNpZiBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQogYm9vbCBSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjppc1NjcmlwdGVkU3BlZWNoRW5hYmxlZCA9IGZhbHNlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1
cmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaAppbmRleCA4YjQ3MDA5YzhhNTMzYjIzMmUzNGI3MzI0NjkzYzEwODc5NTQxZTc1Li40
OWI1MDI0YjQ3Yjg3OWFmYThmNmNhOGMyN2UyMzA1MDEwODAxNTJmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aApAQCAtNzMsNiArNzMsOSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgc2V0Q1NTRXhjbHVz
aW9uc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNDU1NFeGNsdXNpb25zRW5hYmxlZCA9IGlz
RW5hYmxlZDsgfQogICAgIHN0YXRpYyBib29sIGNzc0V4Y2x1c2lvbnNFbmFibGVkKCkgeyByZXR1
cm4gaXNDU1NFeGNsdXNpb25zRW5hYmxlZDsgfQogCisgICAgc3RhdGljIHZvaWQgc2V0Q1NTSW1h
Z2VSZXNvbHV0aW9uRW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBpc0NTU0ltYWdlUmVzb2x1dGlv
bkVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBzdGF0aWMgYm9vbCBjc3NJbWFnZVJlc29sdXRp
b25FbmFibGVkKCkgeyByZXR1cm4gaXNDU1NJbWFnZVJlc29sdXRpb25FbmFibGVkOyB9CisKICNp
ZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAgLy8gTW96aWxsYSB2ZXJzaW9uCiAgICAgc3Rh
dGljIGJvb2wgd2Via2l0RnVsbFNjcmVlbkFQSUVuYWJsZWQoKSB7IHJldHVybiBpc0Z1bGxTY3Jl
ZW5BUElFbmFibGVkOyB9CkBAIC0yNTQsNiArMjU3LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMg
Ym9vbCBpc0RldmljZU9yaWVudGF0aW9uRW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc1NwZWVj
aElucHV0RW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc0NTU0V4Y2x1c2lvbnNFbmFibGVkOwor
ICAgIHN0YXRpYyBib29sIGlzQ1NTSW1hZ2VSZXNvbHV0aW9uRW5hYmxlZDsKICNpZiBFTkFCTEUo
U0NSSVBURURfU1BFRUNIKQogICAgIHN0YXRpYyBib29sIGlzU2NyaXB0ZWRTcGVlY2hFbmFibGVk
OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uY3BwCmluZGV4IDhkMzMxNjg4ZTJiYzUwZDE5NDRkNTgzNTY3MGJkM2JhODE5MDlm
YmEuLjFiZTU1Y2ZiNzY0M2ZkMDdkZTkyYjMwNmM2NzEyZGNiMTZhNzJlNzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0x
MjMsNiArMTIzLDcgQEAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQcm9wZXJ0
aWVzW10gPSB7CiAgICAgQ1NTUHJvcGVydHlGb250V2VpZ2h0LAogICAgIENTU1Byb3BlcnR5SGVp
Z2h0LAogICAgIENTU1Byb3BlcnR5SW1hZ2VSZW5kZXJpbmcsCisgICAgQ1NTUHJvcGVydHlJbWFn
ZVJlc29sdXRpb24sCiAgICAgQ1NTUHJvcGVydHlMZWZ0LAogICAgIENTU1Byb3BlcnR5TGV0dGVy
U3BhY2luZywKICAgICBDU1NQcm9wZXJ0eUxpbmVIZWlnaHQsCkBAIC0xNzQ2LDYgKzE3NDcsOCBA
QCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb246OmdldFBy
b3BlcnR5Q1NTVmFsdWUoQ1NTUHJvcGVydAogICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9v
bCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZUxpbmVzKTsKICAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eUltYWdlUmVuZGVyaW5nOgogICAgICAgICAgICAgcmV0dXJuIENTU1ByaW1pdGl2
ZVZhbHVlOjpjcmVhdGUoc3R5bGUtPmltYWdlUmVuZGVyaW5nKCkpOworICAgICAgICBjYXNlIENT
U1Byb3BlcnR5SW1hZ2VSZXNvbHV0aW9uOgorICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9v
bCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5pbWFnZVJlc29sdXRpb25EcHB4KCksIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NfRFBQWCk7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlMZWZ0OgogICAgICAg
ICAgICAgcmV0dXJuIGdldFBvc2l0aW9uT2Zmc2V0VmFsdWUoc3R5bGUuZ2V0KCksIENTU1Byb3Bl
cnR5TGVmdCwgbV9ub2RlLT5kb2N1bWVudCgpLT5yZW5kZXJWaWV3KCkpOwogICAgICAgICBjYXNl
IENTU1Byb3BlcnR5TGV0dGVyU3BhY2luZzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NHcmFtbWFyLnkgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55CmluZGV4IGRi
ZWUzZDliYTM0ZTUwYzNmZTU5ZjA5MTcxYmNjYTRkODYyYjY2YjQuLmU1M2Q1MDg0NjY4MjZlYzE3
NDA0OGFlNzQzNWFjOWEyMWNmMTVmZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NHcmFtbWFyLnkKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueQpAQCAtMTAx
LDcgKzEwMSw3IEBAIHN0YXRpYyBpbnQgY3NzeXlsZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBw
YXJzZXIpCiAKICV9CiAKLSVleHBlY3QgNTgKKyVleHBlY3QgNjEKIAogJW5vbmFzc29jIExPV0VT
VF9QUkVDCiAKQEAgLTE5Myw2ICsxOTMsOSBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUq
IHl5bHZhbCwgdm9pZCogcGFyc2VyKQogJXRva2VuIDxudW1iZXI+IFZXCiAldG9rZW4gPG51bWJl
cj4gVkgKICV0b2tlbiA8bnVtYmVyPiBWTUlOCisldG9rZW4gPG51bWJlcj4gRFBDTQorJXRva2Vu
IDxudW1iZXI+IERQSQorJXRva2VuIDxudW1iZXI+IERQUFgKIAogJXRva2VuIDxzdHJpbmc+IFVS
SQogJXRva2VuIDxzdHJpbmc+IEZVTkNUSU9OCkBAIC0xNDg0LDYgKzE0ODcsOSBAQCB1bmFyeV90
ZXJtOgogICB8IFZXIG1heWJlX3NwYWNlIHsgJCQuaWQgPSAwOyAkJC5mVmFsdWUgPSAkMTsgJCQu
dW5pdCA9IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfVlc7IH0KICAgfCBWSCBtYXliZV9zcGFjZSB7
ICQkLmlkID0gMDsgJCQuZlZhbHVlID0gJDE7ICQkLnVuaXQgPSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTX1ZIOyB9CiAgIHwgVk1JTiBtYXliZV9zcGFjZSB7ICQkLmlkID0gMDsgJCQuZlZhbHVlID0g
JDE7ICQkLnVuaXQgPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1ZNSU47IH0KKyAgfCBEUENNIG1h
eWJlX3NwYWNlIHsgJCQuaWQgPSAwOyAkJC5mVmFsdWUgPSAkMTsgJCQudW5pdCA9IENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NfRFBDTTsgfQorICB8IERQSSBtYXliZV9zcGFjZSB7ICQkLmlkID0gMDsg
JCQuZlZhbHVlID0gJDE7ICQkLnVuaXQgPSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0RQSTsgfQor
ICB8IERQUFggbWF5YmVfc3BhY2UgeyAkJC5pZCA9IDA7ICQkLmZWYWx1ZSA9ICQxOyAkJC51bml0
ID0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19EUFBYOyB9CiAgIDsKIAogZnVuY3Rpb246CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQYXJzZXIuY3BwCmluZGV4IDI5NDdkMTZkNGVkMjQxODBkZWQwZTY2NzhmZWU5NDY2
MjVlNjg2MDMuLmFlNWJlM2FjYmNhOTlkNjYzMjE3OGQ1NjdhZjFlYzY5MjNlNWFjYjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC01NzUsNiArNTc1LDEwIEBAIHN0YXRpYyBpbmxpbmUg
Ym9vbCBpc1ZhbGlkS2V5d29yZFByb3BlcnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0
eUlkLCBpbnQKICAgICAgICAgaWYgKHZhbHVlSUQgPT0gQ1NTVmFsdWVBdXRvIHx8IHZhbHVlSUQg
PT0gQ1NTVmFsdWVXZWJraXRPcHRpbWl6ZUNvbnRyYXN0KQogICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQ1NTUHJvcGVydHlJbWFnZVJlc29sdXRpb246
CisgICAgICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlRnJvbUltYWdlKQorICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ1NTUHJvcGVydHlMaXN0U3R5
bGVQb3NpdGlvbjogLy8gaW5zaWRlIHwgb3V0c2lkZSB8IGluaGVyaXQKICAgICAgICAgaWYgKHZh
bHVlSUQgPT0gQ1NTVmFsdWVJbnNpZGUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZU91dHNpZGUpCiAg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTEyNjMsNiArMTI2NywxMSBAQCBib29sIENTU1Bh
cnNlcjo6dmFsaWRVbml0KENTU1BhcnNlclZhbHVlKiB2YWx1ZSwgVW5pdHMgdW5pdGZsYWdzLCBD
U1NQYXJzZXJNb2RlCiAgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1RVUk46CiAgICAg
ICAgIGIgPSAodW5pdGZsYWdzICYgRkFuZ2xlKTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0RQQ006CisgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTX0RQSToKKyAgICBjYXNlIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfRFBQWDoKKyAgICAgICAg
YiA9ICh1bml0ZmxhZ3MgJiBGUmVzb2x1dGlvbik7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU19IWjoKICAgICBjYXNlIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NfS0haOgogICAgIGNhc2UgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19ESU1FTlNJT046CkBAIC0x
MjgzLDcgKzEyOTIsOCBAQCBpbmxpbmUgUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gQ1NT
UGFyc2VyOjpjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUoQ1NTUAogICAgICAgICAgICAgICAg
CiAgICAgQVNTRVJUKCh2YWx1ZS0+dW5pdCA+PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJF
UiAmJiB2YWx1ZS0+dW5pdCA8PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0tIWikKICAgICAgICAg
ICAgfHwgKHZhbHVlLT51bml0ID49IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfVFVSTiAmJiB2YWx1
ZS0+dW5pdCA8PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1JFTVMpCi0gICAgICAgICAgIHx8ICh2
YWx1ZS0+dW5pdCA+PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1ZXICYmIHZhbHVlLT51bml0IDw9
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfVk1JTikpOworICAgICAgICAgICB8fCAodmFsdWUtPnVu
aXQgPj0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19WVyAmJiB2YWx1ZS0+dW5pdCA8PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX1ZNSU4pCisgICAgICAgICAgIHx8ICh2YWx1ZS0+dW5pdCA+PSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX0RQQ00gJiYgdmFsdWUtPnVuaXQgPD0gQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU19EUFBYKSk7CiAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHZh
bHVlLT5mVmFsdWUsIHN0YXRpY19jYXN0PENTU1ByaW1pdGl2ZVZhbHVlOjpVbml0VHlwZXM+KHZh
bHVlLT51bml0KSk7CiB9CiAKQEAgLTEzMzgsNiArMTM0OCwxMiBAQCBzdGF0aWMgaW50IHVuaXRG
cm9tU3RyaW5nKENTU1BhcnNlclZhbHVlKiB2YWx1ZSkKICAgICAgICAgcmV0dXJuIENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NfVkg7CiAgICAgaWYgKGVxdWFsKHZhbHVlLT5zdHJpbmcsICJ2bWluIikp
CiAgICAgICAgIHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1ZNSU47CisgICAgaWYgKGVx
dWFsKHZhbHVlLT5zdHJpbmcsICJkcGNtIikpCisgICAgICAgIHJldHVybiBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTX0RQQ007CisgICAgaWYgKGVxdWFsKHZhbHVlLT5zdHJpbmcsICJkcGkiKSkKKyAg
ICAgICAgcmV0dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfRFBJOworICAgIGlmIChlcXVhbCh2
YWx1ZS0+c3RyaW5nLCAiZHBweCIpKQorICAgICAgICByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU19EUFBYOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xMzkxLDYgKzE0MDcsOCBAQCBpbmxp
bmUgUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZVZhbGlkUHJp
bWl0aXZlKGludCBpZGVudGlmaQogICAgICAgICByZXR1cm4gY3JlYXRlUHJpbWl0aXZlTnVtZXJp
Y1ZhbHVlKHZhbHVlKTsKICAgICBpZiAodmFsdWUtPnVuaXQgPj0gQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU19WVyAmJiB2YWx1ZS0+dW5pdCA8PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1ZNSU4pCiAg
ICAgICAgIHJldHVybiBjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUodmFsdWUpOworICAgIGlm
ICh2YWx1ZS0+dW5pdCA+PSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0RQQ00gJiYgdmFsdWUtPnVu
aXQgPD0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19EUFBYKQorICAgICAgICByZXR1cm4gY3JlYXRl
UHJpbWl0aXZlTnVtZXJpY1ZhbHVlKHZhbHVlKTsKICAgICBpZiAodmFsdWUtPnVuaXQgPj0gQ1NT
UGFyc2VyVmFsdWU6OlFfRU1TKQogICAgICAgICByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNy
ZWF0ZUFsbG93aW5nTWFyZ2luUXVpcmsodmFsdWUtPmZWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU19FTVMpOwogICAgIGlmIChpc0NhbGN1bGF0aW9uKHZhbHVlKSkKQEAgLTI0NDcsNiArMjQ2
NSwyNiBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJZCwg
Ym9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRXcmFwOgogICAgICAgICByZXR1cm4gUnVudGltZUVuYWJsZWRGZWF0dXJlczo6Y3NzRXhjbHVz
aW9uc0VuYWJsZWQoKSAmJiBwYXJzZVNob3J0aGFuZChwcm9wSWQsIHdlYmtpdFdyYXBTaG9ydGhh
bmQoKSwgaW1wb3J0YW50KTsKKyAgICBjYXNlIENTU1Byb3BlcnR5SW1hZ2VSZXNvbHV0aW9uOgor
ICAgICAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6Y3NzSW1hZ2VSZXNvbHV0aW9uRW5h
YmxlZCgpKSB7CisgICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBsaXN0ID0gQ1NTVmFs
dWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAgICAgICAgICAgYm9vbCBpc1ZhbGlk
ID0gdHJ1ZTsKKyAgICAgICAgICAgIHdoaWxlIChpc1ZhbGlkICYmIHZhbHVlKSB7CisgICAgICAg
ICAgICAgICAgaWYgKHZhbHVlLT5pZCA9PSBDU1NWYWx1ZUZyb21JbWFnZSkKKyAgICAgICAgICAg
ICAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1
ZSh2YWx1ZS0+aWQpKTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmICh2YWxpZFVuaXQodmFsdWUs
IEZSZXNvbHV0aW9uIHwgRk5vbk5lZykpCisgICAgICAgICAgICAgICAgICAgIGxpc3QtPmFwcGVu
ZChjcmVhdGVQcmltaXRpdmVOdW1lcmljVmFsdWUodmFsdWUpKTsKKyAgICAgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTsKKyAgICAgICAgICAgICAg
ICB2YWx1ZSA9IG1fdmFsdWVMaXN0LT5uZXh0KCk7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICBpZiAobGlzdC0+bGVuZ3RoKCkgJiYgaXNWYWxpZCkgeworICAgICAgICAgICAgICAgIHBhcnNl
ZFZhbHVlID0gbGlzdC5yZWxlYXNlKCk7CisgICAgICAgICAgICAgICAgbV92YWx1ZUxpc3QtPm5l
eHQoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21T
dHlsZToKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVyQ29sbGFwc2U6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlckxlZnRTdHlsZToKQEAgLTgxNzEsNiArODIwOSwxNSBAQCBpbmxpbmUgdm9p
ZCBDU1NQYXJzZXI6OmRldGVjdE51bWJlclRva2VuKFVDaGFyKiB0eXBlLCBpbnQgbGVuZ3RoKQog
ICAgIGNhc2UgJ2QnOgogICAgICAgICBpZiAobGVuZ3RoID09IDMgJiYgaXNBU0NJSUFscGhhQ2Fz
ZWxlc3NFcXVhbCh0eXBlWzFdLCAnZScpICYmIGlzQVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwodHlw
ZVsyXSwgJ2cnKSkKICAgICAgICAgICAgIG1fdG9rZW4gPSBERUdTOworICAgICAgICBlbHNlIGlm
IChsZW5ndGggPiAyICYmIGlzQVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwodHlwZVsxXSwgJ3AnKSkg
eworICAgICAgICAgICAgaWYgKGxlbmd0aCA9PSA0KSB7CisgICAgICAgICAgICAgICAgaWYgKGlz
QVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwodHlwZVsyXSwgJ2MnKSAmJiBpc0FTQ0lJQWxwaGFDYXNl
bGVzc0VxdWFsKHR5cGVbM10sICdtJykpCisgICAgICAgICAgICAgICAgICAgIG1fdG9rZW4gPSBE
UENNOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGlzQVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwo
dHlwZVsyXSwgJ3AnKSAmJiBpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKHR5cGVbM10sICd4Jykp
CisgICAgICAgICAgICAgICAgICAgIG1fdG9rZW4gPSBEUFBYOworICAgICAgICAgICAgfSBlbHNl
IGlmIChsZW5ndGggPT0gMyAmJiBpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKHR5cGVbMl0sICdp
JykpCisgICAgICAgICAgICAgICAgICAgIG1fdG9rZW4gPSBEUEk7CisgICAgICAgIH0KICAgICAg
ICAgcmV0dXJuOwogCiAgICAgY2FzZSAnZSc6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKaW5kZXggMmM1
YTI3YWI4OWNiMDUzM2Q5NDVkOTNmNWZmNTRkY2UyNjQ3OWVmZC4uNDUwZTZmMjZhNmJlYzBmN2Jj
N2Y0ODNhNDczMjYxZmM4ZjJjYjUxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1BhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaApAQCAtNDMzLDcg
KzQzMyw4IEBAIHByaXZhdGU6CiAgICAgICAgIEZUaW1lICAgICAgPSAweDAwMjAsCiAgICAgICAg
IEZGcmVxdWVuY3kgPSAweDAwNDAsCiAgICAgICAgIEZSZWxhdGl2ZSAgPSAweDAxMDAsCi0gICAg
ICAgIEZOb25OZWcgICAgPSAweDAyMDAKKyAgICAgICAgRk5vbk5lZyAgICA9IDB4MDIwMCwKKyAg
ICAgICAgRlJlc29sdXRpb249IDB4MDQwMAogICAgIH07CiAKICAgICBmcmllbmQgaW5saW5lIFVu
aXRzIG9wZXJhdG9yfChVbml0cyBhLCBVbml0cyBiKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmlt
aXRpdmVWYWx1ZS5jcHAKaW5kZXggODUzMTc0MGYyZDA3NDUxMjk1NTM2ZDk4ZTZiN2U0ZDhkNTg5
N2JjZS4uODBlMzViNjI2NjE5OTk5MmJiNWU0NzFmZDUwMTAwYjk2M2E3MDcwMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCkBAIC02MCw2ICs2MCw5IEBAIHN0YXRp
YyBpbmxpbmUgYm9vbCBpc1ZhbGlkQ1NTVW5pdFR5cGVGb3JEb3VibGVDb252ZXJzaW9uKENTU1By
aW1pdGl2ZVZhbHVlOjpVbml0CiAgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6IENTU19DTToK
ICAgICBjYXNlIENTU1ByaW1pdGl2ZVZhbHVlOjogQ1NTX0RFRzoKICAgICBjYXNlIENTU1ByaW1p
dGl2ZVZhbHVlOjogQ1NTX0RJTUVOU0lPTjoKKyAgICBjYXNlIENTU1ByaW1pdGl2ZVZhbHVlOjog
Q1NTX0RQQ006CisgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6IENTU19EUEk6CisgICAgY2Fz
ZSBDU1NQcmltaXRpdmVWYWx1ZTo6IENTU19EUFBYOgogICAgIGNhc2UgQ1NTUHJpbWl0aXZlVmFs
dWU6OiBDU1NfRU1TOgogICAgIGNhc2UgQ1NTUHJpbWl0aXZlVmFsdWU6OiBDU1NfRVhTOgogICAg
IGNhc2UgQ1NTUHJpbWl0aXZlVmFsdWU6OiBDU1NfR1JBRDoKQEAgLTEzNyw2ICsxNDAsMTAgQEAg
c3RhdGljIENTU1ByaW1pdGl2ZVZhbHVlOjpVbml0Q2F0ZWdvcnkgdW5pdENhdGVnb3J5KENTU1By
aW1pdGl2ZVZhbHVlOjpVbml0VHlwZXMKICAgICBjYXNlIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
Vkg6CiAgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX1ZNSU46CiAgICAgICAgIHJldHVy
biBDU1NQcmltaXRpdmVWYWx1ZTo6VVZpZXdwb3J0UGVyY2VudGFnZUxlbmd0aDsKKyAgICBjYXNl
IENTU1ByaW1pdGl2ZVZhbHVlOjogQ1NTX0RQQ006CisgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1
ZTo6IENTU19EUEk6CisgICAgY2FzZSBDU1NQcmltaXRpdmVWYWx1ZTo6IENTU19EUFBYOgorICAg
ICAgICByZXR1cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OlVSZXNvbHV0aW9uOwogICAgIGRlZmF1bHQ6
CiAgICAgICAgIHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6VU90aGVyOwogICAgIH0KQEAgLTU0
NywxMiArNTU0LDE4IEBAIHN0YXRpYyBkb3VibGUgY29udmVyc2lvblRvQ2Fub25pY2FsVW5pdHNT
Y2FsZUZhY3Rvcih1bnNpZ25lZCBzaG9ydCB1bml0VHlwZSkKICAgICAgICAgY2FzZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX0NNOgogICAgICAgICAgICAgZmFjdG9yID0gY3NzUGl4ZWxzUGVySW5j
aCAvIDIuNTQ7IC8vICgyLjU0IGNtL2luKQogICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19EUENNOgorICAgICAgICAgICAgZmFjdG9yID0gMi41
NCAvIGNzc1BpeGVsc1BlckluY2g7IC8vICgyLjU0IGNtL2luKQorICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIGNhc2UgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19NTToKICAgICAgICAgICAgIGZh
Y3RvciA9IGNzc1BpeGVsc1BlckluY2ggLyAyNS40OwogICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgIGNhc2UgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19JTjoKICAgICAgICAgICAgIGZhY3RvciA9
IGNzc1BpeGVsc1BlckluY2g7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX0RQSToKKyAgICAgICAgICAgIGZhY3RvciA9IDEgLyBjc3NQaXhl
bHNQZXJJbmNoOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19QVDoKICAgICAgICAgICAgIGZhY3RvciA9IGNzc1BpeGVsc1BlckluY2ggLyA3
Mi4wOwogICAgICAgICAgICAgYnJlYWs7CkBAIC02MjMsNiArNjM2LDggQEAgQ1NTUHJpbWl0aXZl
VmFsdWU6OlVuaXRUeXBlcyBDU1NQcmltaXRpdmVWYWx1ZTo6Y2Fub25pY2FsVW5pdFR5cGVGb3JD
YXRlZ29yeShVbmkKICAgICAgICAgcmV0dXJuIENTU19IWjsKICAgICBjYXNlIFVWaWV3cG9ydFBl
cmNlbnRhZ2VMZW5ndGg6CiAgICAgICAgIHJldHVybiBDU1NfVU5LTk9XTjsgLy8gQ2Fubm90IGNv
bnZlcnQgYmV0d2VlbiBudW1iZXJzIGFuZCByZWxhdGl2ZSBsZW5ndGhzLgorICAgIGNhc2UgVVJl
c29sdXRpb246CisgICAgICAgIHJldHVybiBDU1NfRFBQWDsKICAgICBkZWZhdWx0OgogICAgICAg
ICByZXR1cm4gQ1NTX1VOS05PV047CiAgICAgfQpAQCAtODI0LDYgKzgzOSwxNSBAQCBTdHJpbmcg
Q1NTUHJpbWl0aXZlVmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogICAgICAgICBjYXNlIENT
U19DTToKICAgICAgICAgICAgIHRleHQgPSBmb3JtYXROdW1iZXIobV92YWx1ZS5udW0pICsgImNt
IjsKICAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENTU19EUENNOgorICAgICAgICAg
ICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSkgKyAiZHBjbSI7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NfRFBJOgorICAgICAgICAgICAgdGV4dCA9IGZvcm1h
dE51bWJlcihtX3ZhbHVlLm51bSkgKyAiZHBpIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIENTU19EUFBYOgorICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVl
Lm51bSkgKyAiZHBweCI7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBDU1NfTU06
CiAgICAgICAgICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtKSArICJtbSI7CiAg
ICAgICAgICAgICBicmVhazsKQEAgLTExNDcsNiArMTE3MSw5IEBAIFBhc3NSZWZQdHI8Q1NTUHJp
bWl0aXZlVmFsdWU+IENTU1ByaW1pdGl2ZVZhbHVlOjpjbG9uZUZvckNTU09NKCkgY29uc3QKICAg
ICBjYXNlIENTU19WVzoKICAgICBjYXNlIENTU19WSDoKICAgICBjYXNlIENTU19WTUlOOgorICAg
IGNhc2UgQ1NTX0RQQ006CisgICAgY2FzZSBDU1NfRFBJOgorICAgIGNhc2UgQ1NTX0RQUFg6CiAg
ICAgICAgIHJlc3VsdCA9IENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUobV92YWx1ZS5udW0sIHN0
YXRpY19jYXN0PFVuaXRUeXBlcz4obV9wcmltaXRpdmVVbml0VHlwZSkpOwogICAgICAgICBicmVh
azsKICAgICBjYXNlIENTU19JREVOVDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVl
LmgKaW5kZXggYTg2ZjllMjk2MTU2NjliNWVkMDY1ZTBmMjUzMGYxYzIxYmNmZmZkNy4uMjFmZGRi
ZTEwZDUxMDg4MDQ5NDJlZjVhOTRmNzkwNDk1NzAzZmQxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlLmgKQEAgLTExMSw3ICsxMTEsMTIgQEAgcHVibGljOgogCiAgICAgICAg
IENTU19DQUxDID0gMTEyLAogICAgICAgICBDU1NfQ0FMQ19QRVJDRU5UQUdFX1dJVEhfTlVNQkVS
ID0gMTEzLAotICAgICAgICBDU1NfQ0FMQ19QRVJDRU5UQUdFX1dJVEhfTEVOR1RIID0gMTE0Cisg
ICAgICAgIENTU19DQUxDX1BFUkNFTlRBR0VfV0lUSF9MRU5HVEggPSAxMTQsCisKKyAgICAgICAg
Ly8gVXNlZCBieSBpbWFnZS1yZXNvbHV0aW9uCisgICAgICAgIENTU19EUEkgPSAxMTUsCisgICAg
ICAgIENTU19EUENNID0gMTE2LAorICAgICAgICBDU1NfRFBQWCA9IDExNwogICAgIH07CiAKICAg
ICAvLyBUaGlzIGVudW0gZm9sbG93cyB0aGUgQ1NTUGFyc2VyOjpVbml0cyBlbnVtIGF1Z21lbnRl
ZCB3aXRoIFVOSVRfRlJFUVVFTkNZIGZvciBmcmVxdWVuY2llcy4KQEAgLTEyMyw2ICsxMjgsNyBA
QCBwdWJsaWM6CiAgICAgICAgIFVUaW1lLAogICAgICAgICBVRnJlcXVlbmN5LAogICAgICAgICBV
Vmlld3BvcnRQZXJjZW50YWdlTGVuZ3RoLAorICAgICAgICBVUmVzb2x1dGlvbiwKICAgICAgICAg
VU90aGVyCiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnR5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eS5jcHAKaW5kZXggYWQ4Nzk3
YWVjMDk1YmQzMjY3ZGY0OTQ2NGVjMDdiNWUzZGIxOTU0NS4uYWY5MDY3ZjQwY2E0MDczYjIzZmZl
YTIwNjM4NjMwN2NlMTU3N2QzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
b3BlcnR5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuY3BwCkBAIC0y
NjgsNiArMjY4LDcgQEAgYm9vbCBDU1NQcm9wZXJ0eTo6aXNJbmhlcml0ZWRQcm9wZXJ0eShDU1NQ
cm9wZXJ0eUlEIHByb3BlcnR5SUQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50Ogog
ICAgIGNhc2UgQ1NTUHJvcGVydHlGb250V2VpZ2h0OgogICAgIGNhc2UgQ1NTUHJvcGVydHlJbWFn
ZVJlbmRlcmluZzoKKyAgICBjYXNlIENTU1Byb3BlcnR5SW1hZ2VSZXNvbHV0aW9uOgogICAgIGNh
c2UgQ1NTUHJvcGVydHlMZXR0ZXJTcGFjaW5nOgogICAgIGNhc2UgQ1NTUHJvcGVydHlMaW5lSGVp
Z2h0OgogICAgIGNhc2UgQ1NTUHJvcGVydHlMaXN0U3R5bGU6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cm9wZXJ0eU5hbWVzLmluCmluZGV4IGFlZTVjMDZhZjBiMzJmNjYxZmM1MWE1OWU5NmRiY2IzNjRi
MDlmMjUuLmEzMzZkMmE0OTcwNzQ0NmVmNjkwNjA3N2M5YjRkZjQ4OTY2ZjBmYzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCkBAIC0xMDQsNiArMTA0LDcgQEAgZmxvYXQK
IGZvbnQtc3RyZXRjaAogaGVpZ2h0CiBpbWFnZS1yZW5kZXJpbmcKK2ltYWdlLXJlc29sdXRpb24K
IGxlZnQKIGxldHRlci1zcGFjaW5nCiBsaXN0LXN0eWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1
ZUtleXdvcmRzLmluCmluZGV4IDY0ODI4MTI0M2RmYWUwZWIwZDMxYTBmNjJmOGFkMmQxOGUwNjgz
YWMuLjJjNTRjMDc0Y2M2NDRlM2Q3YjlhNGQwNThiYTc2MDI5NjNhZmE2ZjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC05MTMsMyArOTEzLDYgQEAgZmlsdGVyLWJv
eAogZGV0YWNoZWQKICNlbmRpZiAvLyBDU1NfU0hBREVSUwogI2VuZGlmIC8vIENTU19GSUxURVJT
CisKKy8vIGltYWdlLXJlc29sdXRpb24KK2Zyb20taW1hZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVp
bGRlci5jcHAKaW5kZXggNzllZGY3YzJlOTA4NjBhYzlhYjBhZDk5MzM1MDJlNDcwZTA1M2RjNy4u
YjI0ZjNhY2QzNTViMGNlMWVlZDNkOTZhNzlmNmFiOTUyZjg2YjU1ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlQnVpbGRlci5jcHAKQEAgLTE3NjQsNiArMTc2NCw0NCBAQCBwcml2YXRlOgogCiB9Owog
CitjbGFzcyBBcHBseVByb3BlcnR5SW1hZ2VSZXNvbHV0aW9uIHsKK3B1YmxpYzoKKyAgICBzdGF0
aWMgdm9pZCBhcHBseUluaGVyaXRWYWx1ZShTdHlsZVJlc29sdmVyKiBzdHlsZVJlc29sdmVyKQor
ICAgIHsKKyAgICAgICAgQXBwbHlQcm9wZXJ0eURlZmF1bHRCYXNlPHVuc2lnbmVkLCAmUmVuZGVy
U3R5bGU6OmltYWdlUmVzb2x1dGlvbkZyb21JbWFnZSwgdW5zaWduZWQsICZSZW5kZXJTdHlsZTo6
c2V0SW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlLCB1bnNpZ25lZCwgJlJlbmRlclN0eWxlOjppbml0
aWFsSW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlPjo6YXBwbHlJbmhlcml0VmFsdWUoc3R5bGVSZXNv
bHZlcik7CisgICAgICAgIEFwcGx5UHJvcGVydHlEZWZhdWx0QmFzZTxmbG9hdCwgJlJlbmRlclN0
eWxlOjppbWFnZVJlc29sdXRpb25EcHB4LCBmbG9hdCwgJlJlbmRlclN0eWxlOjpzZXRJbWFnZVJl
c29sdXRpb25EcHB4LCBmbG9hdCwgJlJlbmRlclN0eWxlOjppbml0aWFsSW1hZ2VSZXNvbHV0aW9u
RHBweD46OmFwcGx5SW5oZXJpdFZhbHVlKHN0eWxlUmVzb2x2ZXIpOworICAgIH0KKworICAgIHN0
YXRpYyB2b2lkIGFwcGx5SW5pdGlhbFZhbHVlKFN0eWxlUmVzb2x2ZXIqIHN0eWxlUmVzb2x2ZXIp
CisgICAgeworICAgICAgICBBcHBseVByb3BlcnR5RGVmYXVsdEJhc2U8dW5zaWduZWQsICZSZW5k
ZXJTdHlsZTo6aW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlLCB1bnNpZ25lZCwgJlJlbmRlclN0eWxl
OjpzZXRJbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2UsIHVuc2lnbmVkLCAmUmVuZGVyU3R5bGU6Omlu
aXRpYWxJbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2U+OjphcHBseUluaXRpYWxWYWx1ZShzdHlsZVJl
c29sdmVyKTsKKyAgICAgICAgQXBwbHlQcm9wZXJ0eURlZmF1bHRCYXNlPGZsb2F0LCAmUmVuZGVy
U3R5bGU6OmltYWdlUmVzb2x1dGlvbkRwcHgsIGZsb2F0LCAmUmVuZGVyU3R5bGU6OnNldEltYWdl
UmVzb2x1dGlvbkRwcHgsIGZsb2F0LCAmUmVuZGVyU3R5bGU6OmluaXRpYWxJbWFnZVJlc29sdXRp
b25EcHB4Pjo6YXBwbHlJbml0aWFsVmFsdWUoc3R5bGVSZXNvbHZlcik7CisgICAgfQorCisgICAg
c3RhdGljIHZvaWQgYXBwbHlWYWx1ZShTdHlsZVJlc29sdmVyKiBzdHlsZVJlc29sdmVyLCBDU1NW
YWx1ZSogdmFsdWUpCisgICAgeworICAgICAgICBpZiAoIXZhbHVlLT5pc1ZhbHVlTGlzdCgpKQor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBDU1NWYWx1ZUxpc3QqIHZhbHVlTGlzdCA9IHN0
YXRpY19jYXN0PENTU1ZhbHVlTGlzdCo+KHZhbHVlKTsKKyAgICAgICAgaW50IGxlbiA9IHZhbHVl
TGlzdC0+bGVuZ3RoKCk7CisgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbGVuOyBpKyspIHsK
KyAgICAgICAgICAgIENTU1ZhbHVlKiBpdGVtID0gdmFsdWVMaXN0LT5pdGVtV2l0aG91dEJvdW5k
c0NoZWNrKGkpOworICAgICAgICAgICAgaWYgKCFpdGVtLT5pc1ByaW1pdGl2ZVZhbHVlKCkpCisg
ICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSog
cHJpbWl0aXZlVmFsdWUgPSBzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KGl0ZW0pOwor
ICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpID09IENTU1ZhbHVlRnJv
bUltYWdlKQorICAgICAgICAgICAgICAgIHN0eWxlUmVzb2x2ZXItPnN0eWxlKCktPnNldEltYWdl
UmVzb2x1dGlvbkZyb21JbWFnZSgxKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICBzdHlsZVJlc29sdmVyLT5zdHlsZSgpLT5zZXRJbWFnZVJlc29sdXRpb25EcHB4KHByaW1pdGl2
ZVZhbHVlLT5nZXREb3VibGVWYWx1ZShDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX0RQUFgpKTsKKyAg
ICAgICAgfQorICAgIH0KKworICAgIHN0YXRpYyBQcm9wZXJ0eUhhbmRsZXIgY3JlYXRlSGFuZGxl
cigpCisgICAgeworICAgICAgICByZXR1cm4gUHJvcGVydHlIYW5kbGVyKCZhcHBseUluaGVyaXRW
YWx1ZSwgJmFwcGx5SW5pdGlhbFZhbHVlLCAmYXBwbHlWYWx1ZSk7CisgICAgfQorfTsKKwogY29u
c3QgU3R5bGVCdWlsZGVyJiBTdHlsZUJ1aWxkZXI6OnNoYXJlZFN0eWxlQnVpbGRlcigpCiB7CiAg
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHlsZUJ1aWxkZXIsIHN0eWxlQnVpbGRlckluc3RhbmNl
LCAoKSk7CkBAIC0xODQwLDYgKzE4NzgsNyBAQCBTdHlsZUJ1aWxkZXI6OlN0eWxlQnVpbGRlcigp
CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Rm9udFdlaWdodCwgQXBwbHlQcm9w
ZXJ0eUZvbnRXZWlnaHQ6OmNyZWF0ZUhhbmRsZXIoKSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVy
KENTU1Byb3BlcnR5SGVpZ2h0LCBBcHBseVByb3BlcnR5TGVuZ3RoPCZSZW5kZXJTdHlsZTo6aGVp
Z2h0LCAmUmVuZGVyU3R5bGU6OnNldEhlaWdodCwgJlJlbmRlclN0eWxlOjppbml0aWFsU2l6ZSwg
QXV0b0VuYWJsZWQsIEludHJpbnNpY0VuYWJsZWQsIE1pbkludHJpbnNpY0VuYWJsZWQsIE5vbmVE
aXNhYmxlZCwgVW5kZWZpbmVkRGlzYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFBy
b3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUltYWdlUmVuZGVyaW5nLCBBcHBseVByb3BlcnR5RGVm
YXVsdDxFSW1hZ2VSZW5kZXJpbmcsICZSZW5kZXJTdHlsZTo6aW1hZ2VSZW5kZXJpbmcsIEVJbWFn
ZVJlbmRlcmluZywgJlJlbmRlclN0eWxlOjpzZXRJbWFnZVJlbmRlcmluZywgRUltYWdlUmVuZGVy
aW5nLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxJbWFnZVJlbmRlcmluZz46OmNyZWF0ZUhhbmRsZXIo
KSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5SW1hZ2VSZXNvbHV0aW9uLCBB
cHBseVByb3BlcnR5SW1hZ2VSZXNvbHV0aW9uOjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFBy
b3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUxlZnQsIEFwcGx5UHJvcGVydHlMZW5ndGg8JlJlbmRl
clN0eWxlOjpsZWZ0LCAmUmVuZGVyU3R5bGU6OnNldExlZnQsICZSZW5kZXJTdHlsZTo6aW5pdGlh
bE9mZnNldCwgQXV0b0VuYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5
SGFuZGxlcihDU1NQcm9wZXJ0eUxldHRlclNwYWNpbmcsIEFwcGx5UHJvcGVydHlDb21wdXRlTGVu
Z3RoPGludCwgJlJlbmRlclN0eWxlOjpsZXR0ZXJTcGFjaW5nLCAmUmVuZGVyU3R5bGU6OnNldExl
dHRlclNwYWNpbmcsICZSZW5kZXJTdHlsZTo6aW5pdGlhbExldHRlcldvcmRTcGFjaW5nLCBOb3Jt
YWxFbmFibGVkLCBUaGlja25lc3NEaXNhYmxlZCwgU1ZHWm9vbUVuYWJsZWQ+OjpjcmVhdGVIYW5k
bGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUxpbmVIZWlnaHQsIEFw
cGx5UHJvcGVydHlMaW5lSGVpZ2h0OjpjcmVhdGVIYW5kbGVyKCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDg2ZTBlNWM4ZmIxMTg2MGU4NzIzNWY5MmY5MjJmMjQ5Njc4
ZjQ5MTYuLmE0YWMxOWRjZTgzNjVkMzEzYWRkMDYxNzgwNTYyYmRkM2Y1NWE0ZTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTM5ODEsNiArMzk4MSw3IEBAIHZvaWQgU3R5
bGVSZXNvbHZlcjo6YXBwbHlQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkLCBDU1NWYWx1ZSAqdmFs
dWUpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRXZWlnaHQ6CiAgICAgY2FzZSBDU1NQcm9wZXJ0
eUhlaWdodDoKICAgICBjYXNlIENTU1Byb3BlcnR5SW1hZ2VSZW5kZXJpbmc6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eUltYWdlUmVzb2x1dGlvbjoKICAgICBjYXNlIENTU1Byb3BlcnR5TGVmdDoKICAg
ICBjYXNlIENTU1Byb3BlcnR5TGV0dGVyU3BhY2luZzoKICAgICBjYXNlIENTU1Byb3BlcnR5TGlu
ZUhlaWdodDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwCmluZGV4IDM1
Y2FhZmYyOWM0YWE2YjRjODI5ZjQ5MjhiMzk2ZTNjMThlYjFiODMuLjAxZDBjMzA5OWZlOTExZTUy
Zjc0ZTgwMmFhMjRiMTA1NjEzYWNhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckltYWdlLmNwcApAQCAtMTM3LDYgKzEzNyw4IEBAIHZvaWQgUmVuZGVySW1hZ2U6OnN0eWxlRGlk
Q2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xkU3R5CiAg
ICAgICAgICAgICBpbWFnZURpbWVuc2lvbnNDaGFuZ2VkKHRydWUgLyogaW1hZ2VTaXplQ2hhbmdl
ZCAqLyk7CiAgICAgICAgIG1fbmVlZHNUb1NldFNpemVGb3JBbHRUZXh0ID0gZmFsc2U7CiAgICAg
fQorICAgIGlmIChkaWZmID09IFN0eWxlRGlmZmVyZW5jZUxheW91dCkKKyAgICAgICAgaW1hZ2VE
aW1lbnNpb25zQ2hhbmdlZCh0cnVlIC8qIGltYWdlU2l6ZUNoYW5nZWQgKi8pOwogfQogCiB2b2lk
IFJlbmRlckltYWdlOjppbWFnZUNoYW5nZWQoV3JhcHBlZEltYWdlUHRyIG5ld0ltYWdlLCBjb25z
dCBJbnRSZWN0KiByZWN0KQpAQCAtMTg5LDcgKzE5MSw3IEBAIGJvb2wgUmVuZGVySW1hZ2U6OnVw
ZGF0ZUludHJpbnNpY1NpemVJZk5lZWRlZChjb25zdCBJbnRTaXplJiBuZXdTaXplLCBib29sIGlt
YWdlCiB2b2lkIFJlbmRlckltYWdlOjppbWFnZURpbWVuc2lvbnNDaGFuZ2VkKGJvb2wgaW1hZ2VT
aXplQ2hhbmdlZCwgY29uc3QgSW50UmVjdCogcmVjdCkKIHsKICAgICBib29sIHNob3VsZFJlcGFp
bnQgPSB0cnVlOwotICAgIGlmICh1cGRhdGVJbnRyaW5zaWNTaXplSWZOZWVkZWQobV9pbWFnZVJl
c291cmNlLT5pbWFnZVNpemUoc3R5bGUoKS0+ZWZmZWN0aXZlWm9vbSgpKSwgaW1hZ2VTaXplQ2hh
bmdlZCkpIHsKKyAgICBpZiAodXBkYXRlSW50cmluc2ljU2l6ZUlmTmVlZGVkKG1faW1hZ2VSZXNv
dXJjZS0+aW1hZ2VTaXplKHN0eWxlKCktPmVmZmVjdGl2ZVpvb20oKSAvIHN0eWxlKCktPmltYWdl
UmVzb2x1dGlvbkRwcHgoKSksIGltYWdlU2l6ZUNoYW5nZWQpKSB7CiAgICAgICAgIC8vIEluIHRo
ZSBjYXNlIG9mIGdlbmVyYXRlZCBpbWFnZSBjb250ZW50IHVzaW5nIDpiZWZvcmUvOmFmdGVyLCB3
ZSBtaWdodCBub3QgYmUgaW4gdGhlCiAgICAgICAgIC8vIHJlbmRlciB0cmVlIHlldC4gIEluIHRo
YXQgY2FzZSwgd2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBjaGVjayBmb3IgbGF5b3V0LCBz
aW5jZSB3ZSdsbCBnZXQgYQogICAgICAgICAvLyBsYXlvdXQgd2hlbiB3ZSBnZXQgYWRkZWQgaW4g
dG8gdGhlIHJlbmRlciB0cmVlIGhpZXJhcmNoeSBsYXRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4IDNiZTMwNWRiNTZkODcyMTMwMzk3
OGUyZjJmZTY2ZjhlN2FhYWRlZWQuLmFkYjA4NjJkYWE2MTQwMzI5ZDM1YjAyNzM1ZmMzOTA2ODdl
OGIyYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmNwcApAQCAtNDY0LDcgKzQ2NCw5IEBAIFN0eWxlRGlmZmVyZW5jZSBSZW5kZXJTdHlsZTo6ZGlm
Zihjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIsIHVuc2lnbmVkJiBjaGFuZ2VkQ29uCiAgICAgICAg
ICAgICB8fCByYXJlSW5oZXJpdGVkRGF0YS0+bV9saW5lQm94Q29udGFpbiAhPSBvdGhlci0+cmFy
ZUluaGVyaXRlZERhdGEtPm1fbGluZUJveENvbnRhaW4KICAgICAgICAgICAgIHx8IHJhcmVJbmhl
cml0ZWREYXRhLT5tX2xpbmVHcmlkICE9IG90aGVyLT5yYXJlSW5oZXJpdGVkRGF0YS0+bV9saW5l
R3JpZAogICAgICAgICAgICAgfHwgcmFyZUluaGVyaXRlZERhdGEtPm1fbGluZVNuYXAgIT0gb3Ro
ZXItPnJhcmVJbmhlcml0ZWREYXRhLT5tX2xpbmVTbmFwCi0gICAgICAgICAgICB8fCByYXJlSW5o
ZXJpdGVkRGF0YS0+bV9saW5lQWxpZ24gIT0gb3RoZXItPnJhcmVJbmhlcml0ZWREYXRhLT5tX2xp
bmVBbGlnbikKKyAgICAgICAgICAgIHx8IHJhcmVJbmhlcml0ZWREYXRhLT5tX2xpbmVBbGlnbiAh
PSBvdGhlci0+cmFyZUluaGVyaXRlZERhdGEtPm1fbGluZUFsaWduCisgICAgICAgICAgICB8fCBy
YXJlSW5oZXJpdGVkRGF0YS0+bV9pbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2UgIT0gb3RoZXItPnJh
cmVJbmhlcml0ZWREYXRhLT5tX2ltYWdlUmVzb2x1dGlvbkZyb21JbWFnZQorICAgICAgICAgICAg
fHwgcmFyZUluaGVyaXRlZERhdGEtPm1faW1hZ2VSZXNvbHV0aW9uRHBweCAhPSBvdGhlci0+cmFy
ZUluaGVyaXRlZERhdGEtPm1faW1hZ2VSZXNvbHV0aW9uRHBweCkKICAgICAgICAgICAgIHJldHVy
biBTdHlsZURpZmZlcmVuY2VMYXlvdXQ7CiAKICAgICAgICAgaWYgKCFyYXJlSW5oZXJpdGVkRGF0
YS0+c2hhZG93RGF0YUVxdWl2YWxlbnQoKm90aGVyLT5yYXJlSW5oZXJpdGVkRGF0YS5nZXQoKSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IGFi
MzRhYWNhMmEyMDVmY2U1NjdjYjZmZjg0NjMyODdjNWYwNWY2OTUuLjNmZWQyMmFkMzJlYWY2MTBl
YTFjODNiM2M1YzQ0YjY3ZDgzMDUzYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5oCkBAIC05NjksNiArOTY5LDkgQEAgcHVibGljOgogICAgIGJvb2wg
aXNGbGlwcGVkQmxvY2tzV3JpdGluZ01vZGUoKSBjb25zdCB7IHJldHVybiB3cml0aW5nTW9kZSgp
ID09IFJpZ2h0VG9MZWZ0V3JpdGluZ01vZGUgfHwgd3JpdGluZ01vZGUoKSA9PSBCb3R0b21Ub1Rv
cFdyaXRpbmdNb2RlOyB9CiAKICAgICBFSW1hZ2VSZW5kZXJpbmcgaW1hZ2VSZW5kZXJpbmcoKSBj
b25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFSW1hZ2VSZW5kZXJpbmc+KHJhcmVJbmhlcml0ZWRE
YXRhLT5tX2ltYWdlUmVuZGVyaW5nKTsgfQorCisgICAgdW5zaWduZWQgaW1hZ2VSZXNvbHV0aW9u
RnJvbUltYWdlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHJhcmVJbmhl
cml0ZWREYXRhLT5tX2ltYWdlUmVzb2x1dGlvbkZyb21JbWFnZSk7IH0KKyAgICBmbG9hdCBpbWFn
ZVJlc29sdXRpb25EcHB4KCkgY29uc3QgeyByZXR1cm4gcmFyZUluaGVyaXRlZERhdGEtPm1faW1h
Z2VSZXNvbHV0aW9uRHBweDsgfQogICAgIAogICAgIEVTcGVhayBzcGVhaygpIGNvbnN0IHsgcmV0
dXJuIHN0YXRpY19jYXN0PEVTcGVhaz4ocmFyZUluaGVyaXRlZERhdGEtPnNwZWFrKTsgfQogCkBA
IC0xMTM2LDYgKzExMzksOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBzZXRFZmZlY3RpdmVab29tKGZs
b2F0KTsKICAgICB2b2lkIHNldEltYWdlUmVuZGVyaW5nKEVJbWFnZVJlbmRlcmluZyB2KSB7IFNF
VF9WQVIocmFyZUluaGVyaXRlZERhdGEsIG1faW1hZ2VSZW5kZXJpbmcsIHYpIH0KIAorICAgIHZv
aWQgc2V0SW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlKHVuc2lnbmVkIHYpIHsgU0VUX1ZBUihyYXJl
SW5oZXJpdGVkRGF0YSwgbV9pbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2UsIHYpIH0KKyAgICB2b2lk
IHNldEltYWdlUmVzb2x1dGlvbkRwcHgoZmxvYXQgZikgeyBTRVRfVkFSKHJhcmVJbmhlcml0ZWRE
YXRhLCBtX2ltYWdlUmVzb2x1dGlvbkRwcHgsIGYpIH0KKwogICAgIHZvaWQgc2V0V2hpdGVTcGFj
ZShFV2hpdGVTcGFjZSB2KSB7IGluaGVyaXRlZF9mbGFncy5fd2hpdGVfc3BhY2UgPSB2OyB9CiAK
ICAgICB2b2lkIHNldFdvcmRTcGFjaW5nKGludCB2KSB7IGluaGVyaXRlZC5hY2Nlc3MoKS0+Zm9u
dC5zZXRXb3JkU3BhY2luZyh2KTsgfQpAQCAtMTY0Miw2ICsxNjQ4LDggQEAgcHVibGljOgogICAg
IHN0YXRpYyBUZXh0RW1waGFzaXNQb3NpdGlvbiBpbml0aWFsVGV4dEVtcGhhc2lzUG9zaXRpb24o
KSB7IHJldHVybiBUZXh0RW1waGFzaXNQb3NpdGlvbk92ZXI7IH0KICAgICBzdGF0aWMgTGluZUJv
eENvbnRhaW4gaW5pdGlhbExpbmVCb3hDb250YWluKCkgeyByZXR1cm4gTGluZUJveENvbnRhaW5C
bG9jayB8IExpbmVCb3hDb250YWluSW5saW5lIHwgTGluZUJveENvbnRhaW5SZXBsYWNlZDsgfQog
ICAgIHN0YXRpYyBFSW1hZ2VSZW5kZXJpbmcgaW5pdGlhbEltYWdlUmVuZGVyaW5nKCkgeyByZXR1
cm4gSW1hZ2VSZW5kZXJpbmdBdXRvOyB9CisgICAgc3RhdGljIHVuc2lnbmVkIGluaXRpYWxJbWFn
ZVJlc29sdXRpb25Gcm9tSW1hZ2UoKSB7IHJldHVybiAwOyB9CisgICAgc3RhdGljIGZsb2F0IGlu
aXRpYWxJbWFnZVJlc29sdXRpb25EcHB4KCkgeyByZXR1cm4gMTsgfQogICAgIHN0YXRpYyBTdHls
ZUltYWdlKiBpbml0aWFsQm9yZGVySW1hZ2VTb3VyY2UoKSB7IHJldHVybiAwOyB9CiAgICAgc3Rh
dGljIFN0eWxlSW1hZ2UqIGluaXRpYWxNYXNrQm94SW1hZ2VTb3VyY2UoKSB7IHJldHVybiAwOyB9
CiAgICAgc3RhdGljIFByaW50Q29sb3JBZGp1c3QgaW5pdGlhbFByaW50Q29sb3JBZGp1c3QoKSB7
IHJldHVybiBQcmludENvbG9yQWRqdXN0RWNvbm9teTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCmluZGV4
IDVkNzM3OTNjZTU0YTAzNGM0YWVkMWE3YjM3NGE5YTljOGI0Y2FmMDIuLjhlOWIzOGFjMzgwNGIz
N2Q0MWIyYTYzZTc2ZGY1NjVjZGY4ZTZmMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTU4LDEw
ICs1OCwxMiBAQCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRh
KCkKICNpZiBFTkFCTEUoT1ZFUkZMT1dfU0NST0xMSU5HKQogICAgICwgdXNlVG91Y2hPdmVyZmxv
d1Njcm9sbGluZyhSZW5kZXJTdHlsZTo6aW5pdGlhbFVzZVRvdWNoT3ZlcmZsb3dTY3JvbGxpbmco
KSkKICNlbmRpZgorICAgICwgbV9pbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2UoUmVuZGVyU3R5bGU6
OmluaXRpYWxJbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2UoKSkKICAgICAsIGh5cGhlbmF0aW9uTGlt
aXRCZWZvcmUoLTEpCiAgICAgLCBoeXBoZW5hdGlvbkxpbWl0QWZ0ZXIoLTEpCiAgICAgLCBoeXBo
ZW5hdGlvbkxpbWl0TGluZXMoLTEpCiAgICAgLCBtX2xpbmVHcmlkKFJlbmRlclN0eWxlOjppbml0
aWFsTGluZUdyaWQoKSkKKyAgICAsIG1faW1hZ2VSZXNvbHV0aW9uRHBweChSZW5kZXJTdHlsZTo6
aW5pdGlhbEltYWdlUmVzb2x1dGlvbkRwcHgoKSkKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQog
ICAgICwgdGFwSGlnaGxpZ2h0Q29sb3IoUmVuZGVyU3R5bGU6OmluaXRpYWxUYXBIaWdobGlnaHRD
b2xvcigpKQogI2VuZGlmICAgIApAQCAtMTA2LDYgKzEwOCw3IEBAIFN0eWxlUmFyZUluaGVyaXRl
ZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YSYgbykKICNpZiBFTkFCTEUoT1ZFUkZMT1dfU0NST0xMSU5HKQogICAgICwgdXNlVG91Y2hPdmVy
Zmxvd1Njcm9sbGluZyhvLnVzZVRvdWNoT3ZlcmZsb3dTY3JvbGxpbmcpCiAjZW5kaWYKKyAgICAs
IG1faW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlKG8ubV9pbWFnZVJlc29sdXRpb25Gcm9tSW1hZ2Up
CiAgICAgLCBoeXBoZW5hdGlvblN0cmluZyhvLmh5cGhlbmF0aW9uU3RyaW5nKQogICAgICwgaHlw
aGVuYXRpb25MaW1pdEJlZm9yZShvLmh5cGhlbmF0aW9uTGltaXRCZWZvcmUpCiAgICAgLCBoeXBo
ZW5hdGlvbkxpbWl0QWZ0ZXIoby5oeXBoZW5hdGlvbkxpbWl0QWZ0ZXIpCkBAIC0xMTMsNiArMTE2
LDcgQEAgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YShjb25z
dCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhJiBvKQogICAgICwgbG9jYWxlKG8ubG9jYWxlKQogICAg
ICwgdGV4dEVtcGhhc2lzQ3VzdG9tTWFyayhvLnRleHRFbXBoYXNpc0N1c3RvbU1hcmspCiAgICAg
LCBtX2xpbmVHcmlkKG8ubV9saW5lR3JpZCkKKyAgICAsIG1faW1hZ2VSZXNvbHV0aW9uRHBweChv
Lm1faW1hZ2VSZXNvbHV0aW9uRHBweCkKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogICAgICwg
dGFwSGlnaGxpZ2h0Q29sb3Ioby50YXBIaWdobGlnaHRDb2xvcikKICNlbmRpZgpAQCAtMTc5LDYg
KzE4Myw4IEBAIGJvb2wgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PShjb25zdCBT
dHlsZVJhcmVJbmhlcml0ZWREYXRhJiBvKSBjb25zdAogICAgICAgICAmJiBRdW90ZXNEYXRhOjpl
cXVhbChxdW90ZXMuZ2V0KCksIG8ucXVvdGVzLmdldCgpKQogICAgICAgICAmJiBtX2xpbmVHcmlk
ID09IG8ubV9saW5lR3JpZAogICAgICAgICAmJiBtX2ltYWdlUmVuZGVyaW5nID09IG8ubV9pbWFn
ZVJlbmRlcmluZworICAgICAgICAmJiBtX2ltYWdlUmVzb2x1dGlvbkZyb21JbWFnZSA9PSBvLm1f
aW1hZ2VSZXNvbHV0aW9uRnJvbUltYWdlCisgICAgICAgICYmIG1faW1hZ2VSZXNvbHV0aW9uRHBw
eCA9PSBvLm1faW1hZ2VSZXNvbHV0aW9uRHBweAogICAgICAgICAmJiBtX2xpbmVTbmFwID09IG8u
bV9saW5lU25hcAogICAgICAgICAmJiBtX2xpbmVBbGlnbiA9PSBvLm1fbGluZUFsaWduOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVy
aXRlZERhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhl
cml0ZWREYXRhLmgKaW5kZXggNTcwZGJiNTczODc3ZjEyMmViZTQxMTNjNzcyMWU0MmM0ODVjZjA0
Zi4uY2U3ODNiMjY5M2NkMjcwYzhhMjk1YWIyMjgyZjc0N2VjNmM5ODQwZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YS5oCkBAIC05Niw2ICs5Niw3IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoT1ZFUkZMT1dfU0NST0xM
SU5HKQogICAgIHVuc2lnbmVkIHVzZVRvdWNoT3ZlcmZsb3dTY3JvbGxpbmc6IDE7CiAjZW5kaWYK
KyAgICB1bnNpZ25lZCBtX2ltYWdlUmVzb2x1dGlvbkZyb21JbWFnZSA6IDE7CiAKICAgICBBdG9t
aWNTdHJpbmcgaHlwaGVuYXRpb25TdHJpbmc7CiAgICAgc2hvcnQgaHlwaGVuYXRpb25MaW1pdEJl
Zm9yZTsKQEAgLTEwOSw2ICsxMTAsOCBAQCBwdWJsaWM6CiAgICAgCiAgICAgQXRvbWljU3RyaW5n
IG1fbGluZUdyaWQ7CiAKKyAgICBmbG9hdCBtX2ltYWdlUmVzb2x1dGlvbkRwcHg7CisKICNpZiBF
TkFCTEUoVE9VQ0hfRVZFTlRTKQogICAgIENvbG9yIHRhcEhpZ2hsaWdodENvbG9yOwogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3Bw
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAppbmRleCA0OTNh
MzlkYTFlNjFlZDFhM2ExYTA2NjliYjEzMzAxZjRjMTU1MjIyLi5iNTZlNzE1NTc2MWVkMzE0ZmFk
NjU5MmEzNzM4MGI3NWI3ZjM2MzMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFsU2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAKQEAgLTk1LDYgKzk1LDcgQEAgSW50ZXJuYWxTZXR0aW5nczo6SW50ZXJu
YWxTZXR0aW5ncyhGcmFtZSogZnJhbWUpCiAgICAgLCBtX29yaWdpbmFsUGFzc3dvcmRFY2hvRHVy
YXRpb25JblNlY29uZHMoc2V0dGluZ3MoKS0+cGFzc3dvcmRFY2hvRHVyYXRpb25JblNlY29uZHMo
KSkKICAgICAsIG1fb3JpZ2luYWxQYXNzd29yZEVjaG9FbmFibGVkKHNldHRpbmdzKCktPnBhc3N3
b3JkRWNob0VuYWJsZWQoKSkKICAgICAsIG1fb3JpZ2luYWxDU1NFeGNsdXNpb25zRW5hYmxlZChS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpjc3NFeGNsdXNpb25zRW5hYmxlZCgpKQorICAgICwgbV9v
cmlnaW5hbENTU0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
Y3NzSW1hZ2VSZXNvbHV0aW9uRW5hYmxlZCgpKQogI2lmIEVOQUJMRShTSEFET1dfRE9NKQogICAg
ICwgbV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hh
ZG93RE9NRW5hYmxlZCgpKQogI2VuZGlmCkBAIC0xMDYsNiArMTA3LDcgQEAgdm9pZCBJbnRlcm5h
bFNldHRpbmdzOjpyZXN0b3JlVG8oU2V0dGluZ3MqIHNldHRpbmdzKQogICAgIHNldHRpbmdzLT5z
ZXRQYXNzd29yZEVjaG9EdXJhdGlvbkluU2Vjb25kcyhtX29yaWdpbmFsUGFzc3dvcmRFY2hvRHVy
YXRpb25JblNlY29uZHMpOwogICAgIHNldHRpbmdzLT5zZXRQYXNzd29yZEVjaG9FbmFibGVkKG1f
b3JpZ2luYWxQYXNzd29yZEVjaG9FbmFibGVkKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzZXRDU1NFeGNsdXNpb25zRW5hYmxlZChtX29yaWdpbmFsQ1NTRXhjbHVzaW9uc0VuYWJsZWQp
OworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldENTU0ltYWdlUmVzb2x1dGlvbkVuYWJs
ZWQobV9vcmlnaW5hbENTU0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQpOwogI2lmIEVOQUJMRShTSEFE
T1dfRE9NKQogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFNoYWRvd0RPTUVuYWJsZWQo
bV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQpOwogI2VuZGlmCkBAIC0zMjMsNiArMzI1LDEyIEBA
IHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFi
bGVkLCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRD
U1NFeGNsdXNpb25zRW5hYmxlZChlbmFibGVkKTsKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdz
OjpzZXRDU1NJbWFnZVJlc29sdXRpb25FbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29k
ZSYgZWMpCit7CisgICAgVU5VU0VEX1BBUkFNKGVjKTsKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzZXRDU1NJbWFnZVJlc29sdXRpb25FbmFibGVkKGVuYWJsZWQpOworfQorCiB2b2lkIElu
dGVybmFsU2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGJvb2wg
ZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJk
Rm9yU2V0dGluZ3MoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgK
aW5kZXggNjYxOTc2NzU0Y2I3Mzc2N2ZhMjQ0MTkwNjAwOGYyOGE2ODAyZmQ1Ny4uYmQ4MTQwNjIz
ZDg3YjViOTI0MDU5ZTg3NTRjMGY4NDQyYzQ2MDk3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmgKQEAgLTczLDYgKzczLDcgQEAgcHVibGljOgogICAgIHZvaWQg
c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAg
ICAgYm9vbCBzY3JvbGxBbmltYXRvckVuYWJsZWQoRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQg
c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7Cisg
ICAgdm9pZCBzZXRDU1NJbWFnZVJlc29sdXRpb25FbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0
aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUo
Ym9vbCwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgdm9pZCByZXN0b3JlVG8oU2V0dGluZ3MqKTsK
QEAgLTg3LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICBkb3VibGUgbV9vcmlnaW5hbFBhc3N3b3Jk
RWNob0R1cmF0aW9uSW5TZWNvbmRzOwogICAgIGJvb2wgbV9vcmlnaW5hbFBhc3N3b3JkRWNob0Vu
YWJsZWQ7CiAgICAgYm9vbCBtX29yaWdpbmFsQ1NTRXhjbHVzaW9uc0VuYWJsZWQ7CisgICAgYm9v
bCBtX29yaWdpbmFsQ1NTSW1hZ2VSZXNvbHV0aW9uRW5hYmxlZDsKICNpZiBFTkFCTEUoU0hBRE9X
X0RPTSkKICAgICBib29sIG1fb3JpZ2luYWxTaGFkb3dET01FbmFibGVkOwogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAppbmRleCBiYmFiZTNhYjM4
NTNiMGRkMDUwN2U0MjY2ZDIyNmVjZmZkNWVlYTA4Li4zMDllNWU5NWZjZGUyMGNmOWFlMDNmMjc5
YjQwN2I3NWZhMmYwOGJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFsU2V0dGluZ3MuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5pZGwKQEAgLTUyLDYgKzUyLDcgQEAgbW9kdWxlIHdpbmRvdyB7CiAgICAgICAgIHZvaWQg
c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKICAgICAgICAgYm9vbGVhbiBzY3JvbGxBbmltYXRvckVuYWJsZWQoKSByYWlzZXMo
RE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRDU1NFeGNsdXNpb25zRW5hYmxlZChpbiBi
b29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24pOworICAgICAgICB2b2lkIHNldENT
U0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZShpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAgIH07CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJSdW50aW1lRmVhdHVy
ZXMuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlJ1bnRpbWVGZWF0dXJlcy5o
CmluZGV4IDBhOTU0ZTE2NDUzNmIzMDA3YmM1ODdjYWNjZTVlMGZiN2UxY2NlNzMuLmM4YmZhZmFh
YTc2YWEzY2Y0NDIxZjUyMjNmZjc4ZDc5YTA3ODk1ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYlJ1bnRpbWVGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYlJ1bnRpbWVGZWF0dXJlcy5oCkBAIC0xMzksNiArMTM5LDkg
QEAgcHVibGljOgogICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIHZvaWQgZW5hYmxlSW5wdXRUeXBl
RGF0ZShib29sKTsKICAgICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBib29sIGlzSW5wdXRUeXBlRGF0
ZUVuYWJsZWQoKTsKIAorICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIHZvaWQgZW5hYmxlQ1NTSW1h
Z2VSZXNvbHV0aW9uKGJvb2wpOworICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIGJvb2wgaXNDU1NJ
bWFnZVJlc29sdXRpb25FbmFibGVkKCk7CisKIHByaXZhdGU6CiAgICAgV2ViUnVudGltZUZlYXR1
cmVzKCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUnVu
dGltZUZlYXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlJ1bnRpbWVG
ZWF0dXJlcy5jcHAKaW5kZXggZjY0NzhlNGJhMDE0N2ZlMTM5MTE5OGMxZTViOGU2MjU1NWY4YTNi
Mi4uOGM3MzAzNmI0ODgzNzEzZjZkN2I0NTQyMGNiMzBmMGIyZDQ0ZGM4YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUnVudGltZUZlYXR1cmVzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJSdW50aW1lRmVhdHVyZXMuY3BwCkBAIC01Mzgs
NCArNTM4LDE0IEBAIGJvb2wgV2ViUnVudGltZUZlYXR1cmVzOjppc0lucHV0VHlwZURhdGVFbmFi
bGVkKCkKICNlbmRpZgogfQogCit2b2lkIFdlYlJ1bnRpbWVGZWF0dXJlczo6ZW5hYmxlQ1NTSW1h
Z2VSZXNvbHV0aW9uKGJvb2wgZW5hYmxlKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNldENTU0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQoZW5hYmxlKTsKK30KKworYm9vbCBXZWJSdW50
aW1lRmVhdHVyZXM6OmlzQ1NTSW1hZ2VSZXNvbHV0aW9uRW5hYmxlZCgpCit7CisgICAgcmV0dXJu
IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmNzc0ltYWdlUmVzb2x1dGlvbkVuYWJsZWQoKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvYXV0b3Rvb2xzL3N5
bWJvbHMuZmlsdGVyIGIvU291cmNlL2F1dG90b29scy9zeW1ib2xzLmZpbHRlcgppbmRleCA5ODRj
MDQzOWQxZWM4OTJlMTIwYWQ2MWYzYzA4MTllNDMxYWNhNjIwLi5iY2EwOWZjOGNiNmM3MmU2ODIz
NDBlYThhYWNjYmNhMGE1M2E5MjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvYXV0b3Rvb2xzL3N5bWJv
bHMuZmlsdGVyCisrKyBiL1NvdXJjZS9hdXRvdG9vbHMvc3ltYm9scy5maWx0ZXIKQEAgLTEzMiw2
ICsxMzIsNyBAQCBfWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0dXJlczMxaXNNdWx0aXBs
ZVNoYWRvd1N1YnRyZWVzRW5hYmxlZEU7CiBfWk43V2ViQ29yZTIyUnVudGltZUVuYWJsZWRGZWF0
dXJlczMyc2V0TXVsdGlwbGVTaGFkb3dTdWJ0cmVlc0VuYWJsZWRFYjsKIF9aTjdXZWJDb3JlMjJS
dW50aW1lRW5hYmxlZEZlYXR1cmVzMThpc1NoYWRvd0RPTUVuYWJsZWRFOwogX1pON1dlYkNvcmUy
MlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMyMmlzQ1NTRXhjbHVzaW9uc0VuYWJsZWRFOworX1pON1dl
YkNvcmUyMlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMyN2lzQ1NTSW1hZ2VSZXNvbHV0aW9uRW5hYmxl
ZEU7CiBfWk5LN1dlYkNvcmU4RG9jdW1lbnQxM25vZGVzRnJvbVJlY3RFaWlqampqYmI7CiBfWk43
V2ViQ29yZTR0b0pTRVBOM0pTQzlFeGVjU3RhdGVFUE5TXzE3SlNET01HbG9iYWxPYmplY3RFUE5T
XzhOb2RlTGlzdEU7CiBfWk5LN1dlYkNvcmU2RWRpdG9yMjZzZWxlY3Rpb25TdGFydEhhc01hcmtl
ckZvckVOU18xNERvY3VtZW50TWFya2VyMTBNYXJrZXJUeXBlRWlpOwpkaWZmIC0tZ2l0IGEvQ2hh
bmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDlmNGVmZDUwYTY5NTAwYThjZjQ0ODcxMDk0YzQ5MTYz
MmI1ZThkNDkuLjZhNjgxNzYxYTQxMDAxYjY3M2IzYmE4YmRmN2NiNWQ0MjVlMzlkMTggMTAwNjQ0
Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0w
NC0zMCAgRGF2aWQgQmFyciAgPGRhdmlkYmFyckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRXhw
ZXJpbWVudGFsIGNzczMtaW1hZ2VzIGltYWdlLXJlc29sdXRpb24KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1MjY0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvYXV0b3Rvb2xzL3N5bWJvbHMu
ZmlsdGVyOgorCiAyMDEyLTA0LTI2ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdh
bGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gQWRkIGEgd2F5IHRvIHJlZ2lzdGVyIGN1c3RvbSB1
cmkgc2NoZW1lcyBpbiBXZWJLaXQyCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>