<?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>40948</bug_id>
          
          <creation_ts>2010-06-21 14:59:04 -0700</creation_ts>
          <short_desc>Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea</short_desc>
          <delta_ts>2010-06-21 16:30:17 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>OS X 10.5</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>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>240910</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 14:59:04 -0700</bug_when>
    <thetext>The name DrawingAreaProxyUpdateChunk is confusing, and should be renamed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240912</commentid>
    <comment_count>1</comment_count>
      <attachid>59297</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 15:06:36 -0700</bug_when>
    <thetext>Created attachment 59297
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240920</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 15:23:09 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/61583</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240924</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 15:38:01 -0700</bug_when>
    <thetext>I missed the WebProcess side of the rename.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240953</commentid>
    <comment_count>4</comment_count>
      <attachid>59307</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 16:27:02 -0700</bug_when>
    <thetext>Created attachment 59307
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240955</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-06-21 16:30:17 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/61589</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59297</attachid>
            <date>2010-06-21 15:06:36 -0700</date>
            <delta_ts>2010-06-21 16:27:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40948-20100621150634.patch</filename>
            <type>text/plain</type>
            <size>20124</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
MDBkMWVkZWIzNDA4ZmY1NTZiYjdhZmY3MmYzZGNmNDAzYzdiNWEyMi4uOTg1NjUwYTBmNTc1MmRi
MTI3ZGM4NWE2YmI2N2M5NGE5ZmFkMDEzZiAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NCBAQAorMjAxMC0wNi0yMSAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWUgRHJhd2luZ0FyZWFQcm94eVVwZGF0
ZUNodW5rIHRvIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5NDgKKyAgICAgICAgCisgICAgICAgIFJlbmFt
ZSBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rIHRvIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS4KKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbToKKyAgICAgICAgKC1bV0tWaWV3
IGluaXRXaXRoRnJhbWU6cGFnZU5hbWVzcGFjZVJlZjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkNo
dW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhKToKKyAgICAg
ICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjp+Q2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhKToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpwYWlu
dCk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6c2V0U2l6ZSk6
CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6c2V0UGFnZUlzVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6ZGlkU2V0
U2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6dXBkYXRl
KToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkaWRSZWNlaXZl
TWVzc2FnZSk6CisgICAgICAgICogVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5o
OiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjplbmNv
ZGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmsuY3Bw
OiBSZW1vdmVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1
bmsuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL0RyYXdpbmdBcmVhUHJveHlV
cGRhdGVDaHVua01hYy5tbToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhOjpwYWdlKToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpl
bnN1cmVCYWNraW5nU3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWE6OmludmFsaWRhdGVCYWNraW5nU3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWE6OnBsYXRmb3JtUGFpbnQpOgorICAgICAgICAoV2ViS2l0OjpDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWE6OmRyYXdVcGRhdGVDaHVua0ludG9CYWNraW5nU3RvcmUpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy93aW4vRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rV2luLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpwYWdlKToKKyAg
ICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjplbnN1cmVCYWNraW5nU3Rv
cmUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmludmFsaWRh
dGVCYWNraW5nU3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0Fy
ZWE6OnBsYXRmb3JtUGFpbnQpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWE6OmRyYXdVcGRhdGVDaHVua0ludG9CYWNraW5nU3RvcmUpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy93aW4vV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXc6OldlYlZpZXcp
OgorICAgICAgICAqIFdlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiB3aW4vV2ViS2l0Mi52Y3Byb2o6CisKIDIwMTAtMDYtMjEgIFNhdGlzaCBTYW1wYXRoICA8c2F0
aXNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTdGV2ZSBCbG9jay4KZGlm
ZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tIGIvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KaW5kZXggN2VlMjQ5YjQzODlkNzhmMDIwNmY3NmYy
ZmJlZGIyMGM0ZjhjOTk1OS4uNjk5MTIxZWNjZWJhMjMxNjFjNDBlOTM5OGQ1ZjExYTM1MWVmNzYy
YyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KKysrIGIv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KQEAgLTI5LDcgKzI5LDcgQEAKICNp
bXBvcnQgIldLQVBJQ2FzdC5oIgogCiAvLyBJbXBsZW1lbnRhdGlvbgotI2ltcG9ydCAiRHJhd2lu
Z0FyZWFQcm94eVVwZGF0ZUNodW5rLmgiCisjaW1wb3J0ICJDaHVua2VkVXBkYXRlRHJhd2luZ0Fy
ZWEuaCIKICNpbXBvcnQgIlBhZ2VDbGllbnRJbXBsLmgiCiAjaW1wb3J0ICJSdW5Mb29wLmgiCiAj
aW1wb3J0ICJXZWJDb250ZXh0LmgiCkBAIC04MSw3ICs4MSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwogCiAgICAgX2RhdGEtPl9wYWdlID0gdG9XSyhwYWdlTmFtZXNwYWNlUmVmKS0+Y3Jl
YXRlV2ViUGFnZSgpOwogICAgIF9kYXRhLT5fcGFnZS0+c2V0UGFnZUNsaWVudChuZXcgUGFnZUNs
aWVudEltcGwoc2VsZikpOwotICAgIF9kYXRhLT5fcGFnZS0+aW5pdGlhbGl6ZVdlYlBhZ2UoSW50
U2l6ZShmcmFtZS5zaXplKSwgbmV3IERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuayhzZWxmKSk7
CisgICAgX2RhdGEtPl9wYWdlLT5pbml0aWFsaXplV2ViUGFnZShJbnRTaXplKGZyYW1lLnNpemUp
LCBuZXcgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhKHNlbGYpKTsKIAogICAgIHJldHVybiBzZWxm
OwogfQpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eVVwZGF0
ZUNodW5rLmNwcCBiL1dlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5j
cHAKc2ltaWxhcml0eSBpbmRleCA4NyUKcmVuYW1lIGZyb20gV2ViS2l0Mi9VSVByb2Nlc3MvRHJh
d2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rLmNwcApyZW5hbWUgdG8gV2ViS2l0Mi9VSVByb2Nlc3Mv
Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcAppbmRleCA5M2Q5YmYyYWZhMTYzOTU0NDcwZGRm
MGEwMzRhZmRkYzJkZTY5NTVmLi5mNTg5MGFhNmI0ZGU3ZDQwNmM5NDdiZGUzMTlkODY4ODdmYmE5
NzI2IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5VXBkYXRl
Q2h1bmsuY3BwCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YS5jcHAKQEAgLTIzLDcgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaW5jbHVkZSAiRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rLmgiCisjaW5j
bHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgiCiAKICNpbmNsdWRlICJEcmF3aW5nQXJl
YU1lc3NhZ2VLaW5kcy5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhUHJveHlNZXNzYWdlS2luZHMu
aCIKQEAgLTM3LDcgKzM3LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFj
ZSBXZWJLaXQgewogCi1EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OkRyYXdpbmdBcmVhUHJv
eHlVcGRhdGVDaHVuayhQbGF0Zm9ybVdlYlZpZXcqIHdlYlZpZXcpCitDaHVua2VkVXBkYXRlRHJh
d2luZ0FyZWE6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYShQbGF0Zm9ybVdlYlZpZXcqIHdlYlZp
ZXcpCiAgICAgOiBEcmF3aW5nQXJlYVByb3h5KERyYXdpbmdBcmVhVXBkYXRlQ2h1bmtUeXBlKQog
ICAgICwgbV9pc1dhaXRpbmdGb3JEaWRTZXRGcmFtZU5vdGlmaWNhdGlvbihmYWxzZSkKICAgICAs
IG1faXNWaXNpYmxlKHRydWUpCkBAIC00NSwxMSArNDUsMTEgQEAgRHJhd2luZ0FyZWFQcm94eVVw
ZGF0ZUNodW5rOjpEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmsoUGxhdGZvcm1XZWJWaWV3KiB3
ZWJWaWUKIHsKIH0KIAotRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rOjp+RHJhd2luZ0FyZWFQ
cm94eVVwZGF0ZUNodW5rKCkKK0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6fkNodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYSgpCiB7CiB9CiAKLXZvaWQgRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5r
OjpwYWludChjb25zdCBJbnRSZWN0JiByZWN0LCBQbGF0Zm9ybURyYXdpbmdDb250ZXh0IGNvbnRl
eHQpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6cGFpbnQoY29uc3QgSW50UmVjdCYg
cmVjdCwgUGxhdGZvcm1EcmF3aW5nQ29udGV4dCBjb250ZXh0KQogewogICAgIGlmIChtX2lzV2Fp
dGluZ0ZvckRpZFNldEZyYW1lTm90aWZpY2F0aW9uKSB7CiAgICAgICAgIFdlYlBhZ2VQcm94eSog
cGFnZSA9IHRoaXMtPnBhZ2UoKTsKQEAgLTY0LDcgKzY0LDcgQEAgdm9pZCBEcmF3aW5nQXJlYVBy
b3h5VXBkYXRlQ2h1bms6OnBhaW50KGNvbnN0IEludFJlY3QmIHJlY3QsIFBsYXRmb3JtRHJhd2lu
Z0NvbnQKICAgICBwbGF0Zm9ybVBhaW50KHJlY3QsIGNvbnRleHQpOwogfQogCi12b2lkIERyYXdp
bmdBcmVhUHJveHlVcGRhdGVDaHVuazo6c2V0U2l6ZShjb25zdCBJbnRTaXplJiB2aWV3U2l6ZSkK
K3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpzZXRTaXplKGNvbnN0IEludFNpemUmIHZp
ZXdTaXplKQogewogICAgIFdlYlBhZ2VQcm94eSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKICAgICBp
ZiAoIXBhZ2UtPmlzVmFsaWQoKSkKQEAgLTg0LDcgKzg0LDcgQEAgdm9pZCBEcmF3aW5nQXJlYVBy
b3h5VXBkYXRlQ2h1bms6OnNldFNpemUoY29uc3QgSW50U2l6ZSYgdmlld1NpemUpCiAgICAgcGFn
ZS0+cHJvY2VzcygpLT5jb25uZWN0aW9uKCktPnNlbmQoRHJhd2luZ0FyZWFNZXNzYWdlOjpTZXRT
aXplLCBwYWdlLT5wYWdlSUQoKSwgQ29yZUlQQzo6SW4odmlld1NpemUpKTsKIH0KIAotdm9pZCBE
cmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OnNldFBhZ2VJc1Zpc2libGUoYm9vbCBpc1Zpc2li
bGUpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6c2V0UGFnZUlzVmlzaWJsZShib29s
IGlzVmlzaWJsZSkKIHsKICAgICBXZWJQYWdlUHJveHkqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAK
QEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuazo6c2V0
UGFnZUlzVmlzaWJsZShib29sIGlzVmlzaWJsZSkKICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJl
cXVlc3QgYSBmdWxsIHJlcGFpbnQgaGVyZSBpZiBuZWVkZWQuCiB9CiAgICAgCi12b2lkIERyYXdp
bmdBcmVhUHJveHlVcGRhdGVDaHVuazo6ZGlkU2V0U2l6ZShVcGRhdGVDaHVuayogdXBkYXRlQ2h1
bmspCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6ZGlkU2V0U2l6ZShVcGRhdGVDaHVu
ayogdXBkYXRlQ2h1bmspCiB7CiAgICAgQVNTRVJUKG1faXNXYWl0aW5nRm9yRGlkU2V0RnJhbWVO
b3RpZmljYXRpb24pOwogICAgIG1faXNXYWl0aW5nRm9yRGlkU2V0RnJhbWVOb3RpZmljYXRpb24g
PSBmYWxzZTsKQEAgLTEyNCw3ICsxMjQsNyBAQCB2b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVD
aHVuazo6ZGlkU2V0U2l6ZShVcGRhdGVDaHVuayogdXBkYXRlQ2h1bmspCiAgICAgcGFnZS0+cHJv
Y2VzcygpLT5yZXNwb25zaXZlbmVzc1RpbWVyKCktPnN0b3AoKTsKIH0KIAotdm9pZCBEcmF3aW5n
QXJlYVByb3h5VXBkYXRlQ2h1bms6OnVwZGF0ZShVcGRhdGVDaHVuayogdXBkYXRlQ2h1bmspCit2
b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6dXBkYXRlKFVwZGF0ZUNodW5rKiB1cGRhdGVD
aHVuaykKIHsKICAgICBkcmF3VXBkYXRlQ2h1bmtJbnRvQmFja2luZ1N0b3JlKHVwZGF0ZUNodW5r
KTsKIApAQCAtMTMyLDcgKzEzMiw3IEBAIHZvaWQgRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5r
Ojp1cGRhdGUoVXBkYXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQogICAgIHBhZ2UtPnByb2Nlc3MoKS0+
Y29ubmVjdGlvbigpLT5zZW5kKERyYXdpbmdBcmVhTWVzc2FnZTo6RGlkVXBkYXRlLCBwYWdlLT5w
YWdlSUQoKSwgQ29yZUlQQzo6SW4oKSk7CiB9CiAKLXZvaWQgRHJhd2luZ0FyZWFQcm94eVVwZGF0
ZUNodW5rOjpkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6
TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBhcmd1bWVudHMp
Cit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQ
Qzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJRCBtZXNzYWdlSUQsIENvcmVJUEM6OkFy
Z3VtZW50RGVjb2RlciYgYXJndW1lbnRzKQogewogICAgIHN3aXRjaCAobWVzc2FnZUlELmdldDxE
cmF3aW5nQXJlYVByb3h5TWVzc2FnZTo6S2luZD4oKSkgewogICAgICAgICBjYXNlIERyYXdpbmdB
cmVhUHJveHlNZXNzYWdlOjpVcGRhdGU6IHsKZGlmZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNz
L0RyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5oIGIvV2ViS2l0Mi9VSVByb2Nlc3MvQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhLmgKc2ltaWxhcml0eSBpbmRleCA5NSUKcmVuYW1lIGZyb20gV2Vi
S2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rLmgKcmVuYW1lIHRvIFdl
YktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oCmluZGV4IDE1M2QzOTgy
MTg0M2I4NzVkYmM2YzYzNGQxYjEzMmMyOWQ3MjUxNmEuLjI5ZjNmNzMzZDhkM2ZmMGNhNWFhOWY0
M2E3MDM5NmU2OTdjYjQxYTIgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL0RyYXdpbmdB
cmVhUHJveHlVcGRhdGVDaHVuay5oCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYS5oCkBAIC01MCwxMCArNTAsMTAgQEAgY2xhc3MgV2ViVmlldzsKIHR5cGVk
ZWYgV2ViVmlldyBQbGF0Zm9ybVdlYlZpZXc7CiAjZW5kaWYKIAotY2xhc3MgRHJhd2luZ0FyZWFQ
cm94eVVwZGF0ZUNodW5rIDogcHVibGljIERyYXdpbmdBcmVhUHJveHkgeworY2xhc3MgQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhIDogcHVibGljIERyYXdpbmdBcmVhUHJveHkgewogcHVibGljOgot
ICAgIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuayhQbGF0Zm9ybVdlYlZpZXcqKTsKLSAgICB2
aXJ0dWFsIH5EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmsoKTsKKyAgICBDaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWEoUGxhdGZvcm1XZWJWaWV3Kik7CisgICAgdmlydHVhbCB+Q2h1bmtlZFVwZGF0
ZURyYXdpbmdBcmVhKCk7CiAKICAgICAvLyBUaGUgRHJhd2luZ0FyZWFQcm94eSBzaG91bGQgbmV2
ZXIgYmUgZGVjb2RlZCBpdHNlbGYuIEluc3RlYWQsIHRoZSBEcmF3aW5nQXJlYSBzaG91bGQgYmUg
ZGVjb2RlZC4KICAgICB2aXJ0dWFsIHZvaWQgZW5jb2RlKENvcmVJUEM6OkFyZ3VtZW50RW5jb2Rl
ciYgZW5jb2RlcikgY29uc3QKZGlmZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL21hYy9EcmF3
aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtNYWMubW0gYi9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvRHJh
d2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rTWFjLm1tCmluZGV4IGI1ZGY4NjMyNGQzY2QxOWRlNzhi
YTY3ZDA0ZTg4YjkyMjM4MjA1ZTkuLjJmMTBlZDA2ZTU5NzA3MDAwODVkZGEwNGY3M2RjYjVkNzdm
MDVhNDYgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL21hYy9EcmF3aW5nQXJlYVByb3h5
VXBkYXRlQ2h1bmtNYWMubW0KKysrIGIvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL0RyYXdpbmdBcmVh
UHJveHlVcGRhdGVDaHVua01hYy5tbQpAQCAtMjMsNyArMjMsNyBAQAogICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNsdWRlICJEcmF3aW5nQXJlYVByb3h5VXBk
YXRlQ2h1bmsuaCIKKyNpbmNsdWRlICJDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCIKIAogI2lu
Y2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZUtpbmRzLmgiCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFQ
cm94eU1lc3NhZ2VLaW5kcy5oIgpAQCAtMzYsMTIgKzM2LDEyIEBAIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotV2ViUGFnZVByb3h5KiBEcmF3aW5nQXJl
YVByb3h5VXBkYXRlQ2h1bms6OnBhZ2UoKQorV2ViUGFnZVByb3h5KiBDaHVua2VkVXBkYXRlRHJh
d2luZ0FyZWE6OnBhZ2UoKQogewogICAgIHJldHVybiB0b1dLKFttX3dlYlZpZXcgcGFnZVJlZl0p
OwogfQogCi12b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuazo6ZW5zdXJlQmFja2luZ1N0
b3JlKCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjplbnN1cmVCYWNraW5nU3RvcmUo
KQogewogICAgIGlmIChtX2JpdG1hcENvbnRleHQpCiAgICAgICAgIHJldHVybjsKQEAgLTU0LDEy
ICs1NCwxMiBAQCB2b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuazo6ZW5zdXJlQmFja2lu
Z1N0b3JlKCkKICAgICBDR0NvbnRleHRTY2FsZUNUTShtX2JpdG1hcENvbnRleHQuZ2V0KCksIDEs
IC0xKTsKIH0KIAotdm9pZCBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OmludmFsaWRhdGVC
YWNraW5nU3RvcmUoKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmludmFsaWRhdGVC
YWNraW5nU3RvcmUoKQogewogICAgIG1fYml0bWFwQ29udGV4dCA9IDA7CiB9CiAKLXZvaWQgRHJh
d2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rOjpwbGF0Zm9ybVBhaW50KGNvbnN0IEludFJlY3QmIHJl
Y3QsIENHQ29udGV4dFJlZiBjb250ZXh0KQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6
OnBsYXRmb3JtUGFpbnQoY29uc3QgSW50UmVjdCYgcmVjdCwgQ0dDb250ZXh0UmVmIGNvbnRleHQp
CiB7CiAgICAgaWYgKCFtX2JpdG1hcENvbnRleHQpCiAgICAgICAgIHJldHVybjsKQEAgLTY4LDcg
KzY4LDcgQEAgdm9pZCBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OnBsYXRmb3JtUGFpbnQo
Y29uc3QgSW50UmVjdCYgcmVjdCwgQ0dDb250ZXh0UmUKICAgICBDR0NvbnRleHREcmF3SW1hZ2Uo
Y29udGV4dCwgQ0dSZWN0TWFrZSgwLCAwLCBDR0ltYWdlR2V0V2lkdGgoaW1hZ2UuZ2V0KCkpLCBD
R0ltYWdlR2V0SGVpZ2h0KGltYWdlLmdldCgpKSksIGltYWdlLmdldCgpKTsKIH0KIAotdm9pZCBE
cmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OmRyYXdVcGRhdGVDaHVua0ludG9CYWNraW5nU3Rv
cmUoVXBkYXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0Fy
ZWE6OmRyYXdVcGRhdGVDaHVua0ludG9CYWNraW5nU3RvcmUoVXBkYXRlQ2h1bmsqIHVwZGF0ZUNo
dW5rKQogewogICAgIGVuc3VyZUJhY2tpbmdTdG9yZSgpOwogCmRpZmYgLS1naXQgYS9XZWJLaXQy
L1VJUHJvY2Vzcy93aW4vRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rV2luLmNwcCBiL1dlYktp
dDIvVUlQcm9jZXNzL3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwCmluZGV4
IGNlZjNhNDFhZjZkNDUwOTA3Y2VmM2JjZDU4M2M1OGM2ZTEzZjZlMzkuLmM3YWFhM2JhZWU4YzYy
OGY2ZWQ1NDIwZGJiMjM4MDNlMTM3NjY0NmQgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNz
L3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwCisrKyBiL1dlYktpdDIvVUlQ
cm9jZXNzL3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwCkBAIC0yMyw3ICsy
Myw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1
ZGUgIkRyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5oIgorI2luY2x1ZGUgIkNodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYS5oIgogCiAjaW5jbHVkZSAiVXBkYXRlQ2h1bmsuaCIKICNpbmNsdWRlICJX
ZWJQcm9jZXNzUHJveHkuaCIKQEAgLTM0LDEyICszNCwxMiBAQCB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVdlYlBhZ2VQcm94eSogRHJhd2luZ0FyZWFQ
cm94eVVwZGF0ZUNodW5rOjpwYWdlKCkKK1dlYlBhZ2VQcm94eSogQ2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhOjpwYWdlKCkKIHsKICAgICByZXR1cm4gbV93ZWJWaWV3LT5wYWdlKCk7CiB9CiAKLXZv
aWQgRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rOjplbnN1cmVCYWNraW5nU3RvcmUoKQordm9p
ZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmVuc3VyZUJhY2tpbmdTdG9yZSgpCiB7CiAgICAg
aWYgKG1fYmFja2luZ1N0b3JlQml0bWFwKQogICAgICAgICByZXR1cm47CkBAIC01OSwxMiArNTks
MTIgQEAgdm9pZCBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OmVuc3VyZUJhY2tpbmdTdG9y
ZSgpCiAgICAgOjpTZWxlY3RPYmplY3QobV9iYWNraW5nU3RvcmVEQy5nZXQoKSwgbV9iYWNraW5n
U3RvcmVCaXRtYXAuZ2V0KCkpOwogfQogCi12b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVu
azo6aW52YWxpZGF0ZUJhY2tpbmdTdG9yZSgpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YTo6aW52YWxpZGF0ZUJhY2tpbmdTdG9yZSgpCiB7CiAgICAgbV9iYWNraW5nU3RvcmVCaXRtYXAu
Y2xlYXIoKTsKIH0KIAotdm9pZCBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bms6OnBsYXRmb3Jt
UGFpbnQoY29uc3QgSW50UmVjdCYgcmVjdCwgSERDIGhkYykKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhOjpwbGF0Zm9ybVBhaW50KGNvbnN0IEludFJlY3QmIHJlY3QsIEhEQyBoZGMpCiB7
CiAgICAgaWYgKCFtX2JhY2tpbmdTdG9yZUJpdG1hcCkKICAgICAgICAgcmV0dXJuOwpAQCAtNzMs
NyArNzMsNyBAQCB2b2lkIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuazo6cGxhdGZvcm1QYWlu
dChjb25zdCBJbnRSZWN0JiByZWN0LCBIREMgaGRjKQogICAgIDo6Qml0Qmx0KGhkYywgcmVjdC54
KCksIHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJlY3QuaGVpZ2h0KCksIG1fYmFja2luZ1N0b3Jl
REMuZ2V0KCksIHJlY3QueCgpLCByZWN0LnkoKSwgU1JDQ09QWSk7CiB9CiAKLXZvaWQgRHJhd2lu
Z0FyZWFQcm94eVVwZGF0ZUNodW5rOjpkcmF3VXBkYXRlQ2h1bmtJbnRvQmFja2luZ1N0b3JlKFVw
ZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpk
cmF3VXBkYXRlQ2h1bmtJbnRvQmFja2luZ1N0b3JlKFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykK
IHsKICAgICBlbnN1cmVCYWNraW5nU3RvcmUoKTsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVBy
b2Nlc3Mvd2luL1dlYlZpZXcuY3BwIGIvV2ViS2l0Mi9VSVByb2Nlc3Mvd2luL1dlYlZpZXcuY3Bw
CmluZGV4IGViZTFhNzViNDExOTczOWUyZTgyODUzZjM0Njk3OTI2ZGJjOWM2ODguLjI1ODViZmFk
NmZmODhkNDRhYzM0OGQzMmI5MDkzZDExMTU0NGI3OTYgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQ
cm9jZXNzL3dpbi9XZWJWaWV3LmNwcAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmll
dy5jcHAKQEAgLTI1LDcgKzI1LDcgQEAKIAogI2luY2x1ZGUgIldlYlZpZXcuaCIKIAotI2luY2x1
ZGUgIkRyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5oIgorI2luY2x1ZGUgIkNodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYS5oIgogI2luY2x1ZGUgIlJ1bkxvb3AuaCIKICNpbmNsdWRlICJXZWJFdmVu
dEZhY3RvcnkuaCIKICNpbmNsdWRlICJXZWJQYWdlTmFtZXNwYWNlLmgiCkBAIC0xNzcsNyArMTc3
LDcgQEAgV2ViVmlldzo6V2ViVmlldyhSRUNUIHJlY3QsIFdlYlBhZ2VOYW1lc3BhY2UqIHBhZ2VO
YW1lc3BhY2UsIEhXTkQgaG9zdFdpbmRvdykKIAogICAgIG1fcGFnZSA9IHBhZ2VOYW1lc3BhY2Ut
PmNyZWF0ZVdlYlBhZ2UoKTsKICAgICBtX3BhZ2UtPnNldFBhZ2VDbGllbnQodGhpcyk7Ci0gICAg
bV9wYWdlLT5pbml0aWFsaXplV2ViUGFnZShJbnRSZWN0KHJlY3QpLnNpemUoKSwgbmV3IERyYXdp
bmdBcmVhUHJveHlVcGRhdGVDaHVuayh0aGlzKSk7CisgICAgbV9wYWdlLT5pbml0aWFsaXplV2Vi
UGFnZShJbnRSZWN0KHJlY3QpLnNpemUoKSwgbmV3IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYSh0
aGlzKSk7CiAKICAgICBtX3dpbmRvdyA9IDo6Q3JlYXRlV2luZG93RXgoMCwga1dlYktpdDJXZWJW
aWV3V2luZG93Q2xhc3NOYW1lLCAwLCBXU19DSElMRCB8IFdTX0NMSVBTSUJMSU5HUyB8IFdTX0NM
SVBDSElMRFJFTiwKICAgICAgICAgcmVjdC50b3AsIHJlY3QubGVmdCwgcmVjdC5yaWdodCAtIHJl
Y3QubGVmdCwgcmVjdC5ib3R0b20gLSByZWN0LnRvcCwgbV9ob3N0V2luZG93ID8gbV9ob3N0V2lu
ZG93IDogSFdORF9NRVNTQUdFLCAwLCBpbnN0YW5jZUhhbmRsZSgpLCB0aGlzKTsKZGlmZiAtLWdp
dCBhL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViS2l0Mi9X
ZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYmMzYTUyMWY0YWE4Yzg4MDlm
MmMwM2Y0Y2IxMDZlMmQwYzgyNGM1ZC4uNDlhNTM2ZDIyNzliMmI1YWFhNmFhNWNhMWQxNjJhNWZi
ZjZlNjFmYyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTExOCw4ICsxMTgsOCBAQAogCQlCQzI2NTFGNjExODI1RUY4MDAyNDNFMTIgLyogRHJhd2luZ0Fy
ZWFQcm94eVVwZGF0ZUNodW5rTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkMyNjUxRjUxMTgyNUVGODAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJv
eHlVcGRhdGVDaHVua01hYy5tbSAqLzsgfTsKIAkJQkMyNjUyMTYxMTgyNjA4MTAwMjQzRTEyIC8q
IERyYXdpbmdBcmVhUHJveHkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkMyNjUyMTIxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHku
Y3BwICovOyB9OwogCQlCQzI2NTIxNzExODI2MDgxMDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyNjUy
MTMxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuaCAqLzsgfTsKLQkJQkMyNjUy
MTgxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzI2NTIxNDExODI2
MDgxMDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rLmNwcCAqLzsgfTsKLQkJ
QkMyNjUyMTkxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyNjUyMTUx
MTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVuay5oICovOyB9Owor
CQlCQzI2NTIxODExODI2MDgxMDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjY1MjE0
MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwICovOyB9Owor
CQlCQzI2NTIxOTExODI2MDgxMDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzI2NTIxNTEx
ODI2MDgxMDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmggKi87IH07CiAJCUJD
MkU2RTg3MTE0MTk3MTUwMEE2M0IxRSAvKiBSdW5Mb29wLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMkU2RTc3MTE0MTk3MEMwMEE2M0IxRSAvKiBS
dW5Mb29wLmNwcCAqLzsgfTsKIAkJQkMyRTZFODgxMTQxOTcxNTAwQTYzQjFFIC8qIFJ1bkxvb3Au
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMkU2RTc4
MTE0MTk3MEMwMEE2M0IxRSAvKiBSdW5Mb29wLmggKi87IH07CiAJCUJDMkU2RThDMTE0MTk3MTUw
MEE2M0IxRSAvKiBXb3JrSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkMyRTZFN0MxMTQxOTcwQzAwQTYzQjFFIC8qIFdvcmtJdGVtLmggKi87IH07
CkBAIC0zMzMsOCArMzMzLDggQEAKIAkJQkMyNjUxRjUxMTgyNUVGODAwMjQzRTEyIC8qIERyYXdp
bmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMyNjUyMTIxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdB
cmVhUHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRHJhd2lu
Z0FyZWFQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMjY1MjEzMTE4
MjYwODEwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERyYXdpbmdBcmVhUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJQkMyNjUyMTQxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHlVcGRhdGVD
aHVuay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEcmF3aW5nQXJl
YVByb3h5VXBkYXRlQ2h1bmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzI2
NTIxNTExODI2MDgxMDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVu
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzI2NTIxNDExODI2MDgxMDAyNDNF
MTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDMjY1MjE1MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBk
YXRlRHJhd2luZ0FyZWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMkU2
RTc3MTE0MTk3MEMwMEE2M0IxRSAvKiBSdW5Mb29wLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJ1bkxvb3AuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQzJFNkU3ODExNDE5NzBDMDBBNjNCMUUgLyogUnVuTG9vcC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSdW5Mb29wLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUJDMkU2RTdDMTE0MTk3MEMwMEE2M0IxRSAvKiBXb3JrSXRlbS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtNjMzLDggKzYzMyw4IEBACiAJCQkJQkNDRjA4NUMxMTNGM0I3NTAwQzY1MEM1IC8qIG1hYyAq
LywKIAkJCQlCQzI2NTIxMjExODI2MDgxMDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eS5jcHAg
Ki8sCiAJCQkJQkMyNjUyMTMxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuaCAq
LywKLQkJCQlCQzI2NTIxNDExODI2MDgxMDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eVVwZGF0
ZUNodW5rLmNwcCAqLywKLQkJCQlCQzI2NTIxNTExODI2MDgxMDAyNDNFMTIgLyogRHJhd2luZ0Fy
ZWFQcm94eVVwZGF0ZUNodW5rLmggKi8sCisJCQkJQkMyNjUyMTQxMTgyNjA4MTAwMjQzRTEyIC8q
IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHAgKi8sCisJCQkJQkMyNjUyMTUxMTgyNjA4MTAw
MjQzRTEyIC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oICovLAogCQkJCUJDMTc3NTNFMTE4
QkFCRjAwMDdEOUU5QSAvKiBHZW5lcmljQ2FsbGJhY2suaCAqLywKIAkJCQlCQzZFREFBNTExMTI3
MUM2MDBFNzY3OEIgLyogUGFnZUNsaWVudC5oICovLAogCQkJCUJDNTk3MDc0MTE2NTkxRDAwMDU1
MUZDQSAvKiBQcm9jZXNzTW9kZWwuaCAqLywKQEAgLTk5MCw3ICs5OTAsNyBAQAogCQkJCUJDQzkz
OEUxMTE4MERFNDQwMDg1RTVGRSAvKiBXS0NvbnRleHRQcml2YXRlLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQzVGN0JCNTExODIzNzZDMDA1MkMwMkMgLyogRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkMyNjUyMTcxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdB
cmVhUHJveHkuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDMjY1MjE5MTE4MjYwODEwMDI0M0UxMiAv
KiBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmsuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMjY1
MjE5MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDMTc3NDY1MTE4QjlGRjQwMDdEOUU5QSAvKiBXS1BhZ2VQcml2YXRlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQzE3NzUzRjExOEJBQkYwMDA3RDlFOUEgLyogR2VuZXJpY0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzIwNEVFMzExQzgzRTk4MDA4RjMzNzUgLyog
SW5qZWN0ZWRCdW5kbGUuaCBpbiBIZWFkZXJzICovLApAQCAtMTE1Myw3ICsxMTUzLDcgQEAKIAkJ
CQlCQzVGN0JCOTExODIzNzk5MDA1MkMwMkMgLyogRHJhd2luZ0FyZWFVcGRhdGVDaHVua01hYy5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzI2NTFGNjExODI1RUY4MDAyNDNFMTIgLyogRHJhd2lu
Z0FyZWFQcm94eVVwZGF0ZUNodW5rTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyNjUyMTYx
MTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuY3BwIGluIFNvdXJjZXMgKi8sCi0J
CQkJQkMyNjUyMTgxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVu
ay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlCQzI2NTIxODExODI2MDgxMDAyNDNFMTIgLyogQ2h1
bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMjA0RUUyMTFD
ODNFOTgwMDhGMzM3NSAvKiBJbmplY3RlZEJ1bmRsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
QzIwNEVFNjExQzgzRUE5MDA4RjMzNzUgLyogSW5qZWN0ZWRCdW5kbGVNYWMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQkMyMDRFRUUxMUM4M0VDODAwOEYzMzc1IC8qIFdLQnVuZGxlLmNwcCBpbiBT
b3VyY2VzICovLApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi93aW4vV2ViS2l0Mi52Y3Byb2ogYi9XZWJL
aXQyL3dpbi9XZWJLaXQyLnZjcHJvagppbmRleCBiYTQwODFmNWM5YzYyMjA4MDQxYzAyYjQ2Nzlk
ODk4YTYxYmI5NTdiLi5mYzhlZTI0ZTljZTU2MTIyMmZhY2JkZDZlMjFkYjZmNGZlYTg5MzEwIDEw
MDc1NQotLS0gYS9XZWJLaXQyL3dpbi9XZWJLaXQyLnZjcHJvagorKysgYi9XZWJLaXQyL3dpbi9X
ZWJLaXQyLnZjcHJvagpAQCAtNzc2LDExICs3NzYsMTEgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0K
IAkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cVUlQcm9jZXNzXERyYXdpbmdBcmVhUHJv
eHlVcGRhdGVDaHVuay5jcHAiDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cVUlQcm9jZXNzXENodW5r
ZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHAiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUN
Ci0JCQkJUmVsYXRpdmVQYXRoPSIuLlxVSVByb2Nlc3NcRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNo
dW5rLmgiDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cVUlQcm9jZXNzXENodW5rZWRVcGRhdGVEcmF3
aW5nQXJlYS5oIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDk1MzVl
ZDdkNjdiMmQwODJhODM0ZjAyY2JjMTIwMzg4OWEyY2E0OWEuLjJhYzE1MDA1ZGRhNzkwMmU3NjAx
NDg2NjMwZjU3NWNjNTU4M2M2MGIgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZwor
KysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0wNi0yMSAg
U2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlbmFtZSBEcmF3aW5nQXJl
YVByb3h5VXBkYXRlQ2h1bmsgdG8gQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk0OAorICAgICAgICAKKyAg
ICAgICAgSGF2ZSB0aGUgc2NyaXB0IGxvb2sgaW4gV2ViS2l0Mi4KKworICAgICAgICAqIFNjcmlw
dHMvZG8td2ViY29yZS1yZW5hbWU6CisKIDIwMTAtMDYtMjEgIFNhdGlzaCBTYW1wYXRoICA8c2F0
aXNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTdGV2ZSBCbG9jay4KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvZG8td2ViY29yZS1yZW5hbWUgYi9XZWJLaXRU
b29scy9TY3JpcHRzL2RvLXdlYmNvcmUtcmVuYW1lCmluZGV4IGUyY2UwMTkwNzRlODU3MmI2OTFm
ZGM5OGRlNTEzNzIwMmI5Mzc5OGEuLjY1N2JkOWQyOGRkZTdjZDZhZTRiNzE5YmE0MGYyZDQ4MTVh
OGY5ZGMgMTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvZG8td2ViY29yZS1yZW5hbWUK
KysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9kby13ZWJjb3JlLXJlbmFtZQpAQCAtNzMsNiArNzMs
NyBAQCBmaW5kKFwmd2FudGVkLCAiSmF2YVNjcmlwdENvcmUiKTsKIGZpbmQoXCZ3YW50ZWQsICJK
YXZhU2NyaXB0R2x1ZSIpOwogZmluZChcJndhbnRlZCwgIldlYkNvcmUiKTsKIGZpbmQoXCZ3YW50
ZWQsICJXZWJLaXQiKTsKK2ZpbmQoXCZ3YW50ZWQsICJXZWJLaXQyIik7CiAKIHN1YiB3YW50ZWQK
IHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59307</attachid>
            <date>2010-06-21 16:27:02 -0700</date>
            <delta_ts>2010-06-21 16:27:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40948-20100621162701.patch</filename>
            <type>text/plain</type>
            <size>40689</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
NWM1NDIyYzg5M2E2ZTZiZjAyN2U1MWI0NDA0NjA2ODMwODljYTNjMi4uNmNlNTg3ZjM3NGUxZjcw
ZjgwYTcyMzdmMDY4NDNkNWM1M2I0ZWMwMCAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsNSArMSw4MSBAQAogMjAxMC0wNi0yMSAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAorICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWUgRHJhd2luZ0FyZWFQcm94eVVwZGF0
ZUNodW5rIHRvIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5NDgKKworICAgICAgICBSZW5hbWUgVUlQcm9j
ZXNzIHZlcnNpb24gb2YgRHJhd2luZ0FyZWFVcGRhdGVDaHVuayB0byBDaHVua2VkVXBkYXRlRHJh
d2luZ0FyZWFQcm94eSwKKyAgICAgICAgYW5kIHJlbmFtZSB0aGUgTWFjL1dpbiB2ZXJzaW9ucyBv
ZiB0aGUgdmFyaW91cyBEcmF3aW5nQXJlYSBmaWxlcyB0b28uCisgICAgICAgIAorICAgICAgICBB
bHNvIHJlbmFtZSB0aGUgRHJhd2luZ0FyZWFVcGRhdGVDaHVua1R5cGUgZW51bSB0byBDaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWFUeXBlLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMvV0tW
aWV3Lm1tOgorICAgICAgICAoLVtXS1ZpZXcgaW5pdFdpdGhGcmFtZTpwYWdlTmFtZXNwYWNlUmVm
Ol0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaDog
UmVtb3ZlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJv
eHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
UHJveHk6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6
Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6On5DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQ
cm94eSk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5Ojpw
YWludCk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5Ojpz
ZXRTaXplKToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6
OnNldFBhZ2VJc1Zpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWFQcm94eTo6ZGlkU2V0U2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVE
cmF3aW5nQXJlYVByb3h5Ojp1cGRhdGUpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWFQcm94eTo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktp
dDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6OmVuY29kZSk6CisgICAgICAgICogVUlQ
cm9jZXNzL0RyYXdpbmdBcmVhUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6RHJhd2luZ0FyZWFQ
cm94eTo6KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YVByb3h5TWFjLm1tOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhUHJveHk6OnBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWFQcm94eTo6ZW5zdXJlQmFja2luZ1N0b3JlKToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6OmludmFsaWRhdGVCYWNraW5nU3RvcmUpOgorICAgICAg
ICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eTo6cGxhdGZvcm1QYWludCk6
CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5OjpkcmF3VXBk
YXRlQ2h1bmtJbnRvQmFja2luZ1N0b3JlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL0RyYXdp
bmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbTogUmVtb3ZlZC4KKyAgICAgICAgKiBVSVByb2Nl
c3Mvd2luL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5V2luLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5OjpwYWdlKToKKyAgICAg
ICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6OmVuc3VyZUJhY2tpbmdT
dG9yZSk6CisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5Ojpp
bnZhbGlkYXRlQmFja2luZ1N0b3JlKToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhUHJveHk6OnBsYXRmb3JtUGFpbnQpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWFQcm94eTo6ZHJhd1VwZGF0ZUNodW5rSW50b0JhY2tpbmdTdG9yZSk6
CisgICAgICAgICogVUlQcm9jZXNzL3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4u
Y3BwOiBSZW1vdmVkLgorICAgICAgICAqIFVJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXc6OldlYlZpZXcpOgorICAgICAgICAqIFdlYktpdDIueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkNodW5rZWRV
cGRhdGVEcmF3aW5nQXJlYTo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhKToKKyAgICAgICAgKFdl
YktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjp+Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
KToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjppbnZhbGlkYXRl
V2luZG93KToKKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjppbnZh
bGlkYXRlQ29udGVudHNBbmRXaW5kb3cpOgorICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWE6OmludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwpOgorICAgICAgICAo
V2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNjcm9sbCk6CisgICAgICAgIChXZWJL
aXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6c2V0TmVlZHNEaXNwbGF5KToKKyAgICAgICAg
KFdlYktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkaXNwbGF5KToKKyAgICAgICAgKFdl
YktpdDo6Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpzY2hlZHVsZURpc3BsYXkpOgorICAgICAg
ICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNldFNpemUpOgorICAgICAgICAo
V2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnN1c3BlbmRQYWludGluZyk6CisgICAg
ICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6cmVzdW1lUGFpbnRpbmcpOgor
ICAgICAgICAoV2ViS2l0OjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmRpZFVwZGF0ZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6ZGlkUmVjZWl2ZU1lc3Nh
Z2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9DaHVua2VkVXBkYXRlRHJhd2luZ0Fy
ZWEuaDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6RHJhd2luZ0FyZWE6OmNyZWF0ZSk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmg6CisgICAgICAgIChXZWJLaXQ6OkRyYXdpbmdB
cmVhOjopOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYVVwZGF0ZUNo
dW5rLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0Fy
ZWFVcGRhdGVDaHVuay5oOiBSZW1vdmVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9t
YWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhTWFjLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQ6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6cGFpbnRJbnRvVXBkYXRlQ2h1bmspOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvRHJhd2luZ0FyZWFVcGRhdGVDaHVua01hYy5j
cHA6IFJlbW92ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL3dpbi9DaHVua2VkVXBk
YXRlRHJhd2luZ0FyZWFXaW4uY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6Q2h1bmtlZFVw
ZGF0ZURyYXdpbmdBcmVhOjpwYWludEludG9VcGRhdGVDaHVuayk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL3dpbi9EcmF3aW5nQXJlYVVwZGF0ZUNodW5rV2luLmNwcDogUmVtb3ZlZC4K
KyAgICAgICAgKiB3aW4vV2ViS2l0Mi52Y3Byb2o6CisKKzIwMTAtMDYtMjEgIFNpbW9uIEZyYXNl
ciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKICAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJz
IENhcmxzc29uLgogCiAgICAgICAgIFJlbmFtZSBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmsg
dG8gQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhCmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvbWFjL1dLVmlldy5tbSBiL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1t
CmluZGV4IDgwMWM2NzA0ODhjYTM5MWFiZmU3NjUxNWJiMDYwYWFiM2UyMzJiMGUuLjYxNGI4MDhl
MGYzMzAxNDYzNTM2ZmI3NTQwOWUyMWFiNjJlZjc3OTggMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMv
V0tWaWV3Lm1tCkBAIC0yOSw3ICsyOSw3IEBACiAjaW1wb3J0ICJXS0FQSUNhc3QuaCIKIAogLy8g
SW1wbGVtZW50YXRpb24KLSNpbXBvcnQgIkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oIgorI2lt
cG9ydCAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkuaCIKICNpbXBvcnQgIlBhZ2VDbGll
bnRJbXBsLmgiCiAjaW1wb3J0ICJSdW5Mb29wLmgiCiAjaW1wb3J0ICJXZWJDb250ZXh0LmgiCkBA
IC04MSw3ICs4MSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiAgICAgX2RhdGEtPl9w
YWdlID0gdG9XSyhwYWdlTmFtZXNwYWNlUmVmKS0+Y3JlYXRlV2ViUGFnZSgpOwogICAgIF9kYXRh
LT5fcGFnZS0+c2V0UGFnZUNsaWVudChuZXcgUGFnZUNsaWVudEltcGwoc2VsZikpOwotICAgIF9k
YXRhLT5fcGFnZS0+aW5pdGlhbGl6ZVdlYlBhZ2UoSW50U2l6ZShmcmFtZS5zaXplKSwgbmV3IENo
dW5rZWRVcGRhdGVEcmF3aW5nQXJlYShzZWxmKSk7CisgICAgX2RhdGEtPl9wYWdlLT5pbml0aWFs
aXplV2ViUGFnZShJbnRTaXplKGZyYW1lLnNpemUpLCBuZXcgQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhUHJveHkoc2VsZikpOwogCiAgICAgcmV0dXJuIHNlbGY7CiB9CmRpZmYgLS1naXQgYS9XZWJL
aXQyL1VJUHJvY2Vzcy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwIGIvV2ViS2l0Mi9VSVBy
b2Nlc3MvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkuY3BwCnNpbWlsYXJpdHkgaW5kZXgg
ODUlCnJlbmFtZSBmcm9tIFdlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YS5jcHAKcmVuYW1lIHRvIFdlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YVByb3h5LmNwcAppbmRleCBmNTg5MGFhNmI0ZGU3ZDQwNmM5NDdiZGUzMTlkODY4ODdmYmE5NzI2
Li43MTVlMTlhYTYyZmU0NDE5NGJjOThhNzNmNzExOGZkN2I1MzdkOWYzIDEwMDY0NAotLS0gYS9X
ZWJLaXQyL1VJUHJvY2Vzcy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwCisrKyBiL1dlYktp
dDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5LmNwcApAQCAtMjMsNyAr
MjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNs
dWRlICJDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCIKKyNpbmNsdWRlICJDaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWFQcm94eS5oIgogCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFNZXNzYWdlS2luZHMu
aCIKICNpbmNsdWRlICJEcmF3aW5nQXJlYVByb3h5TWVzc2FnZUtpbmRzLmgiCkBAIC0zNywxOSAr
MzcsMTkgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewog
Ci1DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYShQbGF0
Zm9ybVdlYlZpZXcqIHdlYlZpZXcpCi0gICAgOiBEcmF3aW5nQXJlYVByb3h5KERyYXdpbmdBcmVh
VXBkYXRlQ2h1bmtUeXBlKQorQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6OkNodW5rZWRV
cGRhdGVEcmF3aW5nQXJlYVByb3h5KFBsYXRmb3JtV2ViVmlldyogd2ViVmlldykKKyAgICA6IERy
YXdpbmdBcmVhUHJveHkoQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhVHlwZSkKICAgICAsIG1faXNX
YWl0aW5nRm9yRGlkU2V0RnJhbWVOb3RpZmljYXRpb24oZmFsc2UpCiAgICAgLCBtX2lzVmlzaWJs
ZSh0cnVlKQogICAgICwgbV93ZWJWaWV3KHdlYlZpZXcpCiB7CiB9CiAKLUNodW5rZWRVcGRhdGVE
cmF3aW5nQXJlYTo6fkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYSgpCitDaHVua2VkVXBkYXRlRHJh
d2luZ0FyZWFQcm94eTo6fkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5KCkKIHsKIH0KIAot
dm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnBhaW50KGNvbnN0IEludFJlY3QmIHJlY3Qs
IFBsYXRmb3JtRHJhd2luZ0NvbnRleHQgY29udGV4dCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhUHJveHk6OnBhaW50KGNvbnN0IEludFJlY3QmIHJlY3QsIFBsYXRmb3JtRHJhd2luZ0Nv
bnRleHQgY29udGV4dCkKIHsKICAgICBpZiAobV9pc1dhaXRpbmdGb3JEaWRTZXRGcmFtZU5vdGlm
aWNhdGlvbikgewogICAgICAgICBXZWJQYWdlUHJveHkqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CkBA
IC02NCw3ICs2NCw3IEBAIHZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpwYWludChjb25z
dCBJbnRSZWN0JiByZWN0LCBQbGF0Zm9ybURyYXdpbmdDb250ZXh0CiAgICAgcGxhdGZvcm1QYWlu
dChyZWN0LCBjb250ZXh0KTsKIH0KIAotdm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNl
dFNpemUoY29uc3QgSW50U2l6ZSYgdmlld1NpemUpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5n
QXJlYVByb3h5OjpzZXRTaXplKGNvbnN0IEludFNpemUmIHZpZXdTaXplKQogewogICAgIFdlYlBh
Z2VQcm94eSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKICAgICBpZiAoIXBhZ2UtPmlzVmFsaWQoKSkK
QEAgLTg0LDcgKzg0LDcgQEAgdm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNldFNpemUo
Y29uc3QgSW50U2l6ZSYgdmlld1NpemUpCiAgICAgcGFnZS0+cHJvY2VzcygpLT5jb25uZWN0aW9u
KCktPnNlbmQoRHJhd2luZ0FyZWFNZXNzYWdlOjpTZXRTaXplLCBwYWdlLT5wYWdlSUQoKSwgQ29y
ZUlQQzo6SW4odmlld1NpemUpKTsKIH0KIAotdm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6
OnNldFBhZ2VJc1Zpc2libGUoYm9vbCBpc1Zpc2libGUpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3
aW5nQXJlYVByb3h5OjpzZXRQYWdlSXNWaXNpYmxlKGJvb2wgaXNWaXNpYmxlKQogewogICAgIFdl
YlBhZ2VQcm94eSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKIApAQCAtMTA3LDcgKzEwNyw3IEBAIHZv
aWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpzZXRQYWdlSXNWaXNpYmxlKGJvb2wgaXNWaXNp
YmxlKQogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgcmVxdWVzdCBhIGZ1bGwgcmVwYWludCBoZXJl
IGlmIG5lZWRlZC4KIH0KICAgICAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkaWRT
ZXRTaXplKFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhUHJveHk6OmRpZFNldFNpemUoVXBkYXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQogewogICAg
IEFTU0VSVChtX2lzV2FpdGluZ0ZvckRpZFNldEZyYW1lTm90aWZpY2F0aW9uKTsKICAgICBtX2lz
V2FpdGluZ0ZvckRpZFNldEZyYW1lTm90aWZpY2F0aW9uID0gZmFsc2U7CkBAIC0xMjQsNyArMTI0
LDcgQEAgdm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmRpZFNldFNpemUoVXBkYXRlQ2h1
bmsqIHVwZGF0ZUNodW5rKQogICAgIHBhZ2UtPnByb2Nlc3MoKS0+cmVzcG9uc2l2ZW5lc3NUaW1l
cigpLT5zdG9wKCk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjp1cGRhdGUo
VXBkYXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQ
cm94eTo6dXBkYXRlKFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKIHsKICAgICBkcmF3VXBkYXRl
Q2h1bmtJbnRvQmFja2luZ1N0b3JlKHVwZGF0ZUNodW5rKTsKIApAQCAtMTMyLDcgKzEzMiw3IEBA
IHZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjp1cGRhdGUoVXBkYXRlQ2h1bmsqIHVwZGF0
ZUNodW5rKQogICAgIHBhZ2UtPnByb2Nlc3MoKS0+Y29ubmVjdGlvbigpLT5zZW5kKERyYXdpbmdB
cmVhTWVzc2FnZTo6RGlkVXBkYXRlLCBwYWdlLT5wYWdlSUQoKSwgQ29yZUlQQzo6SW4oKSk7CiB9
CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkaWRSZWNlaXZlTWVzc2FnZShDb3Jl
SVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6
QXJndW1lbnREZWNvZGVyJiBhcmd1bWVudHMpCit2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YVByb3h5OjpkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6
TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBhcmd1bWVudHMp
CiB7CiAgICAgc3dpdGNoIChtZXNzYWdlSUQuZ2V0PERyYXdpbmdBcmVhUHJveHlNZXNzYWdlOjpL
aW5kPigpKSB7CiAgICAgICAgIGNhc2UgRHJhd2luZ0FyZWFQcm94eU1lc3NhZ2U6OlVwZGF0ZTog
ewpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
LmggYi9XZWJLaXQyL1VJUHJvY2Vzcy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5oCnNp
bWlsYXJpdHkgaW5kZXggOTUlCnJlbmFtZSBmcm9tIFdlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRV
cGRhdGVEcmF3aW5nQXJlYS5oCnJlbmFtZSB0byBXZWJLaXQyL1VJUHJvY2Vzcy9DaHVua2VkVXBk
YXRlRHJhd2luZ0FyZWFQcm94eS5oCmluZGV4IDI5ZjNmNzMzZDhkM2ZmMGNhNWFhOWY0M2E3MDM5
NmU2OTdjYjQxYTIuLjY0YWMzYzI2YTU0ZTljMGY5M2FkYWZjMWJhNTE4NDNmMmNhZGQwNzAgMTAw
NjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oCisr
KyBiL1dlYktpdDIvVUlQcm9jZXNzL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5LmgKQEAg
LTUwLDEwICs1MCwxMCBAQCBjbGFzcyBXZWJWaWV3OwogdHlwZWRlZiBXZWJWaWV3IFBsYXRmb3Jt
V2ViVmlldzsKICNlbmRpZgogCi1jbGFzcyBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEgOiBwdWJs
aWMgRHJhd2luZ0FyZWFQcm94eSB7CitjbGFzcyBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94
eSA6IHB1YmxpYyBEcmF3aW5nQXJlYVByb3h5IHsKIHB1YmxpYzoKLSAgICBDaHVua2VkVXBkYXRl
RHJhd2luZ0FyZWEoUGxhdGZvcm1XZWJWaWV3Kik7Ci0gICAgdmlydHVhbCB+Q2h1bmtlZFVwZGF0
ZURyYXdpbmdBcmVhKCk7CisgICAgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkoUGxhdGZv
cm1XZWJWaWV3Kik7CisgICAgdmlydHVhbCB+Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHko
KTsKIAogICAgIC8vIFRoZSBEcmF3aW5nQXJlYVByb3h5IHNob3VsZCBuZXZlciBiZSBkZWNvZGVk
IGl0c2VsZi4gSW5zdGVhZCwgdGhlIERyYXdpbmdBcmVhIHNob3VsZCBiZSBkZWNvZGVkLgogICAg
IHZpcnR1YWwgdm9pZCBlbmNvZGUoQ29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBj
b25zdApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5oIGIv
V2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5oCmluZGV4IGNhNmJmMWQxMTZiMmNl
MjM0N2E1NWRhMmM3YTM5YjI1NjUyODhmNjMuLmY0NzVhNjc5MmUyYTA5YzFkNTQ4ODkxY2IyYTI5
MGVhNTA2ODg2MmUgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL0RyYXdpbmdBcmVhUHJv
eHkuaAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5LmgKQEAgLTUwLDcg
KzUwLDcgQEAgdHlwZWRlZiBIREMgUGxhdGZvcm1EcmF3aW5nQ29udGV4dDsKIGNsYXNzIERyYXdp
bmdBcmVhUHJveHkgewogcHVibGljOgogICAgIGVudW0gVHlwZSB7Ci0gICAgICAgIERyYXdpbmdB
cmVhVXBkYXRlQ2h1bmtUeXBlCisgICAgICAgIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVR5cGUK
ICAgICB9OwogCiAgICAgdmlydHVhbCB+RHJhd2luZ0FyZWFQcm94eSgpOwpkaWZmIC0tZ2l0IGEv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL0RyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbSBi
L1dlYktpdDIvVUlQcm9jZXNzL21hYy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eU1hYy5t
bQpzaW1pbGFyaXR5IGluZGV4IDg3JQpyZW5hbWUgZnJvbSBXZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
RHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rTWFjLm1tCnJlbmFtZSB0byBXZWJLaXQyL1VJUHJv
Y2Vzcy9tYWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHlNYWMubW0KaW5kZXggMmYxMGVk
MDZlNTk3MDcwMDA4NWRkYTA0ZjczZGNiNWQ3N2YwNWE0Ni4uODdhOWU3OWVhMDZhNzc2NTE0ZDll
NTBkZGU5NjJiN2YzNTE0NDNhNCAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL0Ry
YXdpbmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbQorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9t
YWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHlNYWMubW0KQEAgLTIzLDcgKzIzLDcgQEAK
ICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaW5jbHVkZSAiQ2h1
bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgiCisjaW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhUHJveHkuaCIKIAogI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZUtpbmRzLmgiCiAjaW5j
bHVkZSAiRHJhd2luZ0FyZWFQcm94eU1lc3NhZ2VLaW5kcy5oIgpAQCAtMzYsMTIgKzM2LDEyIEBA
IHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotV2ViUGFn
ZVByb3h5KiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnBhZ2UoKQorV2ViUGFnZVByb3h5KiBD
aHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eTo6cGFnZSgpCiB7CiAgICAgcmV0dXJuIHRvV0so
W21fd2ViVmlldyBwYWdlUmVmXSk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
OjplbnN1cmVCYWNraW5nU3RvcmUoKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94
eTo6ZW5zdXJlQmFja2luZ1N0b3JlKCkKIHsKICAgICBpZiAobV9iaXRtYXBDb250ZXh0KQogICAg
ICAgICByZXR1cm47CkBAIC01NCwxMiArNTQsMTIgQEAgdm9pZCBDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWE6OmVuc3VyZUJhY2tpbmdTdG9yZSgpCiAgICAgQ0dDb250ZXh0U2NhbGVDVE0obV9iaXRt
YXBDb250ZXh0LmdldCgpLCAxLCAtMSk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhOjppbnZhbGlkYXRlQmFja2luZ1N0b3JlKCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhUHJveHk6OmludmFsaWRhdGVCYWNraW5nU3RvcmUoKQogewogICAgIG1fYml0bWFwQ29udGV4
dCA9IDA7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpwbGF0Zm9ybVBhaW50
KGNvbnN0IEludFJlY3QmIHJlY3QsIENHQ29udGV4dFJlZiBjb250ZXh0KQordm9pZCBDaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWFQcm94eTo6cGxhdGZvcm1QYWludChjb25zdCBJbnRSZWN0JiByZWN0
LCBDR0NvbnRleHRSZWYgY29udGV4dCkKIHsKICAgICBpZiAoIW1fYml0bWFwQ29udGV4dCkKICAg
ICAgICAgcmV0dXJuOwpAQCAtNjgsNyArNjgsNyBAQCB2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5n
QXJlYTo6cGxhdGZvcm1QYWludChjb25zdCBJbnRSZWN0JiByZWN0LCBDR0NvbnRleHRSZWYgYwog
ICAgIENHQ29udGV4dERyYXdJbWFnZShjb250ZXh0LCBDR1JlY3RNYWtlKDAsIDAsIENHSW1hZ2VH
ZXRXaWR0aChpbWFnZS5nZXQoKSksIENHSW1hZ2VHZXRIZWlnaHQoaW1hZ2UuZ2V0KCkpKSwgaW1h
Z2UuZ2V0KCkpOwogfQogCi12b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6ZHJhd1VwZGF0
ZUNodW5rSW50b0JhY2tpbmdTdG9yZShVcGRhdGVDaHVuayogdXBkYXRlQ2h1bmspCit2b2lkIENo
dW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5OjpkcmF3VXBkYXRlQ2h1bmtJbnRvQmFja2luZ1N0
b3JlKFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKIHsKICAgICBlbnN1cmVCYWNraW5nU3RvcmUo
KTsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3Mvd2luL0RyYXdpbmdBcmVhUHJveHlV
cGRhdGVDaHVua1dpbi5jcHAgYi9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vQ2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhUHJveHlXaW4uY3BwCnNpbWlsYXJpdHkgaW5kZXggOTAlCnJlbmFtZSBmcm9tIFdl
YktpdDIvVUlQcm9jZXNzL3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwCnJl
bmFtZSB0byBXZWJLaXQyL1VJUHJvY2Vzcy93aW4vQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJv
eHlXaW4uY3BwCmluZGV4IGM3YWFhM2JhZWU4YzYyOGY2ZWQ1NDIwZGJiMjM4MDNlMTM3NjY0NmQu
LmNmZjcxYmE3NTJiZGYyMDU2ZTgwYTc5YWYzYTIwYzc4MTZiYTg4MjkgMTAwNjQ0Ci0tLSBhL1dl
YktpdDIvVUlQcm9jZXNzL3dpbi9EcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwCisr
KyBiL1dlYktpdDIvVUlQcm9jZXNzL3dpbi9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eVdp
bi5jcHAKQEAgLTIzLDcgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgiCisjaW5jbHVk
ZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkuaCIKIAogI2luY2x1ZGUgIlVwZGF0ZUNo
dW5rLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Byb3h5LmgiCkBAIC0zNCwxMiArMzQsMTIgQEAg
dXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1XZWJQYWdl
UHJveHkqIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYTo6cGFnZSgpCitXZWJQYWdlUHJveHkqIENo
dW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5OjpwYWdlKCkKIHsKICAgICByZXR1cm4gbV93ZWJW
aWV3LT5wYWdlKCk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjplbnN1cmVC
YWNraW5nU3RvcmUoKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eTo6ZW5zdXJl
QmFja2luZ1N0b3JlKCkKIHsKICAgICBpZiAobV9iYWNraW5nU3RvcmVCaXRtYXApCiAgICAgICAg
IHJldHVybjsKQEAgLTU5LDEyICs1OSwxMiBAQCB2b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YTo6ZW5zdXJlQmFja2luZ1N0b3JlKCkKICAgICA6OlNlbGVjdE9iamVjdChtX2JhY2tpbmdTdG9y
ZURDLmdldCgpLCBtX2JhY2tpbmdTdG9yZUJpdG1hcC5nZXQoKSk7CiB9CiAKLXZvaWQgQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhOjppbnZhbGlkYXRlQmFja2luZ1N0b3JlKCkKK3ZvaWQgQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhUHJveHk6OmludmFsaWRhdGVCYWNraW5nU3RvcmUoKQogewogICAg
IG1fYmFja2luZ1N0b3JlQml0bWFwLmNsZWFyKCk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhOjpwbGF0Zm9ybVBhaW50KGNvbnN0IEludFJlY3QmIHJlY3QsIEhEQyBoZGMpCit2
b2lkIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5OjpwbGF0Zm9ybVBhaW50KGNvbnN0IElu
dFJlY3QmIHJlY3QsIEhEQyBoZGMpCiB7CiAgICAgaWYgKCFtX2JhY2tpbmdTdG9yZUJpdG1hcCkK
ICAgICAgICAgcmV0dXJuOwpAQCAtNzMsNyArNzMsNyBAQCB2b2lkIENodW5rZWRVcGRhdGVEcmF3
aW5nQXJlYTo6cGxhdGZvcm1QYWludChjb25zdCBJbnRSZWN0JiByZWN0LCBIREMgaGRjKQogICAg
IDo6Qml0Qmx0KGhkYywgcmVjdC54KCksIHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJlY3QuaGVp
Z2h0KCksIG1fYmFja2luZ1N0b3JlREMuZ2V0KCksIHJlY3QueCgpLCByZWN0LnkoKSwgU1JDQ09Q
WSk7CiB9CiAKLXZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkcmF3VXBkYXRlQ2h1bmtJ
bnRvQmFja2luZ1N0b3JlKFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKK3ZvaWQgQ2h1bmtlZFVw
ZGF0ZURyYXdpbmdBcmVhUHJveHk6OmRyYXdVcGRhdGVDaHVua0ludG9CYWNraW5nU3RvcmUoVXBk
YXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQogewogICAgIGVuc3VyZUJhY2tpbmdTdG9yZSgpOwogCmRp
ZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy93aW4vV2ViVmlldy5jcHAgYi9XZWJLaXQyL1VJ
UHJvY2Vzcy93aW4vV2ViVmlldy5jcHAKaW5kZXggMjU4NWJmYWQ2ZmY4OGQ0NGFjMzQ4ZDMyYjkw
OTNkMTExNTQ0Yjc5Ni4uYjBjNDgxYTM5YTZlNGQwYmUwMzVlM2UwNDQ3MzNiODRhNzI4YWZlOSAx
MDA2NDQKLS0tIGEvV2ViS2l0Mi9VSVByb2Nlc3Mvd2luL1dlYlZpZXcuY3BwCisrKyBiL1dlYktp
dDIvVUlQcm9jZXNzL3dpbi9XZWJWaWV3LmNwcApAQCAtMjUsNyArMjUsNyBAQAogCiAjaW5jbHVk
ZSAiV2ViVmlldy5oIgogCi0jaW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgiCisj
aW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkuaCIKICNpbmNsdWRlICJSdW5M
b29wLmgiCiAjaW5jbHVkZSAiV2ViRXZlbnRGYWN0b3J5LmgiCiAjaW5jbHVkZSAiV2ViUGFnZU5h
bWVzcGFjZS5oIgpAQCAtMTc3LDcgKzE3Nyw3IEBAIFdlYlZpZXc6OldlYlZpZXcoUkVDVCByZWN0
LCBXZWJQYWdlTmFtZXNwYWNlKiBwYWdlTmFtZXNwYWNlLCBIV05EIGhvc3RXaW5kb3cpCiAKICAg
ICBtX3BhZ2UgPSBwYWdlTmFtZXNwYWNlLT5jcmVhdGVXZWJQYWdlKCk7CiAgICAgbV9wYWdlLT5z
ZXRQYWdlQ2xpZW50KHRoaXMpOwotICAgIG1fcGFnZS0+aW5pdGlhbGl6ZVdlYlBhZ2UoSW50UmVj
dChyZWN0KS5zaXplKCksIG5ldyBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEodGhpcykpOworICAg
IG1fcGFnZS0+aW5pdGlhbGl6ZVdlYlBhZ2UoSW50UmVjdChyZWN0KS5zaXplKCksIG5ldyBDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eSh0aGlzKSk7CiAKICAgICBtX3dpbmRvdyA9IDo6Q3Jl
YXRlV2luZG93RXgoMCwga1dlYktpdDJXZWJWaWV3V2luZG93Q2xhc3NOYW1lLCAwLCBXU19DSElM
RCB8IFdTX0NMSVBTSUJMSU5HUyB8IFdTX0NMSVBDSElMRFJFTiwKICAgICAgICAgcmVjdC50b3As
IHJlY3QubGVmdCwgcmVjdC5yaWdodCAtIHJlY3QubGVmdCwgcmVjdC5ib3R0b20gLSByZWN0LnRv
cCwgbV9ob3N0V2luZG93ID8gbV9ob3N0V2luZG93IDogSFdORF9NRVNTQUdFLCAwLCBpbnN0YW5j
ZUhhbmRsZSgpLCB0aGlzKTsKZGlmZiAtLWdpdCBhL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKaW5kZXggZDVlZWViY2U0NDcyYzljNzhmMmQ4MTUxODljNzVmNjRmMTk0ZDliOS4uZGJjOTdj
MDQ3ZjYyZDM5MzQ4MTdjYjAxMjJjN2MzNDhjZjdkYzNmYyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9X
ZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViS2l0Mi9XZWJLaXQyLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExNSwxMSArMTE1LDExIEBACiAJCUJDMjBFQzA3
MTE2RUY3RkYwMDA5NEE1MCAvKiBXS1N0cmluZ0NGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjBFQzA1MTE2RUY3RkYwMDA5NEE1MCAvKiBXS1N0
cmluZ0NGLmNwcCAqLzsgfTsKIAkJQkMyMEVENjYxMTZGOTcxMTAwMDk0QTUwIC8qIFdLVVJMQ0Yu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjBFRDY0
MTE2Rjk3MTEwMDA5NEE1MCAvKiBXS1VSTENGLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHVibGljLCApOyB9OyB9OwogCQlCQzIwRUQ2NzExNkY5NzExMDAwOTRBNTAgLyogV0tVUkxD
Ri5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzIw
RUQ2NTExNkY5NzExMDAwOTRBNTAgLyogV0tVUkxDRi5jcHAgKi87IH07Ci0JCUJDMjY1MUY2MTE4
MjVFRjgwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtNYWMubW0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzI2NTFGNTExODI1RUY4
MDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNodW5rTWFjLm1tICovOyB9OworCQlC
QzI2NTFGNjExODI1RUY4MDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHlN
YWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzI2
NTFGNTExODI1RUY4MDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHlNYWMu
bW0gKi87IH07CiAJCUJDMjY1MjE2MTE4MjYwODEwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjY1
MjEyMTE4MjYwODEwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5LmNwcCAqLzsgfTsKIAkJQkMy
NjUyMTcxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjY1MjEzMTE4MjYwODEwMDI0M0Ux
MiAvKiBEcmF3aW5nQXJlYVByb3h5LmggKi87IH07Ci0JCUJDMjY1MjE4MTE4MjYwODEwMDI0M0Ux
MiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyNjUyMTQxMTgyNjA4MTAwMjQzRTEyIC8qIENodW5r
ZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHAgKi87IH07Ci0JCUJDMjY1MjE5MTE4MjYwODEwMDI0M0Ux
MiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjY1MjE1MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2Vk
VXBkYXRlRHJhd2luZ0FyZWEuaCAqLzsgfTsKKwkJQkMyNjUyMTgxMTgyNjA4MTAwMjQzRTEyIC8q
IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjY1MjE0MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5jcHAgKi87IH07CisJCUJDMjY1MjE5MTE4MjYwODEw
MDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyNjUyMTUxMTgyNjA4MTAwMjQzRTEy
IC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5LmggKi87IH07CiAJCUJDMkU2RTg3MTE0
MTk3MTUwMEE2M0IxRSAvKiBSdW5Mb29wLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDMkU2RTc3MTE0MTk3MEMwMEE2M0IxRSAvKiBSdW5Mb29wLmNw
cCAqLzsgfTsKIAkJQkMyRTZFODgxMTQxOTcxNTAwQTYzQjFFIC8qIFJ1bkxvb3AuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMkU2RTc4MTE0MTk3MEMw
MEE2M0IxRSAvKiBSdW5Mb29wLmggKi87IH07CiAJCUJDMkU2RThDMTE0MTk3MTUwMEE2M0IxRSAv
KiBXb3JrSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkMyRTZFN0MxMTQxOTcwQzAwQTYzQjFFIC8qIFdvcmtJdGVtLmggKi87IH07CkBAIC0xMjcs
OSArMTI3LDkgQEAKIAkJQkMyRTZFOEUxMTQxOTcxNTAwQTYzQjFFIC8qIFdvcmtRdWV1ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyRTZFN0UxMTQx
OTcwQzAwQTYzQjFFIC8qIFdvcmtRdWV1ZS5oICovOyB9OwogCQlCQzU5NTM0MjEwRkMwNDUyMDA5
OEY4MkQgLyogV2ViTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQzU5NTM0MDEwRkMwNDUyMDA5OEY4MkQgLyogV2ViTG9hZGVyQ2xp
ZW50LmggKi87IH07CiAJCUJDNTk3MDc1MTE2NTkxRDAwMDU1MUZDQSAvKiBQcm9jZXNzTW9kZWwu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTk3MDc0
MTE2NTkxRDAwMDU1MUZDQSAvKiBQcm9jZXNzTW9kZWwuaCAqLzsgfTsKLQkJQkM1RjdCQjQxMTgy
Mzc2QzAwNTJDMDJDIC8qIERyYXdpbmdBcmVhVXBkYXRlQ2h1bmsuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RjdCQjIxMTgyMzc2QzAwNTJDMDJD
IC8qIERyYXdpbmdBcmVhVXBkYXRlQ2h1bmsuY3BwICovOyB9OwotCQlCQzVGN0JCNTExODIzNzZD
MDA1MkMwMkMgLyogRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RjdCQjMxMTgyMzc2QzAwNTJDMDJDIC8qIERy
YXdpbmdBcmVhVXBkYXRlQ2h1bmsuaCAqLzsgfTsKLQkJQkM1RjdCQjkxMTgyMzc5OTAwNTJDMDJD
IC8qIERyYXdpbmdBcmVhVXBkYXRlQ2h1bmtNYWMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RjdCQjgxMTgyMzc5OTAwNTJDMDJDIC8qIERyYXdp
bmdBcmVhVXBkYXRlQ2h1bmtNYWMuY3BwICovOyB9OworCQlCQzVGN0JCNDExODIzNzZDMDA1MkMw
MkMgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNUY3QkIyMTE4MjM3NkMwMDUyQzAyQyAvKiBDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwICovOyB9OworCQlCQzVGN0JCNTExODIzNzZDMDA1MkMw
MkMgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzVGN0JCMzExODIzNzZDMDA1MkMwMkMgLyogQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhLmggKi87IH07CisJCUJDNUY3QkI5MTE4MjM3OTkwMDUyQzAyQyAv
KiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFNYWMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RjdCQjgxMTgyMzc5OTAwNTJDMDJDIC8qIENodW5r
ZWRVcGRhdGVEcmF3aW5nQXJlYU1hYy5jcHAgKi87IH07CiAJCUJDNjE3RUU4MTA0Q0IzNDcwMEZC
M0ZFMSAvKiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUExQzdERTEwMEU4NDZFMDA3OERFQkMgLyogSmF2
YVNjcmlwdENvcmUuZnJhbWV3b3JrICovOyB9OwogCQlCQzZFREFBNjExMTI3MUM2MDBFNzY3OEIg
LyogUGFnZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkM2RURBQTUxMTEyNzFDNjAwRTc2NzhCIC8qIFBhZ2VDbGllbnQuaCAqLzsgfTsKIAkJ
QkM4NDUyQTcxMTYyQzgwOTAwQ0FCOUI1IC8qIERyYXdpbmdBcmVhLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDODQ1MkE1MTE2MkM4MDkwMENBQjlC
NSAvKiBEcmF3aW5nQXJlYS5jcHAgKi87IH07CkBAIC0zMzMsMTEgKzMzMywxMSBAQAogCQlCQzIw
RUMwNTExNkVGN0ZGMDAwOTRBNTAgLyogV0tTdHJpbmdDRi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBXS1N0cmluZ0NGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQkMyMEVENjQxMTZGOTcxMTAwMDk0QTUwIC8qIFdLVVJMQ0YuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tVUkxDRi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlCQzIwRUQ2NTExNkY5NzExMDAwOTRBNTAgLyogV0tVUkxDRi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS1VSTENGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJQkMyNjUxRjUxMTgyNUVGODAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJv
eHlVcGRhdGVDaHVua01hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IERyYXdpbmdBcmVhUHJveHlVcGRhdGVDaHVua01hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkMyNjUxRjUxMTgyNUVGODAwMjQzRTEyIC8qIENodW5rZWRVcGRhdGVEcmF3
aW5nQXJlYVByb3h5TWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHlNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUJDMjY1MjEyMTE4MjYwODEwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERyYXdpbmdBcmVhUHJv
eHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzI2NTIxMzExODI2MDgxMDAy
NDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEcmF3aW5nQXJlYVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJD
MjY1MjE0MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2h1bmtlZFVwZGF0ZURyYXdpbmdB
cmVhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkMyNjUyMTUxMTgyNjA4MTAw
MjQzRTEyIC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkMyNjUyMTQxMTgyNjA4MTAwMjQzRTEyIC8qIENodW5rZWRVcGRhdGVE
cmF3aW5nQXJlYVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkMyNjUyMTUxMTgyNjA4MTAwMjQzRTEyIC8qIENodW5rZWRVcGRhdGVEcmF3aW5n
QXJlYVByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMkU2
RTc3MTE0MTk3MEMwMEE2M0IxRSAvKiBSdW5Mb29wLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJ1bkxvb3AuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQzJFNkU3ODExNDE5NzBDMDBBNjNCMUUgLyogUnVuTG9vcC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSdW5Mb29wLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUJDMkU2RTdDMTE0MTk3MEMwMEE2M0IxRSAvKiBXb3JrSXRlbS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMzQ1LDkgKzM0NSw5IEBACiAJCUJDMkU2RTdFMTE0MTk3MEMwMEE2M0IxRSAvKiBXb3JrUXVl
dWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya1F1ZXVlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNTk1MzQwMTBGQzA0NTIwMDk4RjgyRCAvKiBXZWJM
b2FkZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViTG9hZGVy
Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNTk3MDc0MTE2NTkxRDAw
MDU1MUZDQSAvKiBQcm9jZXNzTW9kZWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUHJvY2Vzc01vZGVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNUY3QkIy
MTE4MjM3NkMwMDUyQzAyQyAvKiBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERyYXdpbmdBcmVhVXBkYXRlQ2h1bmsuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzVGN0JCMzExODIzNzZDMDA1MkMwMkMgLyog
RHJhd2luZ0FyZWFVcGRhdGVDaHVuay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CUJDNUY3QkI4MTE4MjM3OTkwMDUyQzAyQyAvKiBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rTWFjLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERyYXdpbmdBcmVhVXBkYXRl
Q2h1bmtNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzVGN0JCMjExODIz
NzZDMDA1MkMwMkMgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUY3QkIzMTE4MjM3NkMwMDUyQzAyQyAvKiBD
aHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDNUY3QkI4MTE4MjM3OTkwMDUyQzAyQyAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFN
YWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2h1bmtlZFVwZGF0
ZURyYXdpbmdBcmVhTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM2RURB
QTUxMTEyNzFDNjAwRTc2NzhCIC8qIFBhZ2VDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGFnZUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlC
Qzg0NTJBNTExNjJDODA5MDBDQUI5QjUgLyogRHJhd2luZ0FyZWEuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRHJhd2luZ0FyZWEuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlCQzg0NTJBNjExNjJDODA5MDBDQUI5QjUgLyogRHJhd2luZ0FyZWEuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHJhd2luZ0FyZWEuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTYyMSw4ICs2MjEsOCBAQAogCQkJCUJDOTYzRDZDMTEzREQx
OTUwMDU3NEJFMiAvKiBtYWMgKi8sCiAJCQkJQkM4NDUyQTUxMTYyQzgwOTAwQ0FCOUI1IC8qIERy
YXdpbmdBcmVhLmNwcCAqLywKIAkJCQlCQzg0NTJBNjExNjJDODA5MDBDQUI5QjUgLyogRHJhd2lu
Z0FyZWEuaCAqLywKLQkJCQlCQzVGN0JCMjExODIzNzZDMDA1MkMwMkMgLyogRHJhd2luZ0FyZWFV
cGRhdGVDaHVuay5jcHAgKi8sCi0JCQkJQkM1RjdCQjMxMTgyMzc2QzAwNTJDMDJDIC8qIERyYXdp
bmdBcmVhVXBkYXRlQ2h1bmsuaCAqLywKKwkJCQlCQzVGN0JCMjExODIzNzZDMDA1MkMwMkMgLyog
Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCAqLywKKwkJCQlCQzVGN0JCMzExODIzNzZDMDA1
MkMwMkMgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmggKi8sCiAJCQkJQkMxMTFBREMxMTJG
NUI5MzAwMzM3QkFCIC8qIFdlYkZyYW1lLmNwcCAqLywKIAkJCQlCQzAzMkQ4OTEwRjQzN0EwMDA1
OEMxNUEgLyogV2ViRnJhbWUuaCAqLywKIAkJCQlCQzk2M0Q2QTExM0REMTkyMDA1NzRCRTIgLyog
V2ViUGFnZS5jcHAgKi8sCkBAIC02MzksOCArNjM5LDggQEAKIAkJCQlCQ0NGMDg1QzExM0YzQjc1
MDBDNjUwQzUgLyogbWFjICovLAogCQkJCUJDMjY1MjEyMTE4MjYwODEwMDI0M0UxMiAvKiBEcmF3
aW5nQXJlYVByb3h5LmNwcCAqLywKIAkJCQlCQzI2NTIxMzExODI2MDgxMDAyNDNFMTIgLyogRHJh
d2luZ0FyZWFQcm94eS5oICovLAotCQkJCUJDMjY1MjE0MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWEuY3BwICovLAotCQkJCUJDMjY1MjE1MTE4MjYwODEwMDI0M0Ux
MiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCAqLywKKwkJCQlCQzI2NTIxNDExODI2MDgx
MDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhUHJveHkuY3BwICovLAorCQkJCUJD
MjY1MjE1MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5o
ICovLAogCQkJCUJDMTc3NTNFMTE4QkFCRjAwMDdEOUU5QSAvKiBHZW5lcmljQ2FsbGJhY2suaCAq
LywKIAkJCQlCQzZFREFBNTExMTI3MUM2MDBFNzY3OEIgLyogUGFnZUNsaWVudC5oICovLAogCQkJ
CUJDNTk3MDc0MTE2NTkxRDAwMDU1MUZDQSAvKiBQcm9jZXNzTW9kZWwuaCAqLywKQEAgLTg5NCw3
ICs4OTQsNyBAQAogCQlCQzk2M0Q2QzExM0REMTk1MDA1NzRCRTIgLyogbWFjICovID0gewogCQkJ
aXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQlCQzVGN0JCODExODIzNzk5MDA1
MkMwMkMgLyogRHJhd2luZ0FyZWFVcGRhdGVDaHVua01hYy5jcHAgKi8sCisJCQkJQkM1RjdCQjgx
MTgyMzc5OTAwNTJDMDJDIC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYU1hYy5jcHAgKi8sCiAJ
CQkJQkM5NjNENkQxMTNERDFBNTAwNTc0QkUyIC8qIFdlYlBhZ2VNYWMubW0gKi8sCiAJCQkpOwog
CQkJcGF0aCA9IG1hYzsKQEAgLTkxMiw3ICs5MTIsNyBAQAogCQlCQ0NGMDg1QzExM0YzQjc1MDBD
NjUwQzUgLyogbWFjICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgK
LQkJCQlCQzI2NTFGNTExODI1RUY4MDAyNDNFMTIgLyogRHJhd2luZ0FyZWFQcm94eVVwZGF0ZUNo
dW5rTWFjLm1tICovLAorCQkJCUJDMjY1MUY1MTE4MjVFRjgwMDI0M0UxMiAvKiBDaHVua2VkVXBk
YXRlRHJhd2luZ0FyZWFQcm94eU1hYy5tbSAqLywKIAkJCSk7CiAJCQlwYXRoID0gbWFjOwogCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTk5Nyw5ICs5OTcsOSBAQAogCQkJCUJDRjY5RkEy
MTE3NkQwMTQwMDQ3MUE1MiAvKiBXZWJOYXZpZ2F0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQkNGNjlGQTkxMTc2RDFDQjAwNDcxQTUyIC8qIFdLTmF2aWdhdGlvbkRhdGEuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDQzkzOEUxMTE4MERFNDQwMDg1RTVGRSAvKiBXS0NvbnRleHRQcml2YXRl
LmggaW4gSGVhZGVycyAqLywKLQkJCQlCQzVGN0JCNTExODIzNzZDMDA1MkMwMkMgLyogRHJhd2lu
Z0FyZWFVcGRhdGVDaHVuay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM1RjdCQjUxMTgyMzc2QzAw
NTJDMDJDIC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkMyNjUyMTcxMTgyNjA4MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuaCBpbiBIZWFkZXJz
ICovLAotCQkJCUJDMjY1MjE5MTE4MjYwODEwMDI0M0UxMiAvKiBDaHVua2VkVXBkYXRlRHJhd2lu
Z0FyZWEuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMjY1MjE5MTE4MjYwODEwMDI0M0UxMiAvKiBD
aHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxNzc0
NjUxMThCOUZGNDAwN0Q5RTlBIC8qIFdLUGFnZVByaXZhdGUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDMTc3NTNGMTE4QkFCRjAwMDdEOUU5QSAvKiBHZW5lcmljQ2FsbGJhY2suaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDMjA0RUUzMTFDODNFOTgwMDhGMzM3NSAvKiBJbmplY3RlZEJ1bmRsZS5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0xMTYwLDExICsxMTYwLDExIEBACiAJCQkJQkNGNjlGODYxMTc2Q0Q2
RjAwNDcxQTUyIC8qIFdlYkhpc3RvcnlDbGllbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNG
NjlGQTMxMTc2RDAxNDAwNDcxQTUyIC8qIFdlYk5hdmlnYXRpb25EYXRhLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDRjY5RkFBMTE3NkQxQ0IwMDQ3MUE1MiAvKiBXS05hdmlnYXRpb25EYXRhLmNw
cCBpbiBTb3VyY2VzICovLAotCQkJCUJDNUY3QkI0MTE4MjM3NkMwMDUyQzAyQyAvKiBEcmF3aW5n
QXJlYVVwZGF0ZUNodW5rLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDNUY3QkI5MTE4MjM3OTkw
MDUyQzAyQyAvKiBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rTWFjLmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCUJDMjY1MUY2MTE4MjVFRjgwMDI0M0UxMiAvKiBEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1
bmtNYWMubW0gaW4gU291cmNlcyAqLywKKwkJCQlCQzVGN0JCNDExODIzNzZDMDA1MkMwMkMgLyog
Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUJDNUY3QkI5
MTE4MjM3OTkwMDUyQzAyQyAvKiBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFNYWMuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJQkMyNjUxRjYxMTgyNUVGODAwMjQzRTEyIC8qIENodW5rZWRVcGRhdGVE
cmF3aW5nQXJlYVByb3h5TWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyNjUyMTYxMTgyNjA4
MTAwMjQzRTEyIC8qIERyYXdpbmdBcmVhUHJveHkuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQkMy
NjUyMTgxMTgyNjA4MTAwMjQzRTEyIC8qIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlCQzI2NTIxODExODI2MDgxMDAyNDNFMTIgLyogQ2h1bmtlZFVwZGF0
ZURyYXdpbmdBcmVhUHJveHkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkMyMDRFRTIxMUM4M0U5
ODAwOEYzMzc1IC8qIEluamVjdGVkQnVuZGxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMjA0
RUU2MTFDODNFQTkwMDhGMzM3NSAvKiBJbmplY3RlZEJ1bmRsZU1hYy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlCQzIwNEVFRTExQzgzRUM4MDA4RjMzNzUgLyogV0tCdW5kbGUuY3BwIGluIFNvdXJj
ZXMgKi8sCmRpZmYgLS1naXQgYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJl
YVVwZGF0ZUNodW5rLmNwcCBiL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0NodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYS5jcHAKc2ltaWxhcml0eSBpbmRleCA3OCUKcmVuYW1lIGZyb20gV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5jcHAKcmVuYW1lIHRv
IFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5jcHAK
aW5kZXggY2JlNzg3ZmNmMzY5ODE0YzUyMDkwN2U2ZTE4NmI0M2JkY2VhOTcwNC4uOTU5ZTcwMmYz
YWIyODdlYTgyNWExNjJiZDg0NzkyZjIwNWFiNDEyMiAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5jcHAKKysrIGIvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcApAQCAtMjMsNyAr
MjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNs
dWRlICJEcmF3aW5nQXJlYVVwZGF0ZUNodW5rLmgiCisjaW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhLmgiCiAKICNpbmNsdWRlICJEcmF3aW5nQXJlYU1lc3NhZ2VLaW5kcy5oIgogI2lu
Y2x1ZGUgIkRyYXdpbmdBcmVhUHJveHlNZXNzYWdlS2luZHMuaCIKQEAgLTM3LDM5ICszNywzOSBA
QCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLURyYXdp
bmdBcmVhVXBkYXRlQ2h1bms6OkRyYXdpbmdBcmVhVXBkYXRlQ2h1bmsoV2ViUGFnZSogd2ViUGFn
ZSkKLSAgICA6IERyYXdpbmdBcmVhKERyYXdpbmdBcmVhVXBkYXRlQ2h1bmtUeXBlLCB3ZWJQYWdl
KQorQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEoV2Vi
UGFnZSogd2ViUGFnZSkKKyAgICA6IERyYXdpbmdBcmVhKENodW5rZWRVcGRhdGVEcmF3aW5nQXJl
YVR5cGUsIHdlYlBhZ2UpCiAgICAgLCBtX2lzV2FpdGluZ0ZvclVwZGF0ZShmYWxzZSkKICAgICAs
IG1fc2hvdWxkUGFpbnQodHJ1ZSkKLSAgICAsIG1fZGlzcGxheVRpbWVyKFdlYlByb2Nlc3M6OnNo
YXJlZCgpLnJ1bkxvb3AoKSwgdGhpcywgJkRyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmRpc3BsYXkp
CisgICAgLCBtX2Rpc3BsYXlUaW1lcihXZWJQcm9jZXNzOjpzaGFyZWQoKS5ydW5Mb29wKCksIHRo
aXMsICZDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OmRpc3BsYXkpCiB7CiB9CiAKLURyYXdpbmdB
cmVhVXBkYXRlQ2h1bms6On5EcmF3aW5nQXJlYVVwZGF0ZUNodW5rKCkKK0NodW5rZWRVcGRhdGVE
cmF3aW5nQXJlYTo6fkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYSgpCiB7CiB9CiAKLXZvaWQgRHJh
d2luZ0FyZWFVcGRhdGVDaHVuazo6aW52YWxpZGF0ZVdpbmRvdyhjb25zdCBJbnRSZWN0JiByZWN0
LCBib29sIGltbWVkaWF0ZSkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjppbnZhbGlk
YXRlV2luZG93KGNvbnN0IEludFJlY3QmIHJlY3QsIGJvb2wgaW1tZWRpYXRlKQogewogfQogCi12
b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmludmFsaWRhdGVDb250ZW50c0FuZFdpbmRvdyhj
b25zdCBJbnRSZWN0JiByZWN0LCBib29sIGltbWVkaWF0ZSkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURy
YXdpbmdBcmVhOjppbnZhbGlkYXRlQ29udGVudHNBbmRXaW5kb3coY29uc3QgSW50UmVjdCYgcmVj
dCwgYm9vbCBpbW1lZGlhdGUpCiB7CiAgICAgc2V0TmVlZHNEaXNwbGF5KHJlY3QpOwogfQogCi12
b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3Jv
bGwoY29uc3QgSW50UmVjdCYgcmVjdCwgYm9vbCBpbW1lZGlhdGUpCit2b2lkIENodW5rZWRVcGRh
dGVEcmF3aW5nQXJlYTo6aW52YWxpZGF0ZUNvbnRlbnRzRm9yU2xvd1Njcm9sbChjb25zdCBJbnRS
ZWN0JiByZWN0LCBib29sIGltbWVkaWF0ZSkKIHsKICAgICBzZXROZWVkc0Rpc3BsYXkocmVjdCk7
CiB9CiAKLXZvaWQgRHJhd2luZ0FyZWFVcGRhdGVDaHVuazo6c2Nyb2xsKGNvbnN0IEludFNpemUm
IHNjcm9sbERlbHRhLCBjb25zdCBJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNvbnN0IEludFJlY3Qm
IGNsaXBSZWN0KQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNjcm9sbChjb25zdCBJ
bnRTaXplJiBzY3JvbGxEZWx0YSwgY29uc3QgSW50UmVjdCYgcmVjdFRvU2Nyb2xsLCBjb25zdCBJ
bnRSZWN0JiBjbGlwUmVjdCkKIHsKICAgICAvLyBGSVhNRTogRG8gc29tZXRoaW5nIG11Y2ggc21h
cnRlci4KICAgICBzZXROZWVkc0Rpc3BsYXkocmVjdFRvU2Nyb2xsKTsKIH0KIAotdm9pZCBEcmF3
aW5nQXJlYVVwZGF0ZUNodW5rOjpzZXROZWVkc0Rpc3BsYXkoY29uc3QgSW50UmVjdCYgcmVjdCkK
K3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpzZXROZWVkc0Rpc3BsYXkoY29uc3QgSW50
UmVjdCYgcmVjdCkKIHsKICAgICAvLyBGSVhNRTogQ29sbGVjdCBhIHNldCBvZiByZWN0cy9yZWdp
b24gaW5zdGVhZCBvZiBqdXN0IHRoZSB1bmlvbgogICAgIC8vIG9mIGFsbCByZWN0cy4KQEAgLTc3
LDcgKzc3LDcgQEAgdm9pZCBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rOjpzZXROZWVkc0Rpc3BsYXko
Y29uc3QgSW50UmVjdCYgcmVjdCkKICAgICBzY2hlZHVsZURpc3BsYXkoKTsKIH0KIAotdm9pZCBE
cmF3aW5nQXJlYVVwZGF0ZUNodW5rOjpkaXNwbGF5KCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhOjpkaXNwbGF5KCkKIHsKICAgICBBU1NFUlQoIW1faXNXYWl0aW5nRm9yVXBkYXRlKTsK
ICAKQEAgLTEwMyw3ICsxMDMsNyBAQCB2b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmRpc3Bs
YXkoKQogICAgIG1fZGlzcGxheVRpbWVyLnN0b3AoKTsKIH0KIAotdm9pZCBEcmF3aW5nQXJlYVVw
ZGF0ZUNodW5rOjpzY2hlZHVsZURpc3BsYXkoKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0Fy
ZWE6OnNjaGVkdWxlRGlzcGxheSgpCiB7CiAgICAgaWYgKCFtX3Nob3VsZFBhaW50KQogICAgICAg
ICByZXR1cm47CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBEcmF3aW5nQXJlYVVwZGF0ZUNodW5r
OjpzY2hlZHVsZURpc3BsYXkoKQogICAgIG1fZGlzcGxheVRpbWVyLnN0YXJ0T25lU2hvdCgwKTsK
IH0KIAotdm9pZCBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rOjpzZXRTaXplKGNvbnN0IEludFNpemUm
IHZpZXdTaXplKQordm9pZCBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnNldFNpemUoY29uc3Qg
SW50U2l6ZSYgdmlld1NpemUpCiB7CiAgICAgQVNTRVJUKG1fc2hvdWxkUGFpbnQpOwogICAgIEFT
U0VSVF9BUkcodmlld1NpemUsICF2aWV3U2l6ZS5pc0VtcHR5KCkpOwpAQCAtMTM5LDcgKzEzOSw3
IEBAIHZvaWQgRHJhd2luZ0FyZWFVcGRhdGVDaHVuazo6c2V0U2l6ZShjb25zdCBJbnRTaXplJiB2
aWV3U2l6ZSkKICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmQoRHJh
d2luZ0FyZWFQcm94eU1lc3NhZ2U6OkRpZFNldFNpemUsIG1fd2ViUGFnZS0+cGFnZUlEKCksIENv
cmVJUEM6OkluKHVwZGF0ZUNodW5rKSk7CiB9CiAKLXZvaWQgRHJhd2luZ0FyZWFVcGRhdGVDaHVu
azo6c3VzcGVuZFBhaW50aW5nKCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpzdXNw
ZW5kUGFpbnRpbmcoKQogewogICAgIEFTU0VSVChtX3Nob3VsZFBhaW50KTsKICAgICAKQEAgLTE0
Nyw3ICsxNDcsNyBAQCB2b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OnN1c3BlbmRQYWludGlu
ZygpCiAgICAgbV9kaXNwbGF5VGltZXIuc3RvcCgpOwogfQogCi12b2lkIERyYXdpbmdBcmVhVXBk
YXRlQ2h1bms6OnJlc3VtZVBhaW50aW5nKCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
OjpyZXN1bWVQYWludGluZygpCiB7CiAgICAgQVNTRVJUKCFtX3Nob3VsZFBhaW50KTsKICAgICAK
QEAgLTE1Nyw3ICsxNTcsNyBAQCB2b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OnJlc3VtZVBh
aW50aW5nKCkKICAgICBkaXNwbGF5KCk7CiB9CiAKLXZvaWQgRHJhd2luZ0FyZWFVcGRhdGVDaHVu
azo6ZGlkVXBkYXRlKCkKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhOjpkaWRVcGRhdGUo
KQogewogICAgIG1faXNXYWl0aW5nRm9yVXBkYXRlID0gZmFsc2U7CiAKQEAgLTE2NSw3ICsxNjUs
NyBAQCB2b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmRpZFVwZGF0ZSgpCiAgICAgZGlzcGxh
eSgpOwogfQogCi12b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OmRpZFJlY2VpdmVNZXNzYWdl
KENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlSUQgbWVzc2FnZUlELCBDb3Jl
SVBDOjpBcmd1bWVudERlY29kZXImIGFyZ3VtZW50cykKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdp
bmdBcmVhOjpkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6
TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBhcmd1bWVudHMp
CiB7CiAgICAgc3dpdGNoIChtZXNzYWdlSUQuZ2V0PERyYXdpbmdBcmVhTWVzc2FnZTo6S2luZD4o
KSkgewogICAgICAgICBjYXNlIERyYXdpbmdBcmVhTWVzc2FnZTo6U2V0U2l6ZTogewpkaWZmIC0t
Z2l0IGEvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5o
IGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgK
c2ltaWxhcml0eSBpbmRleCA4OSUKcmVuYW1lIGZyb20gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5oCnJlbmFtZSB0byBXZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaAppbmRleCA0ZmNjZWYxMTk3MDkzNmM0
ZGZiYTNlNjg1MWViZmI1ZDIyNDc3OTY2Li5iYzAwZjAxYWI3NmUxODAzNDZmMWZiZGViOTlkZTQ1
YzgwNGVhNjQyIDEwMDY0NAotLS0gYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5n
QXJlYVVwZGF0ZUNodW5rLmgKKysrIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ2h1bmtl
ZFVwZGF0ZURyYXdpbmdBcmVhLmgKQEAgLTIzLDggKzIzLDggQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIERyYXdpbmdBcmVhVXBkYXRlQ2h1bmtf
aAotI2RlZmluZSBEcmF3aW5nQXJlYVVwZGF0ZUNodW5rX2gKKyNpZm5kZWYgQ2h1bmtlZFVwZGF0
ZURyYXdpbmdBcmVhX2gKKyNkZWZpbmUgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhX2gKIAogI2lu
Y2x1ZGUgIkRyYXdpbmdBcmVhLmgiCiAjaW5jbHVkZSAiUnVuTG9vcC5oIgpAQCAtMzQsMTAgKzM0
LDEwIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBVcGRhdGVDaHVuazsKIAotY2xhc3Mg
RHJhd2luZ0FyZWFVcGRhdGVDaHVuayA6IHB1YmxpYyBEcmF3aW5nQXJlYSB7CitjbGFzcyBDaHVu
a2VkVXBkYXRlRHJhd2luZ0FyZWEgOiBwdWJsaWMgRHJhd2luZ0FyZWEgewogcHVibGljOgotICAg
IERyYXdpbmdBcmVhVXBkYXRlQ2h1bmsoV2ViUGFnZSopOwotICAgIHZpcnR1YWwgfkRyYXdpbmdB
cmVhVXBkYXRlQ2h1bmsoKTsKKyAgICBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEoV2ViUGFnZSop
OworICAgIHZpcnR1YWwgfkNodW5rZWRVcGRhdGVEcmF3aW5nQXJlYSgpOwogCiAgICAgdmlydHVh
bCB2b2lkIGludmFsaWRhdGVXaW5kb3coY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdCwgYm9v
bCBpbW1lZGlhdGUpOwogICAgIHZpcnR1YWwgdm9pZCBpbnZhbGlkYXRlQ29udGVudHNBbmRXaW5k
b3coY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdCwgYm9vbCBpbW1lZGlhdGUpOwpAQCAtNjMs
OSArNjMsOSBAQCBwcml2YXRlOgogICAgIFdlYkNvcmU6OkludFJlY3QgbV9kaXJ0eVJlY3Q7CiAg
ICAgYm9vbCBtX2lzV2FpdGluZ0ZvclVwZGF0ZTsKICAgICBib29sIG1fc2hvdWxkUGFpbnQ7Ci0g
ICAgUnVuTG9vcDo6VGltZXI8RHJhd2luZ0FyZWFVcGRhdGVDaHVuaz4gbV9kaXNwbGF5VGltZXI7
CisgICAgUnVuTG9vcDo6VGltZXI8Q2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhPiBtX2Rpc3BsYXlU
aW1lcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCi0jZW5kaWYgLy8gRHJhd2luZ0Fy
ZWFVcGRhdGVDaHVua19oCisjZW5kaWYgLy8gQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhX2gKZGlm
ZiAtLWdpdCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmNwcCBiL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmNwcAppbmRleCBkNmQzMDYxZGVm
NDczZGY2NWMxNGZkNGExNWMwODUzYTJkYTc3OWIzLi40ZWIwNGRjOTZmM2MxZjRlZWE0OTM0NGJk
ZTJkODE1NDJmMTc2N2Q5IDEwMDY0NAotLS0gYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9E
cmF3aW5nQXJlYS5jcHAKKysrIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0Fy
ZWEuY3BwCkBAIC0yNiw3ICsyNiw3IEBACiAjaW5jbHVkZSAiRHJhd2luZ0FyZWEuaCIKIAogLy8g
U3ViY2xhc3NlcwotI2luY2x1ZGUgIkRyYXdpbmdBcmVhVXBkYXRlQ2h1bmsuaCIKKyNpbmNsdWRl
ICJDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCIKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAg
LTM0LDggKzM0LDggQEAgRHJhd2luZ0FyZWEqIERyYXdpbmdBcmVhOjpjcmVhdGUoVHlwZSB0eXBl
LCBXZWJQYWdlKiB3ZWJQYWdlKQogewogICAgIERyYXdpbmdBcmVhKiBkcmF3aW5nQXJlYSA9IDA7
CiAgICAgc3dpdGNoICh0eXBlKSB7Ci0gICAgICAgIGNhc2UgRHJhd2luZ0FyZWFVcGRhdGVDaHVu
a1R5cGU6Ci0gICAgICAgICAgICBkcmF3aW5nQXJlYSA9IG5ldyBEcmF3aW5nQXJlYVVwZGF0ZUNo
dW5rKHdlYlBhZ2UpOworICAgICAgICBjYXNlIENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVR5cGU6
CisgICAgICAgICAgICBkcmF3aW5nQXJlYSA9IG5ldyBDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWEo
d2ViUGFnZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmggYi9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9EcmF3aW5nQXJlYS5oCmluZGV4IDcwNmFjMDg3YWEyYmI4NDA0ZDllMmVhYmRmNWMz
ODJhM2EwMGQ0NzQuLjJkZWEzMjAwZmFhNmZiMWFjYTk3MmVhMTBlNmJjNjQ1ZWMwN2VlODcgMTAw
NjQ0Ci0tLSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmgKKysrIGIv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaApAQCAtNDYsNyArNDYsNyBA
QCBjbGFzcyBXZWJQYWdlOwogY2xhc3MgRHJhd2luZ0FyZWEgewogcHVibGljOgogICAgIGVudW0g
VHlwZSB7Ci0gICAgICAgIERyYXdpbmdBcmVhVXBkYXRlQ2h1bmtUeXBlCisgICAgICAgIENodW5r
ZWRVcGRhdGVEcmF3aW5nQXJlYVR5cGUKICAgICB9OwogCiAgICAgLy8gRklYTUU6IEl0IG1pZ2h0
IG1ha2Ugc2Vuc2UgdG8gbW92ZSB0aGlzIGNyZWF0ZSBmdW5jdGlvbiBpbnRvIGEgZmFjdG9yeSBz
dHlsZSBjbGFzcy4gCmRpZmYgLS1naXQgYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMv
RHJhd2luZ0FyZWFVcGRhdGVDaHVua01hYy5jcHAgYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhTWFjLmNwcApzaW1pbGFyaXR5IGluZGV4IDk1
JQpyZW5hbWUgZnJvbSBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvRHJhd2luZ0FyZWFV
cGRhdGVDaHVua01hYy5jcHAKcmVuYW1lIHRvIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21h
Yy9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFNYWMuY3BwCmluZGV4IDEzM2UzYmZjNDJiNzg3ZTEz
NTFmM2YxZDczZGNhNDVjYTdjOWNlNGQuLmRlYzAxYmZkYjI1NjQ3MzQxMWI0ZWZjOWU1ZGVkYmY2
NTAwY2M3YmMgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9EcmF3
aW5nQXJlYVVwZGF0ZUNodW5rTWFjLmNwcAorKysgYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhTWFjLmNwcApAQCAtMjMsNyArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNsdWRlICJEcmF3
aW5nQXJlYVVwZGF0ZUNodW5rLmgiCisjaW5jbHVkZSAiQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
LmgiCiAKICNpbmNsdWRlICJVcGRhdGVDaHVuay5oIgogI2luY2x1ZGUgIldlYlBhZ2UuaCIKQEAg
LTM0LDcgKzM0LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJL
aXQgewogCi12b2lkIERyYXdpbmdBcmVhVXBkYXRlQ2h1bms6OnBhaW50SW50b1VwZGF0ZUNodW5r
KFVwZGF0ZUNodW5rKiB1cGRhdGVDaHVuaykKK3ZvaWQgQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
OjpwYWludEludG9VcGRhdGVDaHVuayhVcGRhdGVDaHVuayogdXBkYXRlQ2h1bmspCiB7CiAgICAg
UmV0YWluUHRyPENHQ29sb3JTcGFjZVJlZj4gY29sb3JTcGFjZShBZG9wdENGLCBDR0NvbG9yU3Bh
Y2VDcmVhdGVEZXZpY2VSR0IoKSk7CiAgICAgUmV0YWluUHRyPENHQ29udGV4dFJlZj4gYml0bWFw
Q29udGV4dChBZG9wdENGLCBDR0JpdG1hcENvbnRleHRDcmVhdGUodXBkYXRlQ2h1bmstPmRhdGEo
KSwgdXBkYXRlQ2h1bmstPnJlY3QoKS53aWR0aCgpLCB1cGRhdGVDaHVuay0+cmVjdCgpLmhlaWdo
dCgpLCA4LCB1cGRhdGVDaHVuay0+cmVjdCgpLndpZHRoKCkgKiA0LCBjb2xvclNwYWNlLmdldCgp
LCBrQ0dJbWFnZUFscGhhUHJlbXVsdGlwbGllZExhc3QpKTsKZGlmZiAtLWdpdCBhL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL3dpbi9EcmF3aW5nQXJlYVVwZGF0ZUNodW5rV2luLmNwcCBiL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL3dpbi9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFXaW4u
Y3BwCnNpbWlsYXJpdHkgaW5kZXggOTUlCnJlbmFtZSBmcm9tIFdlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL3dpbi9EcmF3aW5nQXJlYVVwZGF0ZUNodW5rV2luLmNwcApyZW5hbWUgdG8gV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uvd2luL0NodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVdpbi5jcHAK
aW5kZXggNjNlZDMxOWM2NmZiYzRjZjA1Y2Q4ZTJmYTA3OWNkNGNmMjAxYWZkNS4uYWExZjk3NTIy
YzM3ODViYzc1NWNjMGUzMjY2ODc5MmMwMmJhZmJmYSAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2Uvd2luL0RyYXdpbmdBcmVhVXBkYXRlQ2h1bmtXaW4uY3BwCisrKyBiL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL3dpbi9DaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFXaW4u
Y3BwCkBAIC0yMyw3ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2luY2x1ZGUgIkRyYXdpbmdBcmVhVXBkYXRlQ2h1bmsuaCIKKyNpbmNsdWRlICJD
aHVua2VkVXBkYXRlRHJhd2luZ0FyZWEuaCIKIAogI2luY2x1ZGUgIlVwZGF0ZUNodW5rLmgiCiAj
aW5jbHVkZSAiV2ViUGFnZS5oIgpAQCAtMzQsNyArMzQsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLXZvaWQgRHJhd2luZ0FyZWFVcGRhdGVDaHVu
azo6cGFpbnRJbnRvVXBkYXRlQ2h1bmsoVXBkYXRlQ2h1bmsqIHVwZGF0ZUNodW5rKQordm9pZCBD
aHVua2VkVXBkYXRlRHJhd2luZ0FyZWE6OnBhaW50SW50b1VwZGF0ZUNodW5rKFVwZGF0ZUNodW5r
KiB1cGRhdGVDaHVuaykKIHsKICAgICBPd25QdHI8SERDPiBoZGMoOjpDcmVhdGVDb21wYXRpYmxl
REMoMCkpOwogCmRpZmYgLS1naXQgYS9XZWJLaXQyL3dpbi9XZWJLaXQyLnZjcHJvaiBiL1dlYktp
dDIvd2luL1dlYktpdDIudmNwcm9qCmluZGV4IDRkNTNhMjdjZWM2OTdhYzI3NmIyNTU5MWEyNTcx
NDRhMjgwMmFjNTAuLjNlOGZjZDc2NTg3YWQ3YmM3MmY0MzFhZmE2ZTI3ZDU0YTRlZjFjNzEgMTAw
NzU1Ci0tLSBhL1dlYktpdDIvd2luL1dlYktpdDIudmNwcm9qCisrKyBiL1dlYktpdDIvd2luL1dl
YktpdDIudmNwcm9qCkBAIC02NDMsMTEgKzY0MywxMSBAQAogCQkJCQk+DQogCQkJCTwvRmlsZT4N
CiAJCQkJPEZpbGUNCi0JCQkJCVJlbGF0aXZlUGF0aD0iLi5cV2ViUHJvY2Vzc1xXZWJQYWdlXERy
YXdpbmdBcmVhVXBkYXRlQ2h1bmsuY3BwIg0KKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxXZWJQcm9j
ZXNzXFdlYlBhZ2VcQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCINCiAJCQkJCT4NCiAJCQkJ
PC9GaWxlPg0KIAkJCQk8RmlsZQ0KLQkJCQkJUmVsYXRpdmVQYXRoPSIuLlxXZWJQcm9jZXNzXFdl
YlBhZ2VcRHJhd2luZ0FyZWFVcGRhdGVDaHVuay5oIg0KKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxX
ZWJQcm9jZXNzXFdlYlBhZ2VcQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmgiDQogCQkJCQk+DQog
CQkJCTwvRmlsZT4NCiAJCQkJPEZpbGUNCkBAIC02NzAsNyArNjcwLDcgQEAKIAkJCQkJTmFtZT0i
d2luIg0KIAkJCQkJPg0KIAkJCQkJPEZpbGUNCi0JCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXFdlYlBy
b2Nlc3NcV2ViUGFnZVx3aW5cRHJhd2luZ0FyZWFVcGRhdGVDaHVua1dpbi5jcHAiDQorCQkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxXZWJQcm9jZXNzXFdlYlBhZ2Vcd2luXENodW5rZWRVcGRhdGVEcmF3
aW5nQXJlYVdpbi5jcHAiDQogCQkJCQkJPg0KIAkJCQkJPC9GaWxlPg0KIAkJCQkJPEZpbGUNCkBA
IC03ODAsMTEgKzc4MCwxMSBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCi0JCQkJ
UmVsYXRpdmVQYXRoPSIuLlxVSVByb2Nlc3NcQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVhLmNwcCIN
CisJCQkJUmVsYXRpdmVQYXRoPSIuLlxVSVByb2Nlc3NcQ2h1bmtlZFVwZGF0ZURyYXdpbmdBcmVh
UHJveHkuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQotCQkJCVJlbGF0aXZl
UGF0aD0iLi5cVUlQcm9jZXNzXENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYS5oIg0KKwkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXFVJUHJvY2Vzc1xDaHVua2VkVXBkYXRlRHJhd2luZ0FyZWFQcm94eS5oIg0K
IAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQpAQCAtMTA4Nyw3ICsxMDg3LDcgQEAKIAkJ
CQlOYW1lPSJ3aW4iDQogCQkJCT4NCiAJCQkJPEZpbGUNCi0JCQkJCVJlbGF0aXZlUGF0aD0iLi5c
VUlQcm9jZXNzXHdpblxEcmF3aW5nQXJlYVByb3h5VXBkYXRlQ2h1bmtXaW4uY3BwIg0KKwkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxVSVByb2Nlc3Ncd2luXENodW5rZWRVcGRhdGVEcmF3aW5nQXJlYVBy
b3h5V2luLmNwcCINCiAJCQkJCT4NCiAJCQkJPC9GaWxlPg0KIAkJCQk8RmlsZQ0K
</data>
<flag name="review"
          id="46084"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>