<?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>150064</bug_id>
          
          <creation_ts>2015-10-12 17:17:58 -0700</creation_ts>
          <short_desc>Remove Image::spaceSize() and ImageBuffer::spaceSize()</short_desc>
          <delta_ts>2015-10-12 17:55:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>mmaxfield</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1132591</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-10-12 17:17:58 -0700</bug_when>
    <thetext>Remove Image::spaceSize() and ImageBuffer::spaceSize()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132592</commentid>
    <comment_count>1</comment_count>
      <attachid>262944</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-10-12 17:19:10 -0700</bug_when>
    <thetext>Created attachment 262944
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132614</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-10-12 17:55:54 -0700</bug_when>
    <thetext>https://trac.webkit.org/r190910
https://trac.webkit.org/r190911</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262944</attachid>
            <date>2015-10-12 17:19:10 -0700</date>
            <delta_ts>2015-10-12 17:30:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150064-20151012171834.patch</filename>
            <type>text/plain</type>
            <size>38358</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjI4MjY0NjVkNGI0YmM0
YzM1MWY2ZWMxNDE3N2RlYjI4MzBhNzM3OS4uNzY1MGQ4ZGQ1ODUxYjVkZjBlOGYyNGQ5MDAwN2U0
ODBmYzRkOTUxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU0IEBACiAyMDE1LTEwLTEyICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIFJlbW92ZSBJbWFn
ZTo6c3BhY2VTaXplKCkgYW5kIEltYWdlQnVmZmVyOjpzcGFjZVNpemUoKQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwMDY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1hZ2Ugc3BhY2luZyB3aGVuIHRp
bGVkIHNob3VsZCBub3QgYmUgYSBwcm9wZXJ0eSBvZiB0aGUgaW1hZ2U7IGJ1dCBhIGRlc2NyaXB0
aW9uCisgICAgICAgIG9mIGhvdyBpdCdzIGRyYXduLCBsaWtlIHRpbGUgc2l6ZS4gU28gcmVtb3Zl
IHNwYWNpbmcgZnJvbSBJbWFnZSBhbmQgSW1hZ2VCdWZmZXIsCisgICAgICAgIGFuZCBwYXNzIGl0
IGluIGFzIGFuIGFyZ3VtZW50LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFw
SW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwSW1hZ2U6OmRyYXdQYXR0ZXJuKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5oOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL0Nyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNyb3NzZmFkZUdlbmVyYXRlZEltYWdlOjpkcmF3UGF0dGVybik6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvQ3Jvc3NmYWRlR2VuZXJhdGVkSW1hZ2UuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9HZW5lcmF0ZWRJbWFnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL0dyYWRpZW50SW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhZGllbnRJbWFn
ZTo6ZHJhd1BhdHRlcm4pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYWRpZW50SW1h
Z2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3VGlsZWRJbWFnZSk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2U6OmRyYXdU
aWxlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2UuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkltYWdlOjpzcGFjZVNpemUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1h
Z2U6OnNldFNwYWNlU2l6ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
SW1hZ2VCdWZmZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlQnVmZmVyOjpzcGFjZVNpemUp
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OnNldFNwYWNlU2l6ZSk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTmFtZWRJbWFnZUdlbmVyYXRl
ZEltYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZTo6
ZHJhd1BhdHRlcm4pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5l
cmF0ZWRJbWFnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0ltYWdlQnVmZmVy
Q0cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VCdWZmZXI6OmNvcHlJbWFnZSk6CisgICAg
ICAgIChXZWJDb3JlOjpJbWFnZUJ1ZmZlcjo6ZHJhd1BhdHRlcm4pOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2NnL0ltYWdlQ0cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2U6OmRy
YXdQYXR0ZXJuKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVy
RXh0ZW5kZWQpOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTVkdJbWFnZTo6ZHJhd1BhdHRlcm5Gb3JDb250YWluZXIpOgorICAgICAgICAq
IHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5oOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJbWFn
ZUZvckNvbnRhaW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdJbWFnZUZvckNvbnRhaW5l
cjo6ZHJhd1BhdHRlcm4pOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZUZvckNvbnRh
aW5lci5oOgorCisyMDE1LTEwLTEyICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUu
Y29tPgorCiAgICAgICAgIEFkZCBhIENHQ29udGV4dFN0YXRlU2F2ZXIgYW5kIHVzZSBpdAogICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwMDQ5CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmNwcAppbmRl
eCBjZDBiZmVlNDlkMmQ1MGFkYzkwODkxNWIxZWE2Y2Q1NTBlOGY4ZmY5Li44N2MyZWQ2MWVlYzEz
YjRkNjdjOGRmMWY0ZjczZTI5M2Q1YzA3YzU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuY3BwCkBAIC02MDYsMTMgKzYwNiwxMyBAQCB2b2lk
IEJpdG1hcEltYWdlOjpyZXNldEFuaW1hdGlvbigpCiB9CiAKIHZvaWQgQml0bWFwSW1hZ2U6OmRy
YXdQYXR0ZXJuKEdyYXBoaWNzQ29udGV4dCYgY3R4dCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVj
dCwgY29uc3QgQWZmaW5lVHJhbnNmb3JtJiB0cmFuc2Zvcm0sCi0gICAgY29uc3QgRmxvYXRQb2lu
dCYgcGhhc2UsIENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciBv
cCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgQmxlbmRNb2RlIGJsZW5kTW9kZSkKKyAgICBj
b25zdCBGbG9hdFBvaW50JiBwaGFzZSwgY29uc3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNw
YWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3BlcmF0b3Igb3AsIGNvbnN0IEZsb2F0UmVj
dCYgZGVzdFJlY3QsIEJsZW5kTW9kZSBibGVuZE1vZGUpCiB7CiAgICAgaWYgKHRpbGVSZWN0Lmlz
RW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFjdHh0LmRyYXdMdW1pbmFuY2VN
YXNrKCkpIHsKLSAgICAgICAgSW1hZ2U6OmRyYXdQYXR0ZXJuKGN0eHQsIHRpbGVSZWN0LCB0cmFu
c2Zvcm0sIHBoYXNlLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2RlKTsK
KyAgICAgICAgSW1hZ2U6OmRyYXdQYXR0ZXJuKGN0eHQsIHRpbGVSZWN0LCB0cmFuc2Zvcm0sIHBo
YXNlLCBzcGFjaW5nLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2RlKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICBpZiAoIW1fY2FjaGVkSW1hZ2UpIHsKQEAgLTYz
NCwxMiArNjM0LDEwIEBAIHZvaWQgQml0bWFwSW1hZ2U6OmRyYXdQYXR0ZXJuKEdyYXBoaWNzQ29u
dGV4dCYgY3R4dCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVjdCwKICAgICAgICAgbV9jYWNoZWRJ
bWFnZSA9IGJ1ZmZlci0+Y29weUltYWdlKERvbnRDb3B5QmFja2luZ1N0b3JlLCBVbnNjYWxlZCk7
CiAgICAgICAgIGlmICghbV9jYWNoZWRJbWFnZSkKICAgICAgICAgICAgIHJldHVybjsKLQotICAg
ICAgICBtX2NhY2hlZEltYWdlLT5zZXRTcGFjZVNpemUoc3BhY2VTaXplKCkpOwogICAgIH0KIAog
ICAgIGN0eHQuc2V0RHJhd0x1bWluYW5jZU1hc2soZmFsc2UpOwotICAgIG1fY2FjaGVkSW1hZ2Ut
PmRyYXdQYXR0ZXJuKGN0eHQsIHRpbGVSZWN0LCB0cmFuc2Zvcm0sIHBoYXNlLCBzdHlsZUNvbG9y
U3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2RlKTsKKyAgICBtX2NhY2hlZEltYWdlLT5kcmF3
UGF0dGVybihjdHh0LCB0aWxlUmVjdCwgdHJhbnNmb3JtLCBwaGFzZSwgc3BhY2luZywgc3R5bGVD
b2xvclNwYWNlLCBvcCwgZGVzdFJlY3QsIGJsZW5kTW9kZSk7CiB9CiAKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdlLmgKaW5kZXggMDUwOGQ1NWNlOGM3
NDBmZWU4YTgwNjJlZmYzMjU2NDMyNGNjYTc2Zi4uMzUzNmJhNWI5YThhNjk2NzAxZDRiOTU4MTU5
NGM5ZTJiY2RlNzVkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvQml0bWFwSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9C
aXRtYXBJbWFnZS5oCkBAIC0xNDMsNyArMTQzLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCByZXNldEFuaW1hdGlvbigpIG92ZXJyaWRlOwogCiAgICAgdmlydHVhbCB2b2lkIGRyYXdQYXR0
ZXJuKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgQWZm
aW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLAotICAgICAgICBjb25zdCBGbG9hdFBvaW50
JiBwaGFzZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBj
b25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBCbGVuZE1vZGUgPSBCbGVuZE1vZGVOb3JtYWwpIG92
ZXJyaWRlOworICAgICAgICBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwgY29uc3QgRmxvYXRTaXpl
JiBzcGFjaW5nLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3BlcmF0b3Is
IGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIEJsZW5kTW9kZSA9IEJsZW5kTW9kZU5vcm1hbCkg
b3ZlcnJpZGU7CiAKICAgICAvLyBBY2Nlc3NvcnMgZm9yIG5hdGl2ZSBpbWFnZSBmb3JtYXRzLgog
CkBAIC0yMDcsNyArMjA3LDcgQEAgcHJvdGVjdGVkOgogCiAjaWYgVVNFKFdJTkdESSkKICAgICB2
aXJ0dWFsIHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRSZWN0
JiBzcmNSZWN0LCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zvcm0sCi0gICAg
ICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwg
Q29tcG9zaXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpOworICAgICAgICBj
b25zdCBGbG9hdFBvaW50JiBwaGFzZSwgY29uc3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNw
YWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYg
ZGVzdFJlY3QpOwogI2VuZGlmCiAKICAgICBzaXplX3QgY3VycmVudEZyYW1lKCkgY29uc3QgeyBy
ZXR1cm4gbV9jdXJyZW50RnJhbWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0Nyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0Nyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmNwcAppbmRleCA3NWIy
MGQzNmExZWExMWJjZWYzMDIyODI0ZGE0N2U3ZmM5MTQ5NjU4Li40YWYyZTQ3MTE1NTI3MGQ1MGM4
YWU4N2QxYmY5NDI4M2UxYmY2ZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9Dcm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvQ3Jvc3NmYWRlR2VuZXJhdGVkSW1hZ2UuY3BwCkBAIC05NSw3
ICs5NSw3IEBAIHZvaWQgQ3Jvc3NmYWRlR2VuZXJhdGVkSW1hZ2U6OmRyYXcoR3JhcGhpY3NDb250
ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIGRzCiAgICAgZHJhd0Nyb3NzZmFkZShjb250
ZXh0KTsKIH0KIAotdm9pZCBDcm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZTo6ZHJhd1BhdHRlcm4oR3Jh
cGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFm
ZmluZVRyYW5zZm9ybSYgcGF0dGVyblRyYW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2Us
IENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVP
cCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBCbGVuZE1vZGUgYmxlbmRNb2RlKQordm9pZCBD
cm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZTo6ZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiBjb250
ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgcGF0
dGVyblRyYW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIGNvbnN0IEZsb2F0U2l6ZSYg
c3BhY2luZywgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yIGNv
bXBvc2l0ZU9wLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIEJsZW5kTW9kZSBibGVuZE1vZGUp
CiB7CiAgICAgc3RkOjp1bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBpbWFnZUJ1ZmZlciA9IEltYWdl
QnVmZmVyOjpjcmVhdGUoc2l6ZSgpLCBjb250ZXh0LnJlbmRlcmluZ01vZGUoKSk7CiAgICAgaWYg
KCFpbWFnZUJ1ZmZlcikKQEAgLTEwNiw3ICsxMDYsNyBAQCB2b2lkIENyb3NzZmFkZUdlbmVyYXRl
ZEltYWdlOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0
UgogICAgIGRyYXdDcm9zc2ZhZGUoZ3JhcGhpY3NDb250ZXh0KTsKIAogICAgIC8vIFRpbGUgdGhl
IGltYWdlIGJ1ZmZlciBpbnRvIHRoZSBjb250ZXh0LgotICAgIGltYWdlQnVmZmVyLT5kcmF3UGF0
dGVybihjb250ZXh0LCBzcmNSZWN0LCBwYXR0ZXJuVHJhbnNmb3JtLCBwaGFzZSwgc3R5bGVDb2xv
clNwYWNlLCBjb21wb3NpdGVPcCwgZHN0UmVjdCwgYmxlbmRNb2RlKTsKKyAgICBpbWFnZUJ1ZmZl
ci0+ZHJhd1BhdHRlcm4oY29udGV4dCwgc3JjUmVjdCwgcGF0dGVyblRyYW5zZm9ybSwgcGhhc2Us
IHNwYWNpbmcsIHN0eWxlQ29sb3JTcGFjZSwgY29tcG9zaXRlT3AsIGRzdFJlY3QsIGJsZW5kTW9k
ZSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0Nyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Dcm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZS5oCmluZGV4IGQzYmUxNDY1NTljM2JkNGIzMjlk
NjI4ZGFlMzdiNmE1ZjcxZjdjN2QuLjM1OWQyOWFiNTEwMzRkMGE5M2M0ZTdlNDQ0NmI1YTkxOTk4
ZGI5MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Nyb3Nz
ZmFkZUdlbmVyYXRlZEltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvQ3Jvc3NmYWRlR2VuZXJhdGVkSW1hZ2UuaApAQCAtNTAsNyArNTAsNyBAQCBwdWJsaWM6CiAK
IHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgZHJhdyhHcmFwaGljc0NvbnRleHQmLCBjb25z
dCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgQ29sb3JTcGFj
ZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUsIEltYWdlT3Jp
ZW50YXRpb25EZXNjcmlwdGlvbikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGRyYXdQYXR0
ZXJuKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgQWZm
aW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwg
Q29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBjb25zdCBGbG9h
dFJlY3QmIGRzdFJlY3QsIEJsZW5kTW9kZSkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGRy
YXdQYXR0ZXJuKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29u
c3QgQWZmaW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9hdFBvaW50JiBw
aGFzZSwgY29uc3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFj
ZSwgQ29tcG9zaXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgQmxlbmRNb2Rl
KSBvdmVycmlkZTsKIAogICAgIENyb3NzZmFkZUdlbmVyYXRlZEltYWdlKEltYWdlKiBmcm9tSW1h
Z2UsIEltYWdlKiB0b0ltYWdlLCBmbG9hdCBwZXJjZW50YWdlLCBjb25zdCBGbG9hdFNpemUmIGNy
b3NzZmFkZVNpemUsIGNvbnN0IEZsb2F0U2l6ZSYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HZW5lcmF0ZWRJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR2VuZXJhdGVkSW1hZ2UuaAppbmRleCA3Yzk4YWFmZjBjYWFjYzBk
ODg3N2U2ZGU4OWVjNDNhMGU1YjhlMmZhLi43ZDg1ZGJkZTkzY2Y3ZDY1MTYyNGMyOTI5NDU1ZDhk
NjYyYjk4OWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
ZW5lcmF0ZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dl
bmVyYXRlZEltYWdlLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAg
IHZpcnR1YWwgdm9pZCBkcmF3KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgZHN0
UmVjdCwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFj
ZSwgQ29tcG9zaXRlT3BlcmF0b3IsIEJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbkRlc2NyaXB0
aW9uKSBvdmVycmlkZSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRyYXdQYXR0ZXJuKEdyYXBoaWNz
Q29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgQWZmaW5lVHJhbnNmb3Jt
JiBwYXR0ZXJuVHJhbnNmb3JtLAotICAgICAgICBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwgQ29s
b3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBjb25zdCBGbG9hdFJl
Y3QmIGRlc3RSZWN0LCBCbGVuZE1vZGUpIG92ZXJyaWRlID0gMDsKKyAgICAgICAgY29uc3QgRmxv
YXRQb2ludCYgcGhhc2UsIGNvbnN0IEZsb2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSBzdHls
ZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0
LCBCbGVuZE1vZGUpIG92ZXJyaWRlID0gMDsKIAogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhp
cyB0byBiZSBsZXNzIGNvbnNlcnZhdGl2ZS4KICAgICB2aXJ0dWFsIGJvb2wgY3VycmVudEZyYW1l
S25vd25Ub0JlT3BhcXVlKCkgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYWRpZW50SW1hZ2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhZGllbnRJbWFnZS5jcHAKaW5kZXggZTZm
NmZiNTJjY2ZjNGQ4MGI2YjBiYmE5YzU5YTU4YTRmYjIxOGViMS4uZjQwNTMwZDA1YjA2YzViOTNl
ZGM1YWRjODEzZTU3MjZkYTUxMjgwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhZGllbnRJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvR3JhZGllbnRJbWFnZS5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgdm9pZCBHcmFk
aWVudEltYWdlOjpkcmF3KEdyYXBoaWNzQ29udGV4dCYgZGVzdENvbnRleHQsIGNvbnN0IEZsb2F0
UmVjdCYgZGVzdFJlY3QKIH0KIAogdm9pZCBHcmFkaWVudEltYWdlOjpkcmF3UGF0dGVybihHcmFw
aGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0
IEFmZmluZVRyYW5zZm9ybSYgcGF0dGVyblRyYW5zZm9ybSwKLSAgICBjb25zdCBGbG9hdFBvaW50
JiBwaGFzZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yIGNv
bXBvc2l0ZU9wLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBCbGVuZE1vZGUgYmxlbmRNb2Rl
KQorICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBjb25zdCBGbG9hdFNpemUmIHNwYWNpbmcs
IENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVP
cCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgQmxlbmRNb2RlIGJsZW5kTW9kZSkKIHsKICAg
ICAvLyBBbGxvdyB0aGUgZ2VuZXJhdG9yIHRvIHByb3ZpZGUgdmlzdWFsbHktZXF1aXZhbGVudCB0
aWxpbmcgcGFyYW1ldGVycyBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlLgogICAgIEZsb2F0U2l6ZSBh
ZGp1c3RlZFNpemUgPSBzaXplKCk7CkBAIC04OCwxMSArODgsMTAgQEAgdm9pZCBHcmFkaWVudElt
YWdlOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBjb25zdCBGbG9h
dFJlY3QmIHMKICAgICAgICAgICAgIG1fY2FjaGVkSW1hZ2VCdWZmZXItPmNvbnZlcnRUb0x1bWlu
YW5jZU1hc2soKTsKICAgICB9CiAKLSAgICBtX2NhY2hlZEltYWdlQnVmZmVyLT5zZXRTcGFjZVNp
emUoc3BhY2VTaXplKCkpOwogICAgIGRlc3RDb250ZXh0LnNldERyYXdMdW1pbmFuY2VNYXNrKGZh
bHNlKTsKIAogICAgIC8vIFRpbGUgdGhlIGltYWdlIGJ1ZmZlciBpbnRvIHRoZSBjb250ZXh0Lgot
ICAgIG1fY2FjaGVkSW1hZ2VCdWZmZXItPmRyYXdQYXR0ZXJuKGRlc3RDb250ZXh0LCBhZGp1c3Rl
ZFNyY1JlY3QsIGFkanVzdGVkUGF0dGVybkNUTSwgcGhhc2UsIHN0eWxlQ29sb3JTcGFjZSwgY29t
cG9zaXRlT3AsIGRlc3RSZWN0LCBibGVuZE1vZGUpOworICAgIG1fY2FjaGVkSW1hZ2VCdWZmZXIt
PmRyYXdQYXR0ZXJuKGRlc3RDb250ZXh0LCBhZGp1c3RlZFNyY1JlY3QsIGFkanVzdGVkUGF0dGVy
bkNUTSwgcGhhc2UsIHNwYWNpbmcsIHN0eWxlQ29sb3JTcGFjZSwgY29tcG9zaXRlT3AsIGRlc3RS
ZWN0LCBibGVuZE1vZGUpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFkaWVudEltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HcmFkaWVudEltYWdlLmgKaW5kZXggNmVjNTc2ZWQyN2Q5ZDM1OGE3Njk0NTNiMDEw
YzI2YzMwNDNjNGJhNS4uZmVkMTM3MzlhY2NkYjg1MDI1NWIwMDRkNDUwNmY2NTc4MjMxMjMzYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhZGllbnRJbWFn
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYWRpZW50SW1hZ2Uu
aApAQCAtNDgsNyArNDgsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lk
IGRyYXcoR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBG
bG9hdFJlY3QmIHNyY1JlY3QsIENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVP
cGVyYXRvciwgQmxlbmRNb2RlLCBJbWFnZU9yaWVudGF0aW9uRGVzY3JpcHRpb24pIG92ZXJyaWRl
OwogICAgIHZpcnR1YWwgdm9pZCBkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmLCBjb25zdCBG
bG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgcGF0dGVyblRyYW5zZm9y
bSwKLSAgICAgICAgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIENvbG9yU3BhY2Ugc3R5bGVDb2xv
clNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgQmxl
bmRNb2RlKSBvdmVycmlkZTsKKyAgICAgICAgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIGNvbnN0
IEZsb2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0
ZU9wZXJhdG9yLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBCbGVuZE1vZGUpIG92ZXJyaWRl
OwogCiAgICAgR3JhZGllbnRJbWFnZShQYXNzUmVmUHRyPEdyYWRpZW50PiwgY29uc3QgRmxvYXRT
aXplJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dy
YXBoaWNzQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQuY3BwCmluZGV4IDMwMzQwZGJkMzNhYjVjMDdiOWY0MTY1YTA4MjFhNWM0ZjNl
MjE0OWQuLjQyNmM3YTc2YmZiMzg2NmEzOWI1NjFmYmFkYzc2Mzk5ODk2YzYyOTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNw
cApAQCAtMzk5LDE0ICszOTksMTMgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdJbWFnZShJ
bWFnZSogaW1hZ2UsIENvbG9yU3BhY2UgY29sb3JTcGFjZSwgY29uc3QgRmxvYXQKICAgICBpbWFn
ZS0+ZHJhdygqdGhpcywgZGVzdGluYXRpb24sIHNvdXJjZSwgY29sb3JTcGFjZSwgaW1hZ2VQYWlu
dGluZ09wdGlvbnMubV9jb21wb3NpdGVPcGVyYXRvciwgaW1hZ2VQYWludGluZ09wdGlvbnMubV9i
bGVuZE1vZGUsIGltYWdlUGFpbnRpbmdPcHRpb25zLm1fb3JpZW50YXRpb25EZXNjcmlwdGlvbik7
CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3VGlsZWRJbWFnZShJbWFnZSogaW1hZ2Us
IENvbG9yU3BhY2UgY29sb3JTcGFjZSwgY29uc3QgRmxvYXRSZWN0JiBkZXN0aW5hdGlvbiwgY29u
c3QgRmxvYXRQb2ludCYgc291cmNlLCBjb25zdCBGbG9hdFNpemUmIHRpbGVTaXplLAotICAgIGNv
bnN0IEltYWdlUGFpbnRpbmdPcHRpb25zJiBpbWFnZVBhaW50aW5nT3B0aW9ucykKK3ZvaWQgR3Jh
cGhpY3NDb250ZXh0OjpkcmF3VGlsZWRJbWFnZShJbWFnZSogaW1hZ2UsIENvbG9yU3BhY2UgY29s
b3JTcGFjZSwgY29uc3QgRmxvYXRSZWN0JiBkZXN0aW5hdGlvbiwgY29uc3QgRmxvYXRQb2ludCYg
c291cmNlLCBjb25zdCBGbG9hdFNpemUmIHRpbGVTaXplLCBjb25zdCBGbG9hdFNpemUmIHNwYWNp
bmcsIGNvbnN0IEltYWdlUGFpbnRpbmdPcHRpb25zJiBpbWFnZVBhaW50aW5nT3B0aW9ucykKIHsK
ICAgICBpZiAocGFpbnRpbmdEaXNhYmxlZCgpIHx8ICFpbWFnZSkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgSW50ZXJwb2xhdGlvblF1YWxpdHlNYWludGFpbmVyIGludGVycG9sYXRpb25RdWFsaXR5
Rm9yVGhpc1Njb3BlKCp0aGlzLCBpbWFnZVBhaW50aW5nT3B0aW9ucy5tX3VzZUxvd1F1YWxpdHlT
Y2FsZSA/IEludGVycG9sYXRpb25Mb3cgOiBpbWFnZUludGVycG9sYXRpb25RdWFsaXR5KCkpOwot
ICAgIGltYWdlLT5kcmF3VGlsZWQoKnRoaXMsIGRlc3RpbmF0aW9uLCBzb3VyY2UsIHRpbGVTaXpl
LCBjb2xvclNwYWNlLCBpbWFnZVBhaW50aW5nT3B0aW9ucy5tX2NvbXBvc2l0ZU9wZXJhdG9yLCBp
bWFnZVBhaW50aW5nT3B0aW9ucy5tX2JsZW5kTW9kZSk7CisgICAgaW1hZ2UtPmRyYXdUaWxlZCgq
dGhpcywgZGVzdGluYXRpb24sIHNvdXJjZSwgdGlsZVNpemUsIHNwYWNpbmcsIGNvbG9yU3BhY2Us
IGltYWdlUGFpbnRpbmdPcHRpb25zLm1fY29tcG9zaXRlT3BlcmF0b3IsIGltYWdlUGFpbnRpbmdP
cHRpb25zLm1fYmxlbmRNb2RlKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdUaWxl
ZEltYWdlKEltYWdlKiBpbWFnZSwgQ29sb3JTcGFjZSBjb2xvclNwYWNlLCBjb25zdCBGbG9hdFJl
Y3QmIGRlc3RpbmF0aW9uLCBjb25zdCBGbG9hdFJlY3QmIHNvdXJjZSwgY29uc3QgRmxvYXRTaXpl
JiB0aWxlU2NhbGVGYWN0b3IsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HcmFwaGljc0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0dyYXBoaWNzQ29udGV4dC5oCmluZGV4IGVhOWI3YjI2NGYxMDA3YmQ4ZTAzNDhmMWI4YmQz
YTY0ZjA1YWVlNTkuLjBlZjBjN2YxYmRjNmQ2MjhiMmIzNGNlOTc4N2ZhNjMyZDU5NTlhOWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4
dC5oCkBAIC0zMTIsOCArMzEyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIGRyYXdJbWFnZShJbWFnZSosIENvbG9yU3BhY2UsIGNvbnN0IEZsb2F0
UmVjdCYgZGVzdGluYXRpb24sIGNvbnN0IEltYWdlUGFpbnRpbmdPcHRpb25zJiA9IEltYWdlUGFp
bnRpbmdPcHRpb25zKCkpOwogICAgICAgICB2b2lkIGRyYXdJbWFnZShJbWFnZSosIENvbG9yU3Bh
Y2UsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdGluYXRpb24sIGNvbnN0IEZsb2F0UmVjdCYgc291cmNl
LCBjb25zdCBJbWFnZVBhaW50aW5nT3B0aW9ucyYgPSBJbWFnZVBhaW50aW5nT3B0aW9ucygpKTsK
IAotICAgICAgICB2b2lkIGRyYXdUaWxlZEltYWdlKEltYWdlKiwgQ29sb3JTcGFjZSwgY29uc3Qg
RmxvYXRSZWN0JiBkZXN0aW5hdGlvbiwgY29uc3QgRmxvYXRQb2ludCYgc291cmNlLCBjb25zdCBG
bG9hdFNpemUmIHRpbGVTaXplLAotICAgICAgICAgICAgY29uc3QgSW1hZ2VQYWludGluZ09wdGlv
bnMmID0gSW1hZ2VQYWludGluZ09wdGlvbnMoKSk7CisgICAgICAgIHZvaWQgZHJhd1RpbGVkSW1h
Z2UoSW1hZ2UqLCBDb2xvclNwYWNlLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RpbmF0aW9uLCBjb25z
dCBGbG9hdFBvaW50JiBzb3VyY2UsIGNvbnN0IEZsb2F0U2l6ZSYgdGlsZVNpemUsIGNvbnN0IEZs
b2F0U2l6ZSYgc3BhY2luZywgY29uc3QgSW1hZ2VQYWludGluZ09wdGlvbnMmID0gSW1hZ2VQYWlu
dGluZ09wdGlvbnMoKSk7CiAgICAgICAgIHZvaWQgZHJhd1RpbGVkSW1hZ2UoSW1hZ2UqLCBDb2xv
clNwYWNlLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RpbmF0aW9uLCBjb25zdCBGbG9hdFJlY3QmIHNv
dXJjZSwgY29uc3QgRmxvYXRTaXplJiB0aWxlU2NhbGVGYWN0b3IsCiAgICAgICAgICAgICBJbWFn
ZTo6VGlsZVJ1bGUsIEltYWdlOjpUaWxlUnVsZSwgY29uc3QgSW1hZ2VQYWludGluZ09wdGlvbnMm
ID0gSW1hZ2VQYWludGluZ09wdGlvbnMoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ltYWdlLmNwcAppbmRleCBlNzQzYjk4NmJkOTMwY2RjZWYyOWI1NWZjZTMzNTY0MDRj
MDE0OTQ5Li45YjVjMTJlNjc2ZDk2MDgxMzk5MzgyNTlmMjczNmY3Nzg4ZmFlYmE4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2UuY3BwCkBAIC05NCw3ICs5NCw3IEBA
IHZvaWQgSW1hZ2U6OmRyYXcoR3JhcGhpY3NDb250ZXh0JiBjdHgsIGNvbnN0IEZsb2F0UmVjdCYg
ZHN0UmVjdCwgY29uc3QgRmxvYXRSZWN0CiAgICAgZHJhdyhjdHgsIGRzdFJlY3QsIHNyY1JlY3Qs
IHN0eWxlQ29sb3JTcGFjZSwgb3AsIGJsZW5kTW9kZSwgZGVzY3JpcHRpb24pOwogfQogCi12b2lk
IEltYWdlOjpkcmF3VGlsZWQoR3JhcGhpY3NDb250ZXh0JiBjdHh0LCBjb25zdCBGbG9hdFJlY3Qm
IGRlc3RSZWN0LCBjb25zdCBGbG9hdFBvaW50JiBzcmNQb2ludCwgY29uc3QgRmxvYXRTaXplJiBz
Y2FsZWRUaWxlU2l6ZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJh
dG9yIG9wLCBCbGVuZE1vZGUgYmxlbmRNb2RlKQordm9pZCBJbWFnZTo6ZHJhd1RpbGVkKEdyYXBo
aWNzQ29udGV4dCYgY3R4dCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgY29uc3QgRmxvYXRQ
b2ludCYgc3JjUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NhbGVkVGlsZVNpemUsIGNvbnN0IEZs
b2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9w
ZXJhdG9yIG9wLCBCbGVuZE1vZGUgYmxlbmRNb2RlKQogeyAgICAKICAgICBpZiAobWF5RmlsbFdp
dGhTb2xpZENvbG9yKCkpIHsKICAgICAgICAgZmlsbFdpdGhTb2xpZENvbG9yKGN0eHQsIGRlc3RS
ZWN0LCBzb2xpZENvbG9yKCksIHN0eWxlQ29sb3JTcGFjZSwgb3ApOwpAQCAtMTE3LDcgKzExNyw3
IEBAIHZvaWQgSW1hZ2U6OmRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQmIGN0eHQsIGNvbnN0IEZs
b2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsCiAgICAgICAgICAgICAgICAgICAgIHNjYWxlZFRp
bGVTaXplLmhlaWdodCgpIC8gaW50cmluc2ljVGlsZVNpemUuaGVpZ2h0KCkpOwogCiAgICAgRmxv
YXRSZWN0IG9uZVRpbGVSZWN0OwotICAgIEZsb2F0U2l6ZSBhY3R1YWxUaWxlU2l6ZShzY2FsZWRU
aWxlU2l6ZS53aWR0aCgpICsgc3BhY2VTaXplKCkud2lkdGgoKSwgc2NhbGVkVGlsZVNpemUuaGVp
Z2h0KCkgKyBzcGFjZVNpemUoKS5oZWlnaHQoKSk7CisgICAgRmxvYXRTaXplIGFjdHVhbFRpbGVT
aXplKHNjYWxlZFRpbGVTaXplLndpZHRoKCkgKyBzcGFjaW5nLndpZHRoKCksIHNjYWxlZFRpbGVT
aXplLmhlaWdodCgpICsgc3BhY2luZy5oZWlnaHQoKSk7CiAgICAgb25lVGlsZVJlY3Quc2V0WChk
ZXN0UmVjdC54KCkgKyBmbW9kZihmbW9kZigtc3JjUG9pbnQueCgpLCBhY3R1YWxUaWxlU2l6ZS53
aWR0aCgpKSAtIGFjdHVhbFRpbGVTaXplLndpZHRoKCksIGFjdHVhbFRpbGVTaXplLndpZHRoKCkp
KTsKICAgICBvbmVUaWxlUmVjdC5zZXRZKGRlc3RSZWN0LnkoKSArIGZtb2RmKGZtb2RmKC1zcmNQ
b2ludC55KCksIGFjdHVhbFRpbGVTaXplLmhlaWdodCgpKSAtIGFjdHVhbFRpbGVTaXplLmhlaWdo
dCgpLCBhY3R1YWxUaWxlU2l6ZS5oZWlnaHQoKSkpOwogICAgIG9uZVRpbGVSZWN0LnNldFNpemUo
c2NhbGVkVGlsZVNpemUpOwpAQCAtMTk1LDcgKzE5NSw3IEBAIHZvaWQgSW1hZ2U6OmRyYXdUaWxl
ZChHcmFwaGljc0NvbnRleHQmIGN0eHQsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0
IEZsCiAKICAgICBBZmZpbmVUcmFuc2Zvcm0gcGF0dGVyblRyYW5zZm9ybSA9IEFmZmluZVRyYW5z
Zm9ybSgpLnNjYWxlTm9uVW5pZm9ybShzY2FsZS53aWR0aCgpLCBzY2FsZS5oZWlnaHQoKSk7CiAg
ICAgRmxvYXRSZWN0IHRpbGVSZWN0KEZsb2F0UG9pbnQoKSwgaW50cmluc2ljVGlsZVNpemUpOwot
ICAgIGRyYXdQYXR0ZXJuKGN0eHQsIHRpbGVSZWN0LCBwYXR0ZXJuVHJhbnNmb3JtLCBvbmVUaWxl
UmVjdC5sb2NhdGlvbigpLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2Rl
KTsKKyAgICBkcmF3UGF0dGVybihjdHh0LCB0aWxlUmVjdCwgcGF0dGVyblRyYW5zZm9ybSwgb25l
VGlsZVJlY3QubG9jYXRpb24oKSwgc3BhY2luZywgc3R5bGVDb2xvclNwYWNlLCBvcCwgZGVzdFJl
Y3QsIGJsZW5kTW9kZSk7CiAKICNpZiBQTEFURk9STShJT1MpCiAgICAgc3RhcnRBbmltYXRpb24o
RG9Ob3RDYXRjaFVwKTsKQEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lkIEltYWdlOjpkcmF3VGlsZWQo
R3JhcGhpY3NDb250ZXh0JiBjdHh0LCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZs
bwogICAgICAgICB2UGhhc2UgLT0gKGRzdFJlY3QuaGVpZ2h0KCkgLSBzY2FsZWRUaWxlSGVpZ2h0
KSAvIDI7IAogICAgIEZsb2F0UG9pbnQgcGF0dGVyblBoYXNlKGRzdFJlY3QueCgpIC0gaFBoYXNl
LCBkc3RSZWN0LnkoKSAtIHZQaGFzZSk7CiAgICAgCi0gICAgZHJhd1BhdHRlcm4oY3R4dCwgc3Jj
UmVjdCwgcGF0dGVyblRyYW5zZm9ybSwgcGF0dGVyblBoYXNlLCBzdHlsZUNvbG9yU3BhY2UsIG9w
LCBkc3RSZWN0KTsKKyAgICBkcmF3UGF0dGVybihjdHh0LCBzcmNSZWN0LCBwYXR0ZXJuVHJhbnNm
b3JtLCBwYXR0ZXJuUGhhc2UsIEZsb2F0U2l6ZSgpLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkc3RS
ZWN0KTsKIAogI2lmIFBMQVRGT1JNKElPUykKICAgICBzdGFydEFuaW1hdGlvbihEb05vdENhdGNo
VXApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlLmgKaW5kZXggZjY5YTA1
OWZhODk1YWM2MjZhYzdiOGJhYjNlNmJhNjRjNWE4NzA2Yy4uMWRiNzc1YzNhNzJiOWMxZWNmMTAx
ODE4M2E0OGNiZGZiOWQ5MWE0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9J
bWFnZS5oCkBAIC0xNjcsNyArMTY3LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICB2aXJ0dWFs
IHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRSZWN0JiBzcmNS
ZWN0LCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zvcm0sCi0gICAgICAgIGNv
bnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9z
aXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIEJsZW5kTW9kZSA9IEJsZW5k
TW9kZU5vcm1hbCk7CisgICAgICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBjb25zdCBGbG9h
dFNpemUmIHNwYWNpbmcsIENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVy
YXRvciwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgQmxlbmRNb2RlID0gQmxlbmRNb2RlTm9y
bWFsKTsKIAogI2lmIEVOQUJMRShJTUFHRV9ERUNPREVSX0RPV05fU0FNUExJTkcpCiAgICAgRmxv
YXRSZWN0IGFkanVzdFNvdXJjZVJlY3RGb3JEb3duU2FtcGxpbmcoY29uc3QgRmxvYXRSZWN0JiBz
cmNSZWN0LCBjb25zdCBJbnRTaXplJiBzY2FsZWRTaXplKSBjb25zdDsKQEAgLTE3NywxMSArMTc3
LDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBub3RTb2xpZENvbG9yKCkgeyByZXR1cm4g
dHJ1ZTsgfQogI2VuZGlmCiAKLSAgICBGbG9hdFNpemUgc3BhY2VTaXplKCkgY29uc3QgeyByZXR1
cm4gbV9zcGFjZTsgfQotICAgIHZvaWQgc2V0U3BhY2VTaXplKGNvbnN0IEZsb2F0U2l6ZSYgc3Bh
Y2UpCi0gICAgewotICAgICAgICBtX3NwYWNlID0gc3BhY2U7Ci0gICAgfQogcHJvdGVjdGVkOgog
ICAgIEltYWdlKEltYWdlT2JzZXJ2ZXIqID0gbnVsbHB0cik7CiAKQEAgLTE5Miw3ICsxODcsNyBA
QCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIGRyYXdGcmFtZU1hdGNoaW5nU291cmNlU2l6
ZShHcmFwaGljc0NvbnRleHQmLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEludFNp
emUmIHNyY1NpemUsIENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRv
cikgeyB9CiAjZW5kaWYKICAgICB2aXJ0dWFsIHZvaWQgZHJhdyhHcmFwaGljc0NvbnRleHQmLCBj
b25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgQ29sb3JT
cGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUsIEltYWdl
T3JpZW50YXRpb25EZXNjcmlwdGlvbik7Ci0gICAgdm9pZCBkcmF3VGlsZWQoR3JhcGhpY3NDb250
ZXh0JiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBGbG9hdFBvaW50JiBzcmNQb2lu
dCwgY29uc3QgRmxvYXRTaXplJiB0aWxlU2l6ZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2Us
CisgICAgdm9pZCBkcmF3VGlsZWQoR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRSZWN0JiBk
c3RSZWN0LCBjb25zdCBGbG9hdFBvaW50JiBzcmNQb2ludCwgY29uc3QgRmxvYXRTaXplJiB0aWxl
U2l6ZSwgY29uc3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFj
ZSwKICAgICAgICAgQ29tcG9zaXRlT3BlcmF0b3IgLCBCbGVuZE1vZGUpOwogICAgIHZvaWQgZHJh
d1RpbGVkKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgY29uc3Qg
RmxvYXRSZWN0JiBzcmNSZWN0LCBjb25zdCBGbG9hdFNpemUmIHRpbGVTY2FsZUZhY3RvciwgVGls
ZVJ1bGUgaFJ1bGUsIFRpbGVSdWxlIHZSdWxlLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwg
Q29tcG9zaXRlT3BlcmF0b3IpOwogCkBAIC0yMDMsNyArMTk4LDYgQEAgcHJvdGVjdGVkOgogcHJp
dmF0ZToKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX2VuY29kZWRJbWFnZURhdGE7CiAgICAg
SW1hZ2VPYnNlcnZlciogbV9pbWFnZU9ic2VydmVyOwotICAgIEZsb2F0U2l6ZSBtX3NwYWNlOwog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ltYWdlQnVmZmVyLmgKaW5kZXggNDg0MGNkNWZiOGY4ZTQzMmMxMWQ3NmNiYzcx
NjJhZDhmNWJkMWZlZC4uMzY2MDNiNzlmOGQwYTdlOTI3MDdjMjVjNDZkMjRmZDNkOWU1MDUzMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VCdWZmZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZUJ1ZmZlci5oCkBA
IC0xMTgsOSArMTE4LDYgQEAgcHVibGljOgogICAgIC8vIHdpdGggdGV4dHVyZXMgdGhhdCBhcmUg
UkdCIG9yIFJHQkEgZm9ybWF0LCBhbmQgVU5TSUdORURfQllURSB0eXBlLgogICAgIGJvb2wgY29w
eVRvUGxhdGZvcm1UZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEJiwgR0MzRGVudW0sIFBsYXRmb3Jt
M0RPYmplY3QsIEdDM0RlbnVtLCBib29sLCBib29sKTsKIAotICAgIEZsb2F0U2l6ZSBzcGFjZVNp
emUoKSBjb25zdCB7IHJldHVybiBtX3NwYWNlOyB9Ci0gICAgdm9pZCBzZXRTcGFjZVNpemUoY29u
c3QgRmxvYXRTaXplJiBzcGFjZSkgeyBtX3NwYWNlID0gc3BhY2U7IH0KLQogICAgIC8vIFRoZXNl
IGZ1bmN0aW9ucyBhcmUgdXNlZCB3aGVuIGNsYW1waW5nIHRoZSBJbWFnZUJ1ZmZlciB3aGljaCBp
cyBjcmVhdGVkIGZvciBmaWx0ZXIsIG1hc2tlciBvciBjbGlwcGVyLgogICAgIHN0YXRpYyBib29s
IHNpemVOZWVkc0NsYW1waW5nKGNvbnN0IEZsb2F0U2l6ZSYpOwogICAgIHN0YXRpYyBib29sIHNp
emVOZWVkc0NsYW1waW5nKGNvbnN0IEZsb2F0U2l6ZSYsIEZsb2F0U2l6ZSYgc2NhbGUpOwpAQCAt
MTM4LDcgKzEzNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjbGlwKEdyYXBoaWNzQ29udGV4dCYs
IGNvbnN0IEZsb2F0UmVjdCYpIGNvbnN0OwogCiAgICAgdm9pZCBkcmF3KEdyYXBoaWNzQ29udGV4
dCYsIENvbG9yU3BhY2UsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsb2F0UmVj
dCYgc3JjUmVjdCA9IEZsb2F0UmVjdCgwLCAwLCAtMSwgLTEpLCBDb21wb3NpdGVPcGVyYXRvciA9
IENvbXBvc2l0ZVNvdXJjZU92ZXIsIEJsZW5kTW9kZSA9IEJsZW5kTW9kZU5vcm1hbCwgYm9vbCB1
c2VMb3dRdWFsaXR5U2NhbGUgPSBmYWxzZSk7Ci0gICAgdm9pZCBkcmF3UGF0dGVybihHcmFwaGlj
c0NvbnRleHQmLCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFmZmluZVRyYW5zZm9y
bSYgcGF0dGVyblRyYW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIENvbG9yU3BhY2Ug
c3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciwgY29uc3QgRmxvYXRSZWN0JiBkZXN0
UmVjdCwgQmxlbmRNb2RlID0gQmxlbmRNb2RlTm9ybWFsKTsKKyAgICB2b2lkIGRyYXdQYXR0ZXJu
KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgQWZmaW5l
VHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwgY29u
c3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9z
aXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIEJsZW5kTW9kZSA9IEJsZW5k
TW9kZU5vcm1hbCk7CiAKICAgICBpbmxpbmUgdm9pZCBnZW5lcmljQ29udmVydFRvTHVtaW5hbmNl
TWFzaygpOwogCkBAIC0xNTMsNyArMTUwLDYgQEAgcHJpdmF0ZToKICAgICBJbnRTaXplIG1fc2l6
ZTsKICAgICBJbnRTaXplIG1fbG9naWNhbFNpemU7CiAgICAgZmxvYXQgbV9yZXNvbHV0aW9uU2Nh
bGU7Ci0gICAgRmxvYXRTaXplIG1fc3BhY2U7CiAKICAgICAvLyBUaGlzIGNvbnN0cnVjdG9yIHdp
bGwgcGxhY2UgaXRzIHN1Y2Nlc3MgaW50byB0aGUgZ2l2ZW4gb3V0LXZhcmlhYmxlCiAgICAgLy8g
c28gdGhhdCBjcmVhdGUoKSBrbm93cyB3aGVuIGl0IHNob3VsZCByZXR1cm4gZmFpbHVyZS4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5l
cmF0ZWRJbWFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9OYW1lZElt
YWdlR2VuZXJhdGVkSW1hZ2UuY3BwCmluZGV4IDFiMjk3YmQ0OGFhOTgxYzZjN2VhYTdjZjcyYjI4
NjkxYzY1NGY3ODcuLjdhMmI4ZWFmYmFhMWYwNzc2OWMwZjljNjY1ZjJjZTRlY2Y4MGI5NDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5l
cmF0ZWRJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTmFt
ZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNwcApAQCAtNjAsNyArNjAsNyBAQCB2b2lkIE5hbWVkSW1h
Z2VHZW5lcmF0ZWRJbWFnZTo6ZHJhdyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZs
b2F0UmVjdCYgZAogI2VuZGlmCiB9CiAKLXZvaWQgTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlOjpk
cmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc3Jj
UmVjdCwgY29uc3QgQWZmaW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9h
dFBvaW50JiBwaGFzZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJh
dG9yIGNvbXBvc2l0ZU9wLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIEJsZW5kTW9kZSBibGVu
ZE1vZGUpCit2b2lkIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZTo6ZHJhd1BhdHRlcm4oR3JhcGhp
Y3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFmZmlu
ZVRyYW5zZm9ybSYgcGF0dGVyblRyYW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIGNv
bnN0IEZsb2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBv
c2l0ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIEJsZW5k
TW9kZSBibGVuZE1vZGUpCiB7CiAjaWYgVVNFKE5FV19USEVNRSkKICAgICBzdGQ6OnVuaXF1ZV9w
dHI8SW1hZ2VCdWZmZXI+IGltYWdlQnVmZmVyID0gY29udGV4dC5jcmVhdGVDb21wYXRpYmxlQnVm
ZmVyKHNpemUoKSwgdHJ1ZSk7CkBAIC03MSw3ICs3MSw3IEBAIHZvaWQgTmFtZWRJbWFnZUdlbmVy
YXRlZEltYWdlOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZs
b2F0CiAgICAgcGxhdGZvcm1UaGVtZSgpLT5kcmF3TmFtZWRJbWFnZShtX25hbWUsIGdyYXBoaWNz
Q29udGV4dCwgRmxvYXRSZWN0KDAsIDAsIHNpemUoKS53aWR0aCgpLCBzaXplKCkuaGVpZ2h0KCkp
KTsKIAogICAgIC8vIFRpbGUgdGhlIGltYWdlIGJ1ZmZlciBpbnRvIHRoZSBjb250ZXh0LgotICAg
IGltYWdlQnVmZmVyLT5kcmF3UGF0dGVybihjb250ZXh0LCBzcmNSZWN0LCBwYXR0ZXJuVHJhbnNm
b3JtLCBwaGFzZSwgc3R5bGVDb2xvclNwYWNlLCBjb21wb3NpdGVPcCwgZHN0UmVjdCwgYmxlbmRN
b2RlKTsKKyAgICBpbWFnZUJ1ZmZlci0+ZHJhd1BhdHRlcm4oY29udGV4dCwgc3JjUmVjdCwgcGF0
dGVyblRyYW5zZm9ybSwgcGhhc2UsIHNwYWNpbmcsIHN0eWxlQ29sb3JTcGFjZSwgY29tcG9zaXRl
T3AsIGRzdFJlY3QsIGJsZW5kTW9kZSk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShjb250ZXh0
KTsKICAgICBVTlVTRURfUEFSQU0oc3JjUmVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9OYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oCmluZGV4
IDE0ODQyMjA4YzQyZWFjY2VjMjE0N2ExZjBlYWY4MmMyN2IwMzZmYTcuLjE4OTgzZDBlZGEyODgw
MDRiYWI2MTBkZGZiZmJiZjAzODAxMTMzY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL05hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oCkBAIC00
Miw3ICs0Miw3IEBAIHB1YmxpYzoKIAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBkcmF3
KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgY29uc3QgRmxvYXRS
ZWN0JiBzcmNSZWN0LCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3BlcmF0
b3IsIEJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbkRlc2NyaXB0aW9uKSBvdmVycmlkZTsKLSAg
ICB2aXJ0dWFsIHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiwgY29uc3QgRmxvYXRS
ZWN0JiBzcmNSZWN0LCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zvcm0sIGNv
bnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9z
aXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgQmxlbmRNb2RlKSBvdmVycmlk
ZTsKKyAgICB2aXJ0dWFsIHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiwgY29uc3Qg
RmxvYXRSZWN0JiBzcmNSZWN0LCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zv
cm0sIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBjb25zdCBGbG9hdFNpemUmIHNwYWNpbmcsIENv
bG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciwgY29uc3QgRmxvYXRS
ZWN0JiBkc3RSZWN0LCBCbGVuZE1vZGUpIG92ZXJyaWRlOwogCiAgICAgTmFtZWRJbWFnZUdlbmVy
YXRlZEltYWdlKFN0cmluZyBuYW1lLCBjb25zdCBGbG9hdFNpemUmKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSW1hZ2VCdWZmZXJDRy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9JbWFnZUJ1ZmZlckNHLmNwcAppbmRl
eCA1YjYyMjYyMDY2NjYxZTg2YTE5NThiMGI3MTQzMTk0ODlkMmM4ZjQwLi5hNmU0YTRmZGJmY2Y4
NjU5YjgxODkzNmRmNWNhYjA0NzYzZDA1OWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jZy9JbWFnZUJ1ZmZlckNHLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9JbWFnZUJ1ZmZlckNHLmNwcApAQCAtMTk2LDEwICsxOTYs
NyBAQCBSZWZQdHI8SW1hZ2U+IEltYWdlQnVmZmVyOjpjb3B5SW1hZ2UoQmFja2luZ1N0b3JlQ29w
eSBjb3B5QmVoYXZpb3IsIFNjYWxlQmVoYXZpbwogICAgIGlmICghaW1hZ2UpCiAgICAgICAgIHJl
dHVybiBudWxscHRyOwogCi0gICAgYXV0byBiaXRtYXBJbWFnZSA9IEJpdG1hcEltYWdlOjpjcmVh
dGUoaW1hZ2UuZ2V0KCkpOwotICAgIGJpdG1hcEltYWdlLT5zZXRTcGFjZVNpemUoc3BhY2VTaXpl
KCkpOwotCi0gICAgcmV0dXJuIFdURjo6bW92ZShiaXRtYXBJbWFnZSk7CisgICAgcmV0dXJuIEJp
dG1hcEltYWdlOjpjcmVhdGUoaW1hZ2UuZ2V0KCkpOwogfQogCiBCYWNraW5nU3RvcmVDb3B5IElt
YWdlQnVmZmVyOjpmYXN0Q29weUltYWdlTW9kZSgpCkBAIC0yNDcsNyArMjQ0LDcgQEAgdm9pZCBJ
bWFnZUJ1ZmZlcjo6ZHJhdyhHcmFwaGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBDb2xvclNwYWNl
IHN0eWxlQ29sb3JTcGFjZSwKICAgICBkZXN0Q29udGV4dC5kcmF3TmF0aXZlSW1hZ2UoaW1hZ2Uu
Z2V0KCksIG1fZGF0YS5iYWNraW5nU3RvcmVTaXplLCBjb2xvclNwYWNlLCBkZXN0UmVjdCwgYWRq
dXN0ZWRTcmNSZWN0LCBvcCwgYmxlbmRNb2RlKTsKIH0KIAotdm9pZCBJbWFnZUJ1ZmZlcjo6ZHJh
d1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0JiBkZXN0Q29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBz
cmNSZWN0LCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zvcm0sIGNvbnN0IEZs
b2F0UG9pbnQmIHBoYXNlLCBDb2xvclNwYWNlIHN0eWxlQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3Bl
cmF0b3Igb3AsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIEJsZW5kTW9kZSBibGVuZE1vZGUp
Cit2b2lkIEltYWdlQnVmZmVyOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGRlc3RDb250
ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgcGF0
dGVyblRyYW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIGNvbnN0IEZsb2F0U2l6ZSYg
c3BhY2luZywgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yIG9w
LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBCbGVuZE1vZGUgYmxlbmRNb2RlKQogewogICAg
IEZsb2F0UmVjdCBhZGp1c3RlZFNyY1JlY3QgPSBzcmNSZWN0OwogICAgIGFkanVzdGVkU3JjUmVj
dC5zY2FsZShtX3Jlc29sdXRpb25TY2FsZSwgbV9yZXNvbHV0aW9uU2NhbGUpOwpAQCAtMjU1LDE0
ICsyNTIsMTQgQEAgdm9pZCBJbWFnZUJ1ZmZlcjo6ZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250ZXh0
JiBkZXN0Q29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBzcmMKICAgICBpZiAoIWNvbnRleHQoKS5p
c0FjY2VsZXJhdGVkQ29udGV4dCgpKSB7CiAgICAgICAgIGlmICgmZGVzdENvbnRleHQgPT0gJmNv
bnRleHQoKSB8fCBkZXN0Q29udGV4dC5pc0FjY2VsZXJhdGVkQ29udGV4dCgpKSB7CiAgICAgICAg
ICAgICBpZiAoUmVmUHRyPEltYWdlPiBjb3B5ID0gY29weUltYWdlKENvcHlCYWNraW5nU3RvcmUp
KSAvLyBEcmF3aW5nIGludG8gb3VyIG93biBidWZmZXIsIG5lZWQgdG8gZGVlcCBjb3B5LgotICAg
ICAgICAgICAgICAgIGNvcHktPmRyYXdQYXR0ZXJuKGRlc3RDb250ZXh0LCBhZGp1c3RlZFNyY1Jl
Y3QsIHBhdHRlcm5UcmFuc2Zvcm0sIHBoYXNlLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVj
dCwgYmxlbmRNb2RlKTsKKyAgICAgICAgICAgICAgICBjb3B5LT5kcmF3UGF0dGVybihkZXN0Q29u
dGV4dCwgYWRqdXN0ZWRTcmNSZWN0LCBwYXR0ZXJuVHJhbnNmb3JtLCBwaGFzZSwgc3BhY2luZywg
c3R5bGVDb2xvclNwYWNlLCBvcCwgZGVzdFJlY3QsIGJsZW5kTW9kZSk7CiAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBpZiAoUmVmUHRyPEltYWdlPiBpbWFnZUZvclJlbmRlcmluZyA9IGNv
cHlJbWFnZShEb250Q29weUJhY2tpbmdTdG9yZSkpCi0gICAgICAgICAgICAgICAgaW1hZ2VGb3JS
ZW5kZXJpbmctPmRyYXdQYXR0ZXJuKGRlc3RDb250ZXh0LCBhZGp1c3RlZFNyY1JlY3QsIHBhdHRl
cm5UcmFuc2Zvcm0sIHBoYXNlLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRN
b2RlKTsKKyAgICAgICAgICAgICAgICBpbWFnZUZvclJlbmRlcmluZy0+ZHJhd1BhdHRlcm4oZGVz
dENvbnRleHQsIGFkanVzdGVkU3JjUmVjdCwgcGF0dGVyblRyYW5zZm9ybSwgcGhhc2UsIHNwYWNp
bmcsIHN0eWxlQ29sb3JTcGFjZSwgb3AsIGRlc3RSZWN0LCBibGVuZE1vZGUpOwogICAgICAgICB9
CiAgICAgfSBlbHNlIHsKICAgICAgICAgaWYgKFJlZlB0cjxJbWFnZT4gY29weSA9IGNvcHlJbWFn
ZShDb3B5QmFja2luZ1N0b3JlKSkKLSAgICAgICAgICAgIGNvcHktPmRyYXdQYXR0ZXJuKGRlc3RD
b250ZXh0LCBhZGp1c3RlZFNyY1JlY3QsIHBhdHRlcm5UcmFuc2Zvcm0sIHBoYXNlLCBzdHlsZUNv
bG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2RlKTsKKyAgICAgICAgICAgIGNvcHktPmRy
YXdQYXR0ZXJuKGRlc3RDb250ZXh0LCBhZGp1c3RlZFNyY1JlY3QsIHBhdHRlcm5UcmFuc2Zvcm0s
IHBoYXNlLCBzcGFjaW5nLCBzdHlsZUNvbG9yU3BhY2UsIG9wLCBkZXN0UmVjdCwgYmxlbmRNb2Rl
KTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NnL0ltYWdlQ0cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cv
SW1hZ2VDRy5jcHAKaW5kZXggMjBlOTNhZGE1NmU4OWI2NDViN2ZjZjM4MWE4MDBkOTdmYzYzNzkz
MS4uNmEzZjBiMDdmZWM3NDM2MWZjNDM2ZTE2MDcwYTFhMjRkZTZiMzMyYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSW1hZ2VDRy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvSW1hZ2VDRy5jcHAKQEAgLTg3LDcgKzg3
LDcgQEAgc3RhdGljIHZvaWQgcGF0dGVyblJlbGVhc2VDYWxsYmFjayh2b2lkKiBpbmZvKQogfQog
CiB2b2lkIEltYWdlOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmIGN0eHQsIGNvbnN0IEZs
b2F0UmVjdCYgdGlsZVJlY3QsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgcGF0dGVyblRyYW5zZm9y
bSwKLSAgICBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwgQ29sb3JTcGFjZSBzdHlsZUNvbG9yU3Bh
Y2UsIENvbXBvc2l0ZU9wZXJhdG9yIG9wLCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBCbGVu
ZE1vZGUgYmxlbmRNb2RlKQorICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBjb25zdCBGbG9h
dFNpemUmIHNwYWNpbmcsIENvbG9yU3BhY2Ugc3R5bGVDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVy
YXRvciBvcCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgQmxlbmRNb2RlIGJsZW5kTW9kZSkK
IHsKICAgICBpZiAoIW5hdGl2ZUltYWdlRm9yQ3VycmVudEZyYW1lKCkpCiAgICAgICAgIHJldHVy
bjsKQEAgLTEzMSwxMSArMTMxLDExIEBAIHZvaWQgSW1hZ2U6OmRyYXdQYXR0ZXJuKEdyYXBoaWNz
Q29udGV4dCYgY3R4dCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVjdCwgY29uc3QKICAgICAvLyBB
ZGp1c3QgdGhlIGNvbG9yIHNwYWNlLgogICAgIHN1YkltYWdlID0gSW1hZ2U6OmltYWdlV2l0aENv
bG9yU3BhY2Uoc3ViSW1hZ2UuZ2V0KCksIHN0eWxlQ29sb3JTcGFjZSk7CiAKLSAgICAvLyBJZiB3
ZSBuZWVkIHRvIHBhaW50IGdhcHMgYmV0d2VlbiB0aWxlcyBiZWNhdXNlIHdlIGhhdmUgYSBwYXJ0
aWFsbHkgbG9hZGVkIGltYWdlIG9yIG5vbi16ZXJvIHNwYWNlU2l6ZSgpLAorICAgIC8vIElmIHdl
IG5lZWQgdG8gcGFpbnQgZ2FwcyBiZXR3ZWVuIHRpbGVzIGJlY2F1c2Ugd2UgaGF2ZSBhIHBhcnRp
YWxseSBsb2FkZWQgaW1hZ2Ugb3Igbm9uLXplcm8gc3BhY2luZywKICAgICAvLyBmYWxsIGJhY2sg
dG8gdGhlIGxlc3MgZWZmaWNpZW50IENHUGF0dGVybi1iYXNlZCBtZWNoYW5pc20uCiAgICAgZmxv
YXQgc2NhbGVkVGlsZVdpZHRoID0gdGlsZVJlY3Qud2lkdGgoKSAqIG5hcnJvd1ByZWNpc2lvblRv
RmxvYXQocGF0dGVyblRyYW5zZm9ybS5hKCkpOwogICAgIGZsb2F0IHcgPSBDR0ltYWdlR2V0V2lk
dGgodGlsZUltYWdlKTsKLSAgICBpZiAodyA9PSBzaXplKCkud2lkdGgoKSAmJiBoID09IHNpemUo
KS5oZWlnaHQoKSAmJiAhc3BhY2VTaXplKCkud2lkdGgoKSAmJiAhc3BhY2VTaXplKCkuaGVpZ2h0
KCkpCisgICAgaWYgKHcgPT0gc2l6ZSgpLndpZHRoKCkgJiYgaCA9PSBzaXplKCkuaGVpZ2h0KCkg
JiYgIXNwYWNpbmcud2lkdGgoKSAmJiAhc3BhY2luZy5oZWlnaHQoKSkKICAgICAgICAgQ0dDb250
ZXh0RHJhd1RpbGVkSW1hZ2UoY29udGV4dCwgRmxvYXRSZWN0KGFkanVzdGVkWCwgYWRqdXN0ZWRZ
LCBzY2FsZWRUaWxlV2lkdGgsIHNjYWxlZFRpbGVIZWlnaHQpLCBzdWJJbWFnZS5nZXQoKSk7CiAg
ICAgZWxzZSB7CiAgICAgICAgIHN0YXRpYyBjb25zdCBDR1BhdHRlcm5DYWxsYmFja3MgcGF0dGVy
bkNhbGxiYWNrcyA9IHsgMCwgZHJhd1BhdHRlcm5DYWxsYmFjaywgcGF0dGVyblJlbGVhc2VDYWxs
YmFjayB9OwpAQCAtMTQ5LDggKzE0OSw4IEBAIHZvaWQgSW1hZ2U6OmRyYXdQYXR0ZXJuKEdyYXBo
aWNzQ29udGV4dCYgY3R4dCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVjdCwgY29uc3QKICNlbmRp
ZgogICAgICAgICBDR0ltYWdlUmVmIHBsYXRmb3JtSW1hZ2UgPSBDR0ltYWdlUmV0YWluKHN1Yklt
YWdlLmdldCgpKTsKICAgICAgICAgUmV0YWluUHRyPENHUGF0dGVyblJlZj4gcGF0dGVybiA9IGFk
b3B0Q0YoQ0dQYXR0ZXJuQ3JlYXRlKHBsYXRmb3JtSW1hZ2UsIENHUmVjdE1ha2UoMCwgMCwgdGls
ZVJlY3Qud2lkdGgoKSwgdGlsZVJlY3QuaGVpZ2h0KCkpLCBtYXRyaXgsCi0gICAgICAgICAgICB0
aWxlUmVjdC53aWR0aCgpICsgc3BhY2VTaXplKCkud2lkdGgoKSAqICgxIC8gbmFycm93UHJlY2lz
aW9uVG9GbG9hdChwYXR0ZXJuVHJhbnNmb3JtLmEoKSkpLAotICAgICAgICAgICAgdGlsZVJlY3Qu
aGVpZ2h0KCkgKyBzcGFjZVNpemUoKS5oZWlnaHQoKSAqICgxIC8gbmFycm93UHJlY2lzaW9uVG9G
bG9hdChwYXR0ZXJuVHJhbnNmb3JtLmQoKSkpLAorICAgICAgICAgICAgdGlsZVJlY3Qud2lkdGgo
KSArIHNwYWNpbmcud2lkdGgoKSAqICgxIC8gbmFycm93UHJlY2lzaW9uVG9GbG9hdChwYXR0ZXJu
VHJhbnNmb3JtLmEoKSkpLAorICAgICAgICAgICAgdGlsZVJlY3QuaGVpZ2h0KCkgKyBzcGFjaW5n
LmhlaWdodCgpICogKDEgLyBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHBhdHRlcm5UcmFuc2Zvcm0u
ZCgpKSksCiAgICAgICAgICAgICBrQ0dQYXR0ZXJuVGlsaW5nQ29uc3RhbnRTcGFjaW5nLCB0cnVl
LCAmcGF0dGVybkNhbGxiYWNrcykpOwogICAgICAgICAKICAgICAgICAgaWYgKCFwYXR0ZXJuKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAK
aW5kZXggNjUyOWUyZWI1ZDU1NjZhMzAwMmE4YWViNGJjZTk5ZWE1ZGYzYzgxZS4uMWVkYzVhZmM5
NGMxZDliMzBhYWUwMTA5MTg1YzUxOGMzNTEyOTJlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCkBAIC04MzYsOSArODM2LDcgQEAg
dm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25zdCBQ
YWludEluZm8mIHBhaW50SW5mbywgY28KICAgICAgICAgICAgIFJlZlB0cjxJbWFnZT4gaW1hZ2Ug
PSBiZ0ltYWdlLT5pbWFnZShjbGllbnRGb3JCYWNrZ3JvdW5kSW1hZ2UsIGdlb21ldHJ5LnRpbGVT
aXplKCkpOwogICAgICAgICAgICAgY29udGV4dC5zZXREcmF3THVtaW5hbmNlTWFzayhiZ0xheWVy
LT5tYXNrU291cmNlVHlwZSgpID09IE1hc2tMdW1pbmFuY2UpOwogICAgICAgICAgICAgYm9vbCB1
c2VMb3dRdWFsaXR5U2NhbGluZyA9IHNob3VsZFBhaW50QXRMb3dRdWFsaXR5KGNvbnRleHQsIGlt
YWdlLmdldCgpLCBiZ0xheWVyLCBnZW9tZXRyeS50aWxlU2l6ZSgpKTsKLSAgICAgICAgICAgIGlm
IChpbWFnZS5nZXQoKSkKLSAgICAgICAgICAgICAgICBpbWFnZS0+c2V0U3BhY2VTaXplKGdlb21l
dHJ5LnNwYWNlU2l6ZSgpKTsKLSAgICAgICAgICAgIGNvbnRleHQuZHJhd1RpbGVkSW1hZ2UoaW1h
Z2UuZ2V0KCksIHN0eWxlKCkuY29sb3JTcGFjZSgpLCBnZW9tZXRyeS5kZXN0UmVjdCgpLCB0b0xh
eW91dFBvaW50KGdlb21ldHJ5LnJlbGF0aXZlUGhhc2UoKSksIGdlb21ldHJ5LnRpbGVTaXplKCks
IEltYWdlUGFpbnRpbmdPcHRpb25zKGNvbXBvc2l0ZU9wLCBiZ0xheWVyLT5ibGVuZE1vZGUoKSwg
SW1hZ2VPcmllbnRhdGlvbkRlc2NyaXB0aW9uKCksIHVzZUxvd1F1YWxpdHlTY2FsaW5nKSk7Cisg
ICAgICAgICAgICBjb250ZXh0LmRyYXdUaWxlZEltYWdlKGltYWdlLmdldCgpLCBzdHlsZSgpLmNv
bG9yU3BhY2UoKSwgZ2VvbWV0cnkuZGVzdFJlY3QoKSwgdG9MYXlvdXRQb2ludChnZW9tZXRyeS5y
ZWxhdGl2ZVBoYXNlKCkpLCBnZW9tZXRyeS50aWxlU2l6ZSgpLCBnZW9tZXRyeS5zcGFjZVNpemUo
KSwgSW1hZ2VQYWludGluZ09wdGlvbnMoY29tcG9zaXRlT3AsIGJnTGF5ZXItPmJsZW5kTW9kZSgp
LCBJbWFnZU9yaWVudGF0aW9uRGVzY3JpcHRpb24oKSwgdXNlTG93UXVhbGl0eVNjYWxpbmcpKTsK
ICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBo
aWNzL1NWR0ltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5j
cHAKaW5kZXggNjNlYjBlZjc2MTY5NzBiZTIzNWI2Y2VjOTg4NTNkN2NiYWQwMGNjYS4uYjk1ZTQz
OTY3NzZmY2JlMDgyNmU2Y2Q3NzUzMGE1NDg4NDY2N2M5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHSW1hZ2UuY3BwCkBAIC0xODUsOCArMTg1LDggQEAgUGFzc05hdGl2ZUltYWdl
UHRyIFNWR0ltYWdlOjpuYXRpdmVJbWFnZUZvckN1cnJlbnRGcmFtZSgpCiB9CiAjZW5kaWYKIAot
dm9pZCBTVkdJbWFnZTo6ZHJhd1BhdHRlcm5Gb3JDb250YWluZXIoR3JhcGhpY3NDb250ZXh0JiBj
b250ZXh0LCBjb25zdCBGbG9hdFNpemUgY29udGFpbmVyU2l6ZSwgZmxvYXQgem9vbSwgY29uc3Qg
RmxvYXRSZWN0JiBzcmNSZWN0LAotICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgcGF0dGVyblRy
YW5zZm9ybSwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIENvbG9yU3BhY2UgY29sb3JTcGFjZSwg
Q29tcG9zaXRlT3BlcmF0b3IgY29tcG9zaXRlT3AsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwg
QmxlbmRNb2RlIGJsZW5kTW9kZSkKK3ZvaWQgU1ZHSW1hZ2U6OmRyYXdQYXR0ZXJuRm9yQ29udGFp
bmVyKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRTaXplJiBjb250YWluZXJT
aXplLCBmbG9hdCB6b29tLCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsCisgICAgY29uc3QgQWZm
aW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwg
Y29uc3QgRmxvYXRTaXplJiBzcGFjaW5nLCBDb2xvclNwYWNlIGNvbG9yU3BhY2UsIENvbXBvc2l0
ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIEJsZW5kTW9k
ZSBibGVuZE1vZGUpCiB7CiAgICAgRmxvYXRSZWN0IHpvb21lZENvbnRhaW5lclJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgpLCBjb250YWluZXJTaXplKTsKICAgICB6b29tZWRDb250YWluZXJS
ZWN0LnNjYWxlKHpvb20pOwpAQCAtMjEwLDcgKzIxMCw2IEBAIHZvaWQgU1ZHSW1hZ2U6OmRyYXdQ
YXR0ZXJuRm9yQ29udGFpbmVyKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRT
aXplCiAgICAgUmVmUHRyPEltYWdlPiBpbWFnZSA9IGJ1ZmZlci0+Y29weUltYWdlKERvbnRDb3B5
QmFja2luZ1N0b3JlLCBVbnNjYWxlZCk7CiAgICAgaWYgKCFpbWFnZSkKICAgICAgICAgcmV0dXJu
OwotICAgIGltYWdlLT5zZXRTcGFjZVNpemUoc3BhY2VTaXplKCkpOwogCiAgICAgLy8gQWRqdXN0
IHRoZSBzb3VyY2UgcmVjdCBhbmQgdHJhbnNmb3JtIGR1ZSB0byB0aGUgaW1hZ2UgYnVmZmVyJ3Mg
c2NhbGluZy4KICAgICBGbG9hdFJlY3Qgc2NhbGVkU3JjUmVjdCA9IHNyY1JlY3Q7CkBAIC0yMTks
NyArMjE4LDcgQEAgdm9pZCBTVkdJbWFnZTo6ZHJhd1BhdHRlcm5Gb3JDb250YWluZXIoR3JhcGhp
Y3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFNpemUKICAgICB1bnNjYWxlZFBhdHRlcm5U
cmFuc2Zvcm0uc2NhbGUoMSAvIGltYWdlQnVmZmVyU2NhbGUud2lkdGgoKSwgMSAvIGltYWdlQnVm
ZmVyU2NhbGUuaGVpZ2h0KCkpOwogCiAgICAgY29udGV4dC5zZXREcmF3THVtaW5hbmNlTWFzayhm
YWxzZSk7Ci0gICAgaW1hZ2UtPmRyYXdQYXR0ZXJuKGNvbnRleHQsIHNjYWxlZFNyY1JlY3QsIHVu
c2NhbGVkUGF0dGVyblRyYW5zZm9ybSwgcGhhc2UsIGNvbG9yU3BhY2UsIGNvbXBvc2l0ZU9wLCBk
c3RSZWN0LCBibGVuZE1vZGUpOworICAgIGltYWdlLT5kcmF3UGF0dGVybihjb250ZXh0LCBzY2Fs
ZWRTcmNSZWN0LCB1bnNjYWxlZFBhdHRlcm5UcmFuc2Zvcm0sIHBoYXNlLCBzcGFjaW5nLCBjb2xv
clNwYWNlLCBjb21wb3NpdGVPcCwgZHN0UmVjdCwgYmxlbmRNb2RlKTsKIH0KIAogdm9pZCBTVkdJ
bWFnZTo6ZHJhdyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgZHN0
UmVjdCwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVy
YXRvciBjb21wb3NpdGVPcCwgQmxlbmRNb2RlIGJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbkRl
c2NyaXB0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0lt
YWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuaAppbmRleCBmYWU4
ZDBjODNlOTI0YTY3NGYwMTEyMTZiODJlNWViM2JmMjA0MTRiLi5hNGMwNzA0NmEyMDkzZjk1N2Vh
OGUwOGEwMDEzOWQ1YmU4ZDA2YmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3Jh
cGhpY3MvU1ZHSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1h
Z2UuaApAQCAtOTMsNyArOTMsNyBAQCBwcml2YXRlOgogICAgIFNWR0ltYWdlKEltYWdlT2JzZXJ2
ZXImLCBjb25zdCBVUkwmKTsKICAgICB2aXJ0dWFsIHZvaWQgZHJhdyhHcmFwaGljc0NvbnRleHQm
LCBjb25zdCBGbG9hdFJlY3QmIGZyb21SZWN0LCBjb25zdCBGbG9hdFJlY3QmIHRvUmVjdCwgQ29s
b3JTcGFjZSBzdHlsZUNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUsIElt
YWdlT3JpZW50YXRpb25EZXNjcmlwdGlvbikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkcmF3Rm9yQ29u
dGFpbmVyKEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0U2l6ZSwgZmxvYXQsIGNvbnN0IEZs
b2F0UmVjdCYsIGNvbnN0IEZsb2F0UmVjdCYsIENvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9y
LCBCbGVuZE1vZGUpOwotICAgIHZvaWQgZHJhd1BhdHRlcm5Gb3JDb250YWluZXIoR3JhcGhpY3ND
b250ZXh0JiwgY29uc3QgRmxvYXRTaXplLCBmbG9hdCwgY29uc3QgRmxvYXRSZWN0JiwgY29uc3Qg
QWZmaW5lVHJhbnNmb3JtJiwgY29uc3QgRmxvYXRQb2ludCYsIENvbG9yU3BhY2UsCisgICAgdm9p
ZCBkcmF3UGF0dGVybkZvckNvbnRhaW5lcihHcmFwaGljc0NvbnRleHQmLCBjb25zdCBGbG9hdFNp
emUmIGNvbnRhaW5lclNpemUsIGZsb2F0IHpvb20sIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwg
Y29uc3QgQWZmaW5lVHJhbnNmb3JtJiwgY29uc3QgRmxvYXRQb2ludCYgcGhhc2UsIGNvbnN0IEZs
b2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSwKICAgICAgICAgQ29tcG9zaXRlT3BlcmF0b3Is
IGNvbnN0IEZsb2F0UmVjdCYsIEJsZW5kTW9kZSk7CiAKICAgICBTVkdTVkdFbGVtZW50KiByb290
RWxlbWVudCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBoaWNz
L1NWR0ltYWdlRm9yQ29udGFpbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9T
VkdJbWFnZUZvckNvbnRhaW5lci5jcHAKaW5kZXggMTljNDcxYjJjODkyNDBjMzVkY2Y2ZWQ5YmY2
MTZlMzhmNjE1NjdjZS4uNWEzODM1MTE2NTA4ZDdkMGRmY2JhMGU0MzYwZTY1Y2Y1MzEwNzQzMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlRm9yQ29udGFp
bmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2VGb3JDb250
YWluZXIuY3BwCkBAIC00MSwxMCArNDEsOSBAQCB2b2lkIFNWR0ltYWdlRm9yQ29udGFpbmVyOjpk
cmF3KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZQogfQog
CiB2b2lkIFNWR0ltYWdlRm9yQ29udGFpbmVyOjpkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQm
IGNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgQWZmaW5lVHJhbnNmb3Jt
JiBwYXR0ZXJuVHJhbnNmb3JtLAotICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBoYXNlLCBDb2xvclNw
YWNlIGNvbG9yU3BhY2UsIENvbXBvc2l0ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wLCBjb25zdCBGbG9h
dFJlY3QmIGRzdFJlY3QsIEJsZW5kTW9kZSBibGVuZE1vZGUpCisgICAgY29uc3QgRmxvYXRQb2lu
dCYgcGhhc2UsIGNvbnN0IEZsb2F0U2l6ZSYgc3BhY2luZywgQ29sb3JTcGFjZSBjb2xvclNwYWNl
LCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0
LCBCbGVuZE1vZGUgYmxlbmRNb2RlKQogewotICAgIG1faW1hZ2UtPnNldFNwYWNlU2l6ZShzcGFj
ZVNpemUoKSk7Ci0gICAgbV9pbWFnZS0+ZHJhd1BhdHRlcm5Gb3JDb250YWluZXIoY29udGV4dCwg
bV9jb250YWluZXJTaXplLCBtX3pvb20sIHNyY1JlY3QsIHBhdHRlcm5UcmFuc2Zvcm0sIHBoYXNl
LCBjb2xvclNwYWNlLCBjb21wb3NpdGVPcCwgZHN0UmVjdCwgYmxlbmRNb2RlKTsKKyAgICBtX2lt
YWdlLT5kcmF3UGF0dGVybkZvckNvbnRhaW5lcihjb250ZXh0LCBtX2NvbnRhaW5lclNpemUsIG1f
em9vbSwgc3JjUmVjdCwgcGF0dGVyblRyYW5zZm9ybSwgcGhhc2UsIHNwYWNpbmcsIGNvbG9yU3Bh
Y2UsIGNvbXBvc2l0ZU9wLCBkc3RSZWN0LCBibGVuZE1vZGUpOwogfQogCiBQYXNzTmF0aXZlSW1h
Z2VQdHIgU1ZHSW1hZ2VGb3JDb250YWluZXI6Om5hdGl2ZUltYWdlRm9yQ3VycmVudEZyYW1lKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZUZvckNvbnRh
aW5lci5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlRm9yQ29udGFpbmVy
LmgKaW5kZXggOTc2OTVmZGE4ZjZiOWVjMGRjN2I4OTlmMjA5NWQ5ZmEwMzUxNjA3OS4uNmFiYmJj
NmQwMjJlMDBiY2M5YjE4NmZhNTk4ODhiOWFkN2VlYTVmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlRm9yQ29udGFpbmVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlRm9yQ29udGFpbmVyLmgKQEAgLTU4LDcgKzU4LDcg
QEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIGRyYXcoR3JhcGhpY3NDb250ZXh0JiwgY29u
c3QgRmxvYXRSZWN0JiwgY29uc3QgRmxvYXRSZWN0JiwgQ29sb3JTcGFjZSwgQ29tcG9zaXRlT3Bl
cmF0b3IsIEJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbkRlc2NyaXB0aW9uKSBvdmVycmlkZTsK
IAotICAgIHZpcnR1YWwgdm9pZCBkcmF3UGF0dGVybihHcmFwaGljc0NvbnRleHQmLCBjb25zdCBG
bG9hdFJlY3QmLCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mLCBjb25zdCBGbG9hdFBvaW50JiwgQ29s
b3JTcGFjZSwgQ29tcG9zaXRlT3BlcmF0b3IsIGNvbnN0IEZsb2F0UmVjdCYsIEJsZW5kTW9kZSkg
b3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGRyYXdQYXR0ZXJuKEdyYXBoaWNzQ29udGV4dCYs
IGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYsIGNvbnN0IEZsb2F0UG9p
bnQmLCBjb25zdCBGbG9hdFNpemUmLCBDb2xvclNwYWNlLCBDb21wb3NpdGVPcGVyYXRvciwgY29u
c3QgRmxvYXRSZWN0JiwgQmxlbmRNb2RlKSBvdmVycmlkZTsKIAogICAgIC8vIEZJWE1FOiBJbXBs
ZW1lbnQgdGhpcyB0byBiZSBsZXNzIGNvbnNlcnZhdGl2ZS4KICAgICB2aXJ0dWFsIGJvb2wgY3Vy
cmVudEZyYW1lS25vd25Ub0JlT3BhcXVlKCkgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0K
</data>
<flag name="review"
          id="288133"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>