<?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>219657</bug_id>
          
          <creation_ts>2020-12-08 14:45:21 -0800</creation_ts>
          <short_desc>[Concurrent Display Lists] Add a new type to represent a set of GPU process wakeup arguments</short_desc>
          <delta_ts>2020-12-08 17:15:48 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>218614</blocked>
    
    <blocked>219586</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>ggaren</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1712937</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-12-08 14:45:21 -0800</bug_when>
    <thetext>Some refactoring in preparation for larger changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712963</commentid>
    <comment_count>1</comment_count>
      <attachid>415686</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-12-08 16:03:53 -0800</bug_when>
    <thetext>Created attachment 415686
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712979</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-12-08 17:14:46 -0800</bug_when>
    <thetext>Committed r270564: &lt;https://trac.webkit.org/changeset/270564&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 415686.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712980</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-08 17:15:48 -0800</bug_when>
    <thetext>&lt;rdar://problem/72116447&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415686</attachid>
            <date>2020-12-08 16:03:53 -0800</date>
            <delta_ts>2020-12-08 17:14:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219657-20201208160353.patch</filename>
            <type>text/plain</type>
            <size>23499</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJkYmIzNTVhMWM0YjI0Nzhm
YWRkZmNiOTcyOWMxYjc1M2M2M2RjMDMuLjI3NTMxMmI5MjY1YWIzNzc5ZWJkZTZhYjFjOTBjZGIw
MmZkYWJmODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjAtMTItMDggIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbmN1cnJlbnQgRGlz
cGxheSBMaXN0c10gQWRkIGEgbmV3IHR5cGUgdG8gcmVwcmVzZW50IGEgc2V0IG9mIEdQVSBwcm9j
ZXNzIHdha2V1cCBhcmd1bWVudHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxOTY1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFB1bGwgdGhlIGluaXRpYWwgaXRlbSBidWZmZXIgaWRlbnRpZmllciwgb2Zm
c2V0LCBhbmQgZGVzdGluYXRpb24gaW1hZ2UgYnVmZmVyIGlkZW50aWZpZXIgdXNlZCB0byB3YWtl
IHRoZSBHUFUKKyAgICAgICAgcHJvY2VzcyBvdXQgaW50byBhIHNlcGFyYXRlIHN0cnVjdCwgaW4g
YEdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzLmhgLCBhbmQgcmVmYWN0b3IgYm90aCB0
aGUgd2ViIGFuZCBHUFUKKyAgICAgICAgcHJvY2Vzcy1zaWRlIHJlbmRlcmluZyBiYWNrZW5kcyB0
byB1c2UgdGhpcyBuZXcgc3RydWN0LgorCisgICAgICAgIFRoaXMgd2lsbCBncmVhdGx5IHNpbXBs
aWZ5IGZ1dHVyZSBsb2dpYyB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gYWRkcmVzcyA8d2Via2l0Lm9y
Zy9iLzIxODYxND4sIHdoaWNoIHJlcXVpcmVzIHVzCisgICAgICAgIHRvIGRlZmVyIGNhbGxpbmcg
aW50byB0aGUgR1BVIHByb2Nlc3Mgd2FrZXVwIGxvb3AgaW4gbW9yZSBzY2VuYXJpb3MuIE5vIGNo
YW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIEdQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3Rl
SW1hZ2VCdWZmZXIuaDoKKyAgICAgICAgKiBHUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRl
cmluZ0JhY2tlbmQuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5k
OjpuZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlckFmdGVyQXBwbHlpbmdEaXNwbGF5TGlzdHMpOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjp3YWtlVXBBbmRBcHBseURp
c3BsYXlMaXN0KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6c2V0
TmV4dEl0ZW1CdWZmZXJUb1JlYWQpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kOjpkaWRDcmVhdGVTaGFyZWREaXNwbGF5TGlzdEhhbmRsZSk6CisgICAgICAgICogR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmg6CisgICAgICAgICogR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIFNoYXJlZC9HUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oOiBBZGRlZC4K
KyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1dha2V1cE1lc3NhZ2VBcmd1bWVudHM6OmVuY29k
ZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1l
bnRzOjpkZWNvZGUpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tl
bmRQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94
eTo6c2VuZFdha2V1cE1lc3NhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL2dyYXBoaWNz
L1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5oOgorCiAyMDIwLTEyLTA4ICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFjT1NdIERlbnkgbWFjaC1s
b29rdXAgdG8gdGhlIHNlcnZpY2UgJ2NvbS5hcHBsZS5hc3NlcnRpb25kLnByb2Nlc3Nhc3NlcnRp
b25jb25uZWN0aW9uJyBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlSW1hZ2VCdWZmZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlci5oCmluZGV4IDVm
OTQyMDFiZTRhMzk5ZDg4NGUxYjI0MDczMzk0N2M2NmQxY2U4YTEuLjE2MmQyZWY5MGU1ZGNlNjJj
Y2IxNTU0NWM2ZDQ1NDVhZWRiNTgxM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVJbWFnZUJ1ZmZlci5oCkBAIC04Myw3ICs4Myw3IEBAIHBy
aXZhdGU6CiAKICAgICAgICAgaWYgKGl0ZW0uaXM8V2ViQ29yZTo6RGlzcGxheUxpc3Q6Ok1ldGFD
b21tYW5kQ2hhbmdlSXRlbUJ1ZmZlcj4oKSkgewogICAgICAgICAgICAgYXV0byBuZXh0QnVmZmVy
SWRlbnRpZmllciA9IGl0ZW0uZ2V0PFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpNZXRhQ29tbWFuZENo
YW5nZUl0ZW1CdWZmZXI+KCkuaWRlbnRpZmllcigpOwotICAgICAgICAgICAgbV9yZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kLnNldE5leHRJdGVtQnVmZmVyVG9SZWFkKG5leHRCdWZmZXJJZGVudGlmaWVy
KTsKKyAgICAgICAgICAgIG1fcmVtb3RlUmVuZGVyaW5nQmFja2VuZC5zZXROZXh0SXRlbUJ1ZmZl
clRvUmVhZChuZXh0QnVmZmVySWRlbnRpZmllciwgbV9yZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXIpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQu
Y3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0Jh
Y2tlbmQuY3BwCmluZGV4IDEzMWU5NTU1N2E5Y2UyMGMzYWNhYjAyZTJkOGI3MmU3ZGZmZGRiM2Uu
LjdiMTNhMWE5NDYxMTkwMTdkY2M2OWFhZWJiOTBlZjc0NWQzNTUzYjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5n
QmFja2VuZC5jcHAKQEAgLTE2MCw3ICsxNjAsNyBAQCBSZWZQdHI8SW1hZ2VCdWZmZXI+IFJlbW90
ZVJlbmRlcmluZ0JhY2tlbmQ6Om5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyQWZ0ZXJBcHBseQog
ICAgICAgICBzaXplVG9SZWFkID0gaGFuZGxlLnVucmVhZEJ5dGVzKCk7CiAgICAgfSB3aGlsZSAo
IXNpemVUb1JlYWQpOwogCi0gICAgd2hpbGUgKGRlc3RpbmF0aW9uICYmICFtX25leHRJdGVtQnVm
ZmVyVG9SZWFkKSB7CisgICAgd2hpbGUgKGRlc3RpbmF0aW9uKSB7CiAgICAgICAgIGF1dG8gZGlz
cGxheUxpc3QgPSBoYW5kbGUuZGlzcGxheUxpc3RGb3JSZWFkaW5nKG9mZnNldCwgc2l6ZVRvUmVh
ZCwgKnRoaXMpOwogICAgICAgICBpZiAoVU5MSUtFTFkoIWRpc3BsYXlMaXN0KSkgewogICAgICAg
ICAgICAgLy8gRklYTUU6IEFkZCBhIG1lc3NhZ2UgY2hlY2sgdG8gdGVybWluYXRlIHRoZSB3ZWIg
cHJvY2Vzcy4KQEAgLTE4Nyw4ICsxODcsMTYgQEAgUmVmUHRyPEltYWdlQnVmZmVyPiBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kOjpuZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlckFmdGVyQXBwbHkKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKHJlc3VsdC5yZWFzb25G
b3JTdG9wcGluZyA9PSBEaXNwbGF5TGlzdDo6U3RvcFJlcGxheVJlYXNvbjo6Q2hhbmdlRGVzdGlu
YXRpb25JbWFnZUJ1ZmZlcikKKyAgICAgICAgaWYgKHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9
PSBEaXNwbGF5TGlzdDo6U3RvcFJlcGxheVJlYXNvbjo6Q2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1
ZmZlcikgewogICAgICAgICAgICAgZGVzdGluYXRpb24gPSBtYWtlUmVmUHRyKG1fcmVtb3RlUmVz
b3VyY2VDYWNoZS5jYWNoZWRJbWFnZUJ1ZmZlcigqcmVzdWx0Lm5leHREZXN0aW5hdGlvbkltYWdl
QnVmZmVyKSk7CisgICAgICAgICAgICBpZiAoIWRlc3RpbmF0aW9uKSB7CisgICAgICAgICAgICAg
ICAgQVNTRVJUKCFtX3BlbmRpbmdXYWtldXBBcmd1bWVudHMpOworICAgICAgICAgICAgICAgIG1f
cGVuZGluZ1dha2V1cEFyZ3VtZW50cyA9IHt7IGhhbmRsZS5pZGVudGlmaWVyKCksIG9mZnNldCwg
KnJlc3VsdC5uZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlciB9fTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorCisgICAgICAgIGlmIChtX3BlbmRpbmdXYWtldXBBcmd1bWVudHMpCisgICAgICAg
ICAgICBicmVhazsKIAogICAgICAgICBpZiAoIXNpemVUb1JlYWQpCiAgICAgICAgICAgICBicmVh
azsKQEAgLTE5NywzMiArMjA1LDMxIEBAIFJlZlB0cjxJbWFnZUJ1ZmZlcj4gUmVtb3RlUmVuZGVy
aW5nQmFja2VuZDo6bmV4dERlc3RpbmF0aW9uSW1hZ2VCdWZmZXJBZnRlckFwcGx5CiAgICAgcmV0
dXJuIGRlc3RpbmF0aW9uOwogfQogCi12b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6Ondha2VV
cEFuZEFwcGx5RGlzcGxheUxpc3QoRGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVudGlmaWVyIGlu
aXRpYWxJZGVudGlmaWVyLCB1aW50NjRfdCBpbml0aWFsT2Zmc2V0LCBSZW5kZXJpbmdSZXNvdXJj
ZUlkZW50aWZpZXIgZGVzdGluYXRpb25CdWZmZXJJZGVudGlmaWVyKQordm9pZCBSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kOjp3YWtlVXBBbmRBcHBseURpc3BsYXlMaXN0KGNvbnN0IEdQVVByb2Nlc3NX
YWtldXBNZXNzYWdlQXJndW1lbnRzJiBhcmd1bWVudHMpCiB7CiAgICAgVHJhY2VTY29wZSB0cmFj
aW5nU2NvcGUoV2FrZVVwQW5kQXBwbHlEaXNwbGF5TGlzdFN0YXJ0LCBXYWtlVXBBbmRBcHBseURp
c3BsYXlMaXN0RW5kKTsKLSAgICBhdXRvIGRlc3RpbmF0aW9uSW1hZ2VCdWZmZXIgPSBtYWtlUmVm
UHRyKG1fcmVtb3RlUmVzb3VyY2VDYWNoZS5jYWNoZWRJbWFnZUJ1ZmZlcihkZXN0aW5hdGlvbkJ1
ZmZlcklkZW50aWZpZXIpKTsKKyAgICBhdXRvIGRlc3RpbmF0aW9uSW1hZ2VCdWZmZXIgPSBtYWtl
UmVmUHRyKG1fcmVtb3RlUmVzb3VyY2VDYWNoZS5jYWNoZWRJbWFnZUJ1ZmZlcihhcmd1bWVudHMu
ZGVzdGluYXRpb25JbWFnZUJ1ZmZlcklkZW50aWZpZXIpKTsKICAgICBpZiAoVU5MSUtFTFkoIWRl
c3RpbmF0aW9uSW1hZ2VCdWZmZXIpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBBZGQgYSBtZXNzYWdl
IGNoZWNrIHRvIHRlcm1pbmF0ZSB0aGUgd2ViIHByb2Nlc3MuCiAgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgYXV0byBpbml0aWFsSGFu
ZGxlID0gbV9zaGFyZWREaXNwbGF5TGlzdEhhbmRsZXMuZ2V0KGluaXRpYWxJZGVudGlmaWVyKTsK
KyAgICBhdXRvIGluaXRpYWxIYW5kbGUgPSBtX3NoYXJlZERpc3BsYXlMaXN0SGFuZGxlcy5nZXQo
YXJndW1lbnRzLml0ZW1CdWZmZXJJZGVudGlmaWVyKTsKICAgICBpZiAoVU5MSUtFTFkoIWluaXRp
YWxIYW5kbGUpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBBZGQgYSBtZXNzYWdlIGNoZWNrIHRvIHRl
cm1pbmF0ZSB0aGUgd2ViIHByb2Nlc3MuCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgZGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IG5l
eHREZXN0aW5hdGlvbkltYWdlQnVmZmVyQWZ0ZXJBcHBseWluZ0Rpc3BsYXlMaXN0cygqZGVzdGlu
YXRpb25JbWFnZUJ1ZmZlciwgaW5pdGlhbE9mZnNldCwgKmluaXRpYWxIYW5kbGUpOwotCisgICAg
ZGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IG5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyQWZ0ZXJB
cHBseWluZ0Rpc3BsYXlMaXN0cygqZGVzdGluYXRpb25JbWFnZUJ1ZmZlciwgYXJndW1lbnRzLm9m
ZnNldCwgKmluaXRpYWxIYW5kbGUpOwogICAgIGlmICghZGVzdGluYXRpb25JbWFnZUJ1ZmZlcikg
ewogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIHdoaWxlIChtX25leHRJdGVtQnVmZmVyVG9SZWFkKSB7Ci0gICAgICAgIGF1dG8gbmV4
dEhhbmRsZSA9IG1fc2hhcmVkRGlzcGxheUxpc3RIYW5kbGVzLmdldChtX25leHRJdGVtQnVmZmVy
VG9SZWFkKTsKKyAgICB3aGlsZSAobV9wZW5kaW5nV2FrZXVwQXJndW1lbnRzKSB7CisgICAgICAg
IGF1dG8gbmV4dEhhbmRsZSA9IG1fc2hhcmVkRGlzcGxheUxpc3RIYW5kbGVzLmdldChtX3BlbmRp
bmdXYWtldXBBcmd1bWVudHMtPml0ZW1CdWZmZXJJZGVudGlmaWVyKTsKICAgICAgICAgaWYgKCFu
ZXh0SGFuZGxlKSB7CiAgICAgICAgICAgICAvLyBJZiB0aGUgaGFuZGxlIGlkZW50aWZpZXIgaXMg
Y3VycmVudGx5IHVua25vd24sIHdhaXQgdW50aWwgdGhlIEdQVSBwcm9jZXNzIHJlY2VpdmVzIGFu
CiAgICAgICAgICAgICAvLyBJUEMgbWVzc2FnZSB3aXRoIGEgc2hhcmVkIG1lbW9yeSBoYW5kbGUg
dG8gdGhlIG5leHQgaXRlbSBidWZmZXIuCkBAIC0yMzAsOSArMjM3LDggQEAgdm9pZCBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kOjp3YWtlVXBBbmRBcHBseURpc3BsYXlMaXN0KERpc3BsYXlMaXN0OjpJ
dGVtQnVmZmVySWQKICAgICAgICAgfQogCiAgICAgICAgIC8vIE90aGVyd2lzZSwgY29udGludWUg
cmVhZGluZyB0aGUgbmV4dCBkaXNwbGF5IGxpc3QgaXRlbSBidWZmZXIgZnJvbSB0aGUgc3RhcnQu
Ci0gICAgICAgIG1fbmV4dEl0ZW1CdWZmZXJUb1JlYWQgPSB7IH07Ci0gICAgICAgIGRlc3RpbmF0
aW9uSW1hZ2VCdWZmZXIgPSBuZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlckFmdGVyQXBwbHlpbmdE
aXNwbGF5TGlzdHMoKmRlc3RpbmF0aW9uSW1hZ2VCdWZmZXIsIFNoYXJlZERpc3BsYXlMaXN0SGFu
ZGxlOjpoZWFkZXJTaXplKCksICpuZXh0SGFuZGxlKTsKLQorICAgICAgICBhdXRvIGFyZ3VtZW50
cyA9ICpzdGQ6OmV4Y2hhbmdlKG1fcGVuZGluZ1dha2V1cEFyZ3VtZW50cywgV1RGOjpudWxsb3B0
KTsKKyAgICAgICAgZGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IG5leHREZXN0aW5hdGlvbkltYWdl
QnVmZmVyQWZ0ZXJBcHBseWluZ0Rpc3BsYXlMaXN0cygqZGVzdGluYXRpb25JbWFnZUJ1ZmZlciwg
YXJndW1lbnRzLm9mZnNldCwgKm5leHRIYW5kbGUpOwogICAgICAgICBpZiAoIWRlc3RpbmF0aW9u
SW1hZ2VCdWZmZXIpIHsKICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAg
ICAgICAgcmV0dXJuOwpAQCAtMjQwLDE0ICsyNDYsMTQgQEAgdm9pZCBSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kOjp3YWtlVXBBbmRBcHBseURpc3BsYXlMaXN0KERpc3BsYXlMaXN0OjpJdGVtQnVmZmVy
SWQKICAgICB9CiB9CiAKLXZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6c2V0TmV4dEl0ZW1C
dWZmZXJUb1JlYWQoRGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVudGlmaWVyIGlkZW50aWZpZXIp
Cit2b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmQ6OnNldE5leHRJdGVtQnVmZmVyVG9SZWFkKERp
c3BsYXlMaXN0OjpJdGVtQnVmZmVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZW5k
ZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIgZGVzdGluYXRpb25JZGVudGlmaWVyKQogewotICAgIGlm
IChVTkxJS0VMWShtX25leHRJdGVtQnVmZmVyVG9SZWFkKSkgeworICAgIGlmIChVTkxJS0VMWSht
X3BlbmRpbmdXYWtldXBBcmd1bWVudHMpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBBZGQgYSBtZXNz
YWdlIGNoZWNrIHRvIHRlcm1pbmF0ZSB0aGUgd2ViIHByb2Nlc3MuCiAgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIG1fbmV4dEl0ZW1CdWZm
ZXJUb1JlYWQgPSBpZGVudGlmaWVyOworICAgIG1fcGVuZGluZ1dha2V1cEFyZ3VtZW50cyA9IHt7
IGlkZW50aWZpZXIsIFNoYXJlZERpc3BsYXlMaXN0SGFuZGxlOjpoZWFkZXJTaXplKCksIGRlc3Rp
bmF0aW9uSWRlbnRpZmllciB9fTsKIH0KIAogdm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpn
ZXRJbWFnZURhdGEoQWxwaGFQcmVtdWx0aXBsaWNhdGlvbiBvdXRwdXRGb3JtYXQsIEludFJlY3Qg
c3JjUmVjdCwgUmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIHJlbmRlcmluZ1Jlc291cmNlSWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChJUEM6OkltYWdlRGF0YVJlZmVyZW5jZSYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKQEAgLTI4MiwxMCArMjg4LDggQEAgdm9pZCBSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kOjpkaWRDcmVhdGVTaGFyZWREaXNwbGF5TGlzdEhhbmRsZShEaXNwbGF5
TGlzdDo6SXRlbUIKICAgICBpZiAoYXV0byBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6Om1h
cChoYW5kbGUuaGFuZGxlLCBTaGFyZWRNZW1vcnk6OlByb3RlY3Rpb246OlJlYWRXcml0ZSkpCiAg
ICAgICAgIG1fc2hhcmVkRGlzcGxheUxpc3RIYW5kbGVzLnNldChpZGVudGlmaWVyLCBEaXNwbGF5
TGlzdFJlYWRlckhhbmRsZTo6Y3JlYXRlKGlkZW50aWZpZXIsIHNoYXJlZE1lbW9yeS5yZWxlYXNl
Tm9uTnVsbCgpKSk7CiAKLSAgICBpZiAobV9uZXh0SXRlbUJ1ZmZlclRvUmVhZCA9PSBpZGVudGlm
aWVyKSB7Ci0gICAgICAgIG1fbmV4dEl0ZW1CdWZmZXJUb1JlYWQgPSB7IH07Ci0gICAgICAgIHdh
a2VVcEFuZEFwcGx5RGlzcGxheUxpc3QoaWRlbnRpZmllciwgU2hhcmVkRGlzcGxheUxpc3RIYW5k
bGU6OmhlYWRlclNpemUoKSwgZGVzdGluYXRpb25CdWZmZXJJZGVudGlmaWVyKTsKLSAgICB9Cisg
ICAgaWYgKG1fcGVuZGluZ1dha2V1cEFyZ3VtZW50cyAmJiBtX3BlbmRpbmdXYWtldXBBcmd1bWVu
dHMtPml0ZW1CdWZmZXJJZGVudGlmaWVyID09IGlkZW50aWZpZXIpCisgICAgICAgIHdha2VVcEFu
ZEFwcGx5RGlzcGxheUxpc3QoKnN0ZDo6ZXhjaGFuZ2UobV9wZW5kaW5nV2FrZXVwQXJndW1lbnRz
LCBXVEY6Om51bGxvcHQpKTsKIH0KIAogT3B0aW9uYWw8RGlzcGxheUxpc3Q6Okl0ZW1IYW5kbGU+
IFdBUk5fVU5VU0VEX1JFVFVSTiBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kOjpkZWNvZGVJdGVtKGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIHNpemVfdCBsZW5ndGgsIERpc3BsYXlMaXN0OjpJdGVtVHlwZSB0
eXBlLCB1aW50OF90KiBoYW5kbGVMb2NhdGlvbikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmggYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3MvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZC5oCmluZGV4IGUx
ZjM1MDk2YTNiZDU2NzdhMWJkNGIwYTFiMDQ3NDQ0YWViOTZlNmEuLjViNGEwYmI3OTY0OGUxZWU2
YjQ4NGRmYzNmMTU5ZTdlNGZiYTQ4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJv
Y2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQuaApAQCAtMjgsNiAr
MjgsNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKIAogI2luY2x1ZGUgIkNvbm5lY3Rpb24u
aCIKKyNpbmNsdWRlICJHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oIgogI2luY2x1
ZGUgIkltYWdlQnVmZmVyQmFja2VuZEhhbmRsZS5oIgogI2luY2x1ZGUgIkltYWdlRGF0YVJlZmVy
ZW5jZS5oIgogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgpAQCAtNzQsNyArNzUsNyBAQCBw
dWJsaWM6CiAgICAgdm9pZCBkaWRDcmVhdGVJbWFnZUJ1ZmZlckJhY2tlbmQoSW1hZ2VCdWZmZXJC
YWNrZW5kSGFuZGxlLCBXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIpOwogICAg
IHZvaWQgZGlkRmx1c2goV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkZsdXNoSWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKTsKIAotICAgIHZvaWQgc2V0TmV4dEl0
ZW1CdWZmZXJUb1JlYWQoV2ViQ29yZTo6RGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHNldE5leHRJdGVtQnVmZmVyVG9SZWFkKFdlYkNvcmU6OkRpc3BsYXlMaXN0
OjpJdGVtQnVmZmVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyIGRlc3RpbmF0aW9uKTsKIAogcHJpdmF0ZToKICAgICBSZW1vdGVSZW5kZXJpbmdCYWNrZW5k
KEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBSZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcik7
CkBAIC0xMDYsNyArMTA3LDcgQEAgcHJpdmF0ZToKIAogICAgIC8vIE1lc3NhZ2VzIHRvIGJlIHJl
Y2VpdmVkLgogICAgIHZvaWQgY3JlYXRlSW1hZ2VCdWZmZXIoY29uc3QgV2ViQ29yZTo6RmxvYXRT
aXplJiBsb2dpY2FsU2l6ZSwgV2ViQ29yZTo6UmVuZGVyaW5nTW9kZSwgZmxvYXQgcmVzb2x1dGlv
blNjYWxlLCBXZWJDb3JlOjpDb2xvclNwYWNlLCBXZWJDb3JlOjpQaXhlbEZvcm1hdCwgV2ViQ29y
ZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKTsKLSAgICB2b2lkIHdha2VVcEFuZEFwcGx5
RGlzcGxheUxpc3QoV2ViQ29yZTo6RGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVudGlmaWVyIGlu
aXRpYWxJZGVudGlmaWVyLCB1aW50NjRfdCBpbml0aWFsT2Zmc2V0LCBXZWJDb3JlOjpSZW5kZXJp
bmdSZXNvdXJjZUlkZW50aWZpZXIgZGVzdGluYXRpb25CdWZmZXJJZGVudGlmaWVyKTsKKyAgICB2
b2lkIHdha2VVcEFuZEFwcGx5RGlzcGxheUxpc3QoY29uc3QgR1BVUHJvY2Vzc1dha2V1cE1lc3Nh
Z2VBcmd1bWVudHMmKTsKICAgICB2b2lkIGdldEltYWdlRGF0YShXZWJDb3JlOjpBbHBoYVByZW11
bHRpcGxpY2F0aW9uIG91dHB1dEZvcm1hdCwgV2ViQ29yZTo6SW50UmVjdCBzcmNSZWN0LCBXZWJD
b3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
SVBDOjpJbWFnZURhdGFSZWZlcmVuY2UmJik+JiYpOwogICAgIHZvaWQgY2FjaGVOYXRpdmVJbWFn
ZShjb25zdCBTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSYsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291
cmNlSWRlbnRpZmllcik7CiAgICAgdm9pZCByZWxlYXNlUmVtb3RlUmVzb3VyY2UoV2ViQ29yZTo6
UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyKTsKQEAgLTExNiw3ICsxMTcsNyBAQCBwcml2YXRl
OgogICAgIFdlYWtQdHI8R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcz4gbV9ncHVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOwogICAgIFJlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyIG1fcmVuZGVyaW5n
QmFja2VuZElkZW50aWZpZXI7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpEaXNwbGF5TGlzdDo6SXRl
bUJ1ZmZlcklkZW50aWZpZXIsIFJlZlB0cjxEaXNwbGF5TGlzdFJlYWRlckhhbmRsZT4+IG1fc2hh
cmVkRGlzcGxheUxpc3RIYW5kbGVzOwotICAgIFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpJdGVtQnVm
ZmVySWRlbnRpZmllciBtX25leHRJdGVtQnVmZmVyVG9SZWFkOworICAgIE9wdGlvbmFsPEdQVVBy
b2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzPiBtX3BlbmRpbmdXYWtldXBBcmd1bWVudHM7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kLm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQubWVz
c2FnZXMuaW4KaW5kZXggZmVjOTZhMjI3ZGJmNTNjMDQ2MTBmZWU3ZWQ0MGMxM2ZhNDkxNGViOC4u
YWNlMzg2YzIzODcwZGE1OTA2OTUxYjJjZTQyMDM0YmE5NDJmOWQxMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmQubWVz
c2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJl
bmRlcmluZ0JhY2tlbmQubWVzc2FnZXMuaW4KQEAgLTI0LDcgKzI0LDcgQEAKIAogbWVzc2FnZXMg
LT4gUmVtb3RlUmVuZGVyaW5nQmFja2VuZCBOb3RSZWZDb3VudGVkIHsKICAgICBDcmVhdGVJbWFn
ZUJ1ZmZlcihXZWJDb3JlOjpGbG9hdFNpemUgbG9naWNhbFNpemUsIFdlYkNvcmU6OlJlbmRlcmlu
Z01vZGUgcmVuZGVyaW5nTW9kZSwgZmxvYXQgcmVzb2x1dGlvblNjYWxlLCBXZWJDb3JlOjpDb2xv
clNwYWNlIGNvbG9yU3BhY2UsIGVudW06dWludDhfdCBXZWJDb3JlOjpQaXhlbEZvcm1hdCBwaXhl
bEZvcm1hdCwgV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIHJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcikKLSAgICBXYWtlVXBBbmRBcHBseURpc3BsYXlMaXN0KFdlYkNvcmU6
OkRpc3BsYXlMaXN0OjpJdGVtQnVmZmVySWRlbnRpZmllciBpbml0aWFsSWRlbnRpZmllciwgdWlu
dDY0X3QgaW5pdGlhbE9mZnNldCwgV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVy
IGRlc3RpbmF0aW9uQnVmZmVySWRlbnRpZmllcikKKyAgICBXYWtlVXBBbmRBcHBseURpc3BsYXlM
aXN0KHN0cnVjdCBXZWJLaXQ6OkdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzIGFyZ3Vt
ZW50cykKICAgICBHZXRJbWFnZURhdGEoZW51bTp1aW50OF90IFdlYkNvcmU6OkFscGhhUHJlbXVs
dGlwbGljYXRpb24gb3V0cHV0Rm9ybWF0LCBXZWJDb3JlOjpJbnRSZWN0IHNyY1JlY3QsIFdlYkNv
cmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllciByZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZp
ZXIpIC0+IChJUEM6OkltYWdlRGF0YVJlZmVyZW5jZSBpbWFnZURhdGEpIFN5bmNocm9ub3VzCiAg
ICAgQ2FjaGVOYXRpdmVJbWFnZShXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlIGhhbmRs
ZSwgV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIHJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllcikKICAgICBEaWRDcmVhdGVTaGFyZWREaXNwbGF5TGlzdEhhbmRsZShXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6SXRlbUJ1ZmZlcklkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpT
aGFyZWRNZW1vcnk6OklQQ0hhbmRsZSBoYW5kbGUsIFdlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNl
SWRlbnRpZmllciBkZXN0aW5hdGlvbkJ1ZmZlcklkZW50aWZpZXIpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9HUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvR1BVUHJvY2Vzc1dha2V1cE1lc3NhZ2VBcmd1bWVudHMuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43MWI5MGRlMjE4MDA5MWVkMDkxZGE1YzBhYzE1MzQzYzU1NjcyNmNmCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvR1BVUHJvY2Vzc1dha2V1cE1lc3NhZ2VB
cmd1bWVudHMuaApAQCAtMCwwICsxLDc1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisKKyNpbmNsdWRlIDxXZWJDb3JlL0Rpc3BsYXlMaXN0
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK3N0cnVjdCBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3Vt
ZW50cyB7CisgICAgV2ViQ29yZTo6RGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVudGlmaWVyIGl0
ZW1CdWZmZXJJZGVudGlmaWVyOworICAgIHVpbnQ2NF90IG9mZnNldCB7IDAgfTsKKyAgICBXZWJD
b3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIgZGVzdGluYXRpb25JbWFnZUJ1ZmZlcklk
ZW50aWZpZXI7CisKKyAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNv
ZGVyJikgY29uc3Q7CisgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9wdGlvbmFs
PEdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzPiBkZWNvZGUoRGVjb2RlciYpOworfTsK
KwordGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4KK3ZvaWQgR1BVUHJvY2Vzc1dha2V1cE1lc3NhZ2VB
cmd1bWVudHM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAoreworICAgIGVuY29kZXIg
PDwgaXRlbUJ1ZmZlcklkZW50aWZpZXI7CisgICAgZW5jb2RlciA8PCBvZmZzZXQ7CisgICAgZW5j
b2RlciA8PCBkZXN0aW5hdGlvbkltYWdlQnVmZmVySWRlbnRpZmllcjsKK30KKwordGVtcGxhdGU8
Y2xhc3MgRGVjb2Rlcj4KK09wdGlvbmFsPEdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRz
PiBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50czo6ZGVjb2RlKERlY29kZXImIGRlY29k
ZXIpCit7CisgICAgT3B0aW9uYWw8V2ViQ29yZTo6RGlzcGxheUxpc3Q6Okl0ZW1CdWZmZXJJZGVu
dGlmaWVyPiBpdGVtQnVmZmVySWRlbnRpZmllcjsKKyAgICBkZWNvZGVyID4+IGl0ZW1CdWZmZXJJ
ZGVudGlmaWVyOworICAgIGlmICghaXRlbUJ1ZmZlcklkZW50aWZpZXIpCisgICAgICAgIHJldHVy
biBXVEY6Om51bGxvcHQ7CisKKyAgICBPcHRpb25hbDx1aW50NjRfdD4gb2Zmc2V0OworICAgIGRl
Y29kZXIgPj4gb2Zmc2V0OworICAgIGlmICghb2Zmc2V0KQorICAgICAgICByZXR1cm4gV1RGOjpu
dWxsb3B0OworCisgICAgT3B0aW9uYWw8V2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlm
aWVyPiBkZXN0aW5hdGlvbkltYWdlQnVmZmVySWRlbnRpZmllcjsKKyAgICBkZWNvZGVyID4+IGRl
c3RpbmF0aW9uSW1hZ2VCdWZmZXJJZGVudGlmaWVyOworICAgIGlmICghZGVzdGluYXRpb25JbWFn
ZUJ1ZmZlcklkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBy
ZXR1cm4ge3sgKml0ZW1CdWZmZXJJZGVudGlmaWVyLCAqb2Zmc2V0LCAqZGVzdGluYXRpb25JbWFn
ZUJ1ZmZlcklkZW50aWZpZXIgfX07Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5k
aWYgLy8gRU5BQkxFKEdQVV9QUk9DRVNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYWUzYjQzZTVjMTc0NzEwMTQ0NTU4NzlhNzU5ZmQ0
MGQ2YzE1ZGExNC4uYWVlZjQxZjMzMmNiNTE5Y2RiMmQ5ODJhZTJiOTg4OWQ5MGQwNWI1NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0x
OTM3LDYgKzE5MzcsNyBAQAogCQlGNDA5NENCRDI1NTMwNTNEMDAzRDczRTMgLyogRGlzcGxheUxp
c3RSZWFkZXJIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEY0MDk0Q0JCMjU1MzA0QUYwMDNENzNFMyAvKiBEaXNwbGF5TGlzdFJlYWRlckhhbmRs
ZS5oICovOyB9OwogCQlGNDA5NENCRTI1NTMwNTQwMDAzRDczRTMgLyogRGlzcGxheUxpc3RXcml0
ZXJIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEY0MDk0Q0I5MjU1MzA0N0UwMDNENzNFMyAvKiBEaXNwbGF5TGlzdFdyaXRlckhhbmRsZS5oICov
OyB9OwogCQlGNDA5QkExODFFNkU2NEJDMDA5REEyOEUgLyogV0tEcmFnRGVzdGluYXRpb25BY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0MDlC
QTE3MUU2RTY0QjMwMDlEQTI4RSAvKiBXS0RyYWdEZXN0aW5hdGlvbkFjdGlvbi5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0MEJCQjQxMjU3RkY0
NkUwMDY3NDYzQSAvKiBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQwQkJCNDAyNTdGRjQ2RTAw
Njc0NjNBIC8qIEdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzLmggKi87IH07CiAJCUY0
MkQ2MzQxMjJBMEVGREYwMEQyRkIzQSAvKiBXZWJBdXRvY29ycmVjdGlvbkRhdGEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0MkQ2MzNGMjJBMEVGRDMw
MEQyRkIzQSAvKiBXZWJBdXRvY29ycmVjdGlvbkRhdGEuaCAqLzsgfTsKIAkJRjQzMEU5NDIyMjQ3
MzM1RjAwNUZFMDUzIC8qIFdlYnNpdGVNZXRhVmlld3BvcnRQb2xpY3kuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0MzBFOTQxMjI0NzMyQTkwMDVGRTA1
MyAvKiBXZWJzaXRlTWV0YVZpZXdwb3J0UG9saWN5LmggKi87IH07CiAJCUY0MzBFOTQ0MjI0NzNE
RkYwMDVGRTA1MyAvKiBXZWJDb250ZW50TW9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjQzMEU5NDMyMjQ3M0RCODAwNUZFMDUzIC8qIFdlYkNvbnRl
bnRNb2RlLmggKi87IH07CkBAIC01NjIxLDYgKzU2MjIsNyBAQAogCQlGNDA5NENCQjI1NTMwNEFG
MDAzRDczRTMgLyogRGlzcGxheUxpc3RSZWFkZXJIYW5kbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlz
cGxheUxpc3RSZWFkZXJIYW5kbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjQw
OTRDQkMyNTUzMDRBRjAwM0Q3M0UzIC8qIERpc3BsYXlMaXN0UmVhZGVySGFuZGxlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IERpc3BsYXlMaXN0UmVhZGVySGFuZGxlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRjQwOUJBMTcxRTZFNjRCMzAwOURBMjhFIC8qIFdLRHJhZ0Rlc3Rp
bmF0aW9uQWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLRHJhZ0Rl
c3RpbmF0aW9uQWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0MEJCQjQw
MjU3RkY0NkUwMDY3NDYzQSAvKiBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGNDBEMUI2ODIyMEJEQzBGMDBCNDlBMDEgLyogV2ViQXV0
b2NvcnJlY3Rpb25Db250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdlYkF1dG9jb3JyZWN0aW9uQ29u
dGV4dC5oOyBwYXRoID0gaW9zL1dlYkF1dG9jb3JyZWN0aW9uQ29udGV4dC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlGNDEwNTY2MTIxMzA2OTlBMDA5MjI4MUQgLyogQVBJQXR0YWNo
bWVudENvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQVBJQXR0YWNobWVudENvY29hLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDJENjMzRjIyQTBFRkQzMDBEMkZCM0Eg
LyogV2ViQXV0b2NvcnJlY3Rpb25EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IFdlYkF1dG9jb3JyZWN0aW9uRGF0YS5oOyBwYXRoID0gaW9zL1dlYkF1dG9jb3JyZWN0aW9u
RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjMyNCw2ICs2MzI2LDcgQEAK
IAkJCQkxQTE0RjhERjFENzRDODM0MDA2Q0JFQzYgLyogRnJhbWVJbmZvRGF0YS5jcHAgKi8sCiAJ
CQkJMUExNEY4RTAxRDc0QzgzNDAwNkNCRUM2IC8qIEZyYW1lSW5mb0RhdGEuaCAqLywKIAkJCQk1
QzEyMUU4MzI0MTAxRjcwMDA0ODZGOUIgLyogRnJhbWVUcmVlTm9kZURhdGEuaCAqLywKKwkJCQlG
NDBCQkI0MDI1N0ZGNDZFMDA2NzQ2M0EgLyogR1BVUHJvY2Vzc1dha2V1cE1lc3NhZ2VBcmd1bWVu
dHMuaCAqLywKIAkJCQkxQUM3NUExQTFCMzM2ODI3MDA1Njc0NUIgLyogSGFuZ0RldGVjdGlvbkRp
c2FibGVyLmggKi8sCiAJCQkJQkNDRjZCMjMxMkM5M0U3QTAwOEY5QzM1IC8qIEltYWdlT3B0aW9u
cy5oICovLAogCQkJCTk5OUI3RUQ4MjU1MEU0QTgwMEY0NTBBNCAvKiBJbnNwZWN0b3JFeHRlbnNp
b25UeXBlcy5jcHAgKi8sCkBAIC0xMTMzNyw2ICsxMTM0MCw3IEBACiAJCQkJQkMwNkY0NEExMkRC
RDFGNTAwMkQ3OERFIC8qIEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHku
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDMDZGNDNBMTJEQkNDRkIwMDJENzhERSAvKiBHZW9sb2Nh
dGlvblBlcm1pc3Npb25SZXF1ZXN0UHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTJEQTk0NEE0
MTg4NEU0RjAwMEVEODZEQiAvKiBHZXN0dXJlVHlwZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0
MEJCQjQxMjU3RkY0NkUwMDY3NDYzQSAvKiBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkRBMDQ5QjgxODBDQ0QwQTAwQUFGQTlFIC8qIEdyYXBo
aWNzTGF5ZXJDQVJlbW90ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzBDRTcyQUQxMjQ3RTc4RDAw
QkMwRUM0IC8qIEhhbmRsZU1lc3NhZ2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQzc1QTFCMUIz
MzY4MjcwMDU2NzQ1QiAvKiBIYW5nRGV0ZWN0aW9uRGlzYWJsZXIuaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9n
cmFwaGljcy9SZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuY3BwCmluZGV4IDExNGFjNjViMTYy
ZmQ1MzA4OGU0ZTRlZjQ1MTkwMmJkZWViMGZmNzAuLmY2MzExMzVhZmM4ZWZmNjYxOTMwYzc1YWI1
ZWQxZTExZTI1MjM1ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
Z3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5j
cHAKQEAgLTE5NSw5ICsxOTUsOSBAQCB2b2lkIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTo6
d2lsbEFwcGVuZEl0ZW0oUmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyIG5ldwogICAgICAgICBp
bWFnZUJ1ZmZlci0+Y2xlYXJEaXNwbGF5TGlzdCgpOwogfQogCi12b2lkIFJlbW90ZVJlbmRlcmlu
Z0JhY2tlbmRQcm94eTo6c2VuZFdha2V1cE1lc3NhZ2UoY29uc3QgV2FrZXVwTWVzc2FnZUFyZ3Vt
ZW50cyYgYXJndW1lbnRzKQordm9pZCBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHk6OnNlbmRX
YWtldXBNZXNzYWdlKGNvbnN0IEdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzJiBhcmd1
bWVudHMpCiB7Ci0gICAgc2VuZChNZXNzYWdlczo6UmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6V2Fr
ZVVwQW5kQXBwbHlEaXNwbGF5TGlzdChhcmd1bWVudHMuaXRlbUJ1ZmZlcklkZW50aWZpZXIsIGFy
Z3VtZW50cy5pbml0aWFsT2Zmc2V0LCBhcmd1bWVudHMuaW1hZ2VCdWZmZXJJZGVudGlmaWVyKSwg
bV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllcik7CisgICAgc2VuZChNZXNzYWdlczo6UmVtb3Rl
UmVuZGVyaW5nQmFja2VuZDo6V2FrZVVwQW5kQXBwbHlEaXNwbGF5TGlzdChhcmd1bWVudHMpLCBt
X3JlbmRlcmluZ0JhY2tlbmRJZGVudGlmaWVyKTsKIH0KIAogdm9pZCBSZW1vdGVSZW5kZXJpbmdC
YWNrZW5kUHJveHk6OnNlbmREZWZlcnJlZFdha2V1cE1lc3NhZ2VJZk5lZWRlZCgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZVJlbmRlcmlu
Z0JhY2tlbmRQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9S
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkuaAppbmRleCAzN2E0Y2ViN2E4MjhiMDUwOTdiZDMz
NDkxNTI4Y2E5ZDVjYzM5OWM4Li5lMDgxNWRmNzU4ZWE1MjI2YzhhZmE2NWNkMjZlNjlhZGFmOTQw
MDdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1Jl
bW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvZ3JhcGhpY3MvUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LmgKQEAgLTI4LDYgKzI4
LDcgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCiAKICNpbmNsdWRlICJHUFVQcm9jZXNzQ29u
bmVjdGlvbi5oIgorI2luY2x1ZGUgIkdQVVByb2Nlc3NXYWtldXBNZXNzYWdlQXJndW1lbnRzLmgi
CiAjaW5jbHVkZSAiSW1hZ2VCdWZmZXJCYWNrZW5kSGFuZGxlLmgiCiAjaW5jbHVkZSAiTWVzc2Fn
ZVJlY2VpdmVyLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVNlbmRlci5oIgpAQCAtMTAyLDIwICsxMDMs
MTQgQEAgcHJpdmF0ZToKIAogICAgIFJlZlB0cjxEaXNwbGF5TGlzdFdyaXRlckhhbmRsZT4gZmlu
ZFJldXNhYmxlRGlzcGxheUxpc3RIYW5kbGUoc2l6ZV90IGNhcGFjaXR5KTsKIAotICAgIHN0cnVj
dCBXYWtldXBNZXNzYWdlQXJndW1lbnRzIHsKLSAgICAgICAgV2ViQ29yZTo6RGlzcGxheUxpc3Q6
Okl0ZW1CdWZmZXJJZGVudGlmaWVyIGl0ZW1CdWZmZXJJZGVudGlmaWVyOwotICAgICAgICBzaXpl
X3QgaW5pdGlhbE9mZnNldDsKLSAgICAgICAgV2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVu
dGlmaWVyIGltYWdlQnVmZmVySWRlbnRpZmllcjsKLSAgICB9OwotCi0gICAgdm9pZCBzZW5kV2Fr
ZXVwTWVzc2FnZShjb25zdCBXYWtldXBNZXNzYWdlQXJndW1lbnRzJik7CisgICAgdm9pZCBzZW5k
V2FrZXVwTWVzc2FnZShjb25zdCBHUFVQcm9jZXNzV2FrZXVwTWVzc2FnZUFyZ3VtZW50cyYpOwog
CiAgICAgUmVtb3RlUmVzb3VyY2VDYWNoZVByb3h5IG1fcmVtb3RlUmVzb3VyY2VDYWNoZVByb3h5
IHsgKnRoaXMgfTsKICAgICBIYXNoTWFwPFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpJdGVtQnVmZmVy
SWRlbnRpZmllciwgUmVmUHRyPERpc3BsYXlMaXN0V3JpdGVySGFuZGxlPj4gbV9zaGFyZWREaXNw
bGF5TGlzdEhhbmRsZXM7CiAgICAgRGVxdWU8V2ViQ29yZTo6RGlzcGxheUxpc3Q6Okl0ZW1CdWZm
ZXJJZGVudGlmaWVyPiBtX2lkZW50aWZpZXJzT2ZSZXVzYWJsZUhhbmRsZXM7CiAgICAgUmVuZGVy
aW5nQmFja2VuZElkZW50aWZpZXIgbV9yZW5kZXJpbmdCYWNrZW5kSWRlbnRpZmllciB7IFJlbmRl
cmluZ0JhY2tlbmRJZGVudGlmaWVyOjpnZW5lcmF0ZSgpIH07CiAgICAgT3B0aW9uYWw8V2ViQ29y
ZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyPiBtX2N1cnJlbnREZXN0aW5hdGlvbkltYWdl
QnVmZmVySWRlbnRpZmllcjsKLSAgICBPcHRpb25hbDxXYWtldXBNZXNzYWdlQXJndW1lbnRzPiBt
X2RlZmVycmVkV2FrZXVwTWVzc2FnZUFyZ3VtZW50czsKKyAgICBPcHRpb25hbDxHUFVQcm9jZXNz
V2FrZXVwTWVzc2FnZUFyZ3VtZW50cz4gbV9kZWZlcnJlZFdha2V1cE1lc3NhZ2VBcmd1bWVudHM7
CiAgICAgdW5zaWduZWQgbV9yZW1haW5pbmdJdGVtc1RvQXBwZW5kQmVmb3JlU2VuZGluZ1dha2V1
cCB7IDAgfTsKIH07CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>