<?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>67432</bug_id>
          
          <creation_ts>2011-09-01 13:42:50 -0700</creation_ts>
          <short_desc>implement -webkit-flex-order</short_desc>
          <delta_ts>2011-09-27 13:15:09 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>62048</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>eoconnor</cc>
    
    <cc>hyatt</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>460747</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-09-01 13:42:50 -0700</bug_when>
    <thetext>implement -webkit-flex-order</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>460752</commentid>
    <comment_count>1</comment_count>
      <attachid>106020</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-09-01 13:46:22 -0700</bug_when>
    <thetext>Created attachment 106020
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>460792</commentid>
    <comment_count>2</comment_count>
      <attachid>106020</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-09-01 14:33:33 -0700</bug_when>
    <thetext>Comment on attachment 106020
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=106020&amp;action=review

Just a tiny nit from me.

&gt; LayoutTests/css3/flexbox/flex-order.html:9
&gt; +.horizontal-box div {
&gt; +    height: 30px;
&gt; +    border: 0;

The pixel output from this test would be easier to make sense of if there were some padding between the horizontal-boxen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461253</commentid>
    <comment_count>3</comment_count>
      <attachid>106140</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-09-02 09:27:11 -0700</bug_when>
    <thetext>Created attachment 106140
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470950</commentid>
    <comment_count>4</comment_count>
      <attachid>108184</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-09-21 11:06:40 -0700</bug_when>
    <thetext>Created attachment 108184
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470978</commentid>
    <comment_count>5</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-09-21 11:24:03 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created an attachment (id=108184) [details]
&gt; Patch

Rebased to after the logical positional fixes (just renames for this code).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>472068</commentid>
    <comment_count>6</comment_count>
      <attachid>108184</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-22 21:53:50 -0700</bug_when>
    <thetext>Comment on attachment 108184
Patch

Clearing flags on attachment: 108184

Committed r95783: &lt;http://trac.webkit.org/changeset/95783&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>472069</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-22 21:53:54 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106020</attachid>
            <date>2011-09-01 13:46:22 -0700</date>
            <delta_ts>2011-09-02 09:27:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67432-20110901134518.patch</filename>
            <type>text/plain</type>
            <size>19383</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTQzMzIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjNWY1ZGMwZDIwMGM5MGQ2ZGY4Y2Rk
YTFjYzRkOWZhNmRkMTdiNzAzLi5hMTI0YmQ5YWEyMTgzODUzNDVjZDk3ZTVmNTU3NmZhMTgwNWIy
Njg1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMDEgIFRvbnkgQ2hhbmcgIDx0b255
QGNocm9taXVtLm9yZz4KKworICAgICAgICBpbXBsZW1lbnQgLXdlYmtpdC1mbGV4LW9yZGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzQzMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9mbGV4
Ym94L2ZsZXgtb3JkZXItZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2ZsZXhi
b3gvZmxleC1vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvZmxleGJv
eC9mbGV4LW9yZGVyLmh0bWw6IEFkZGVkLgorCiAyMDExLTA5LTAxICBLdWxhbnRoYWl2ZWwgUGFs
YW5pY2hhbXkgIDxrdWxhbnRoYWl2ZWxAY29kZWF1cm9yYS5vcmc+CiAKICAgICAgICAgRm9jdXMg
cmluZyBpcyByZW5kZXJlZCBpbmNvcnJlY3RseSBmb3IgYSBibG9jayB3aXRoIC13ZWJraXQtd3Jp
dGluZy1tb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRl
ci1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRlci1leHBl
Y3RlZC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uM2NlNDFiYjg1ZjNiNTAwM2NkNjY3YTlhOGQxMjBhZmNkZDcz
OGQ1ZApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMjg2Mgp6Y21lQVNATj8ob2xIeWB1VkJxIWlh
MHl+eVV7K3ZZVjJhPmkwKlopPWheaGxBJUBXcyRsSGBvazxtfT9vVG1+WnAKelE7UzRIdnlAfkR2
czRRYzZPJStFKF99K3FRJHFfQUxqJHVFVzg7I3k9PmlONFRuOVd8OTc4SlJ5dUFefmNfY3U5Cno8
KUYkeCl3ISprMSs/fG1xe09DYXYzfGFKcmdrb08pJSEwRFZaVkkmNlBFdH0hZUNhbGpHY2lZTXxs
R1NMbFA0PQp6Z00hKjlWPkEjKFFeSUkyN3xqSmw9WXEyTiNtbWVZN31oKkckaSZkV3NsKDdQPEc/
Nm1HIVJCcCFlfWxTJT5eWG8KYWc0KGhKKyhQOVd4JjhxZ3p6bStRZWxGe3I1fUUqKyEtJGFwCgps
aXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhi
b3gvZmxleC1vcmRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxl
eC1vcmRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIxMzc4OTE3OTFmZTk2OTI3YWQ3OGU2
NGIwYWFkN2JkZWQwOGJkYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmxl
eGJveC9mbGV4LW9yZGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZsZXhib3gvZmxleC1vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5M2IyZWFlZDllODYwYjc4
YTllMGIwZmM2NjgzNjM3YzNiMDEyNDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZsZXhib3gvZmxleC1vcmRlci5odG1sCkBAIC0wLDAgKzEsMTEzIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPHN0eWxlPgorYm9keSB7CisgICAgbWFyZ2luOiAwOworfQorLmhvcml6
b250YWwtYm94IGRpdiB7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGJvcmRlcjogMDsKK30KKwor
LmZpcnN0IHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwOworfQorLnNlY29uZCB7CisgICAg
YmFja2dyb3VuZC1jb2xvcjogIzBkMDsKK30KKy50aGlyZCB7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogIzA5MDsKK30KKy5mb3VydGggeworICAgIGJhY2tncm91bmQtY29sb3I6ICMwNjA7Cit9Cisu
ZmlmdGggeworICAgIGJhY2tncm91bmQtY29sb3I6ICMwMzA7Cit9Cis8L3N0eWxlPgorPHNjcmlw
dD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCh0cnVlKTsKKzwvc2NyaXB0PgorPGJvZHk+CisKKzwhLS0gQWxsIHRo
ZXNlIHNob3VsZCBkaXNwbGF5IGEgZ3JlZW4gYmFyIGdvaW5nIGZyb20gbGlnaHQgZ3JlZW4gdG8g
ZGFyayBncmVlbi4gLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNs
YXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMSI+PC9kaXY+CisgIDxkaXYg
Y2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7Ij48L2Rpdj4KKyAg
PGRpdiBjbGFzcz0idGhpcmQiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtp
dC1mbGV4LW9yZGVyOiAzIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0iZm91cnRoIiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyMCI+PC9kaXY+Cis8L2Rp
dj4KKworPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpv
bnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1m
bGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDQiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGly
ZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDMi
PjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4
KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIg
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDEiPjwv
ZGl2PgorPC9kaXY+CisKKzwhLS0gVGhlIGV4YW1wbGUgZnJvbSB0aGUgc3BlYy4gLS0+Cis8ZGl2
IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+
CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13
ZWJraXQtZmxleC1vcmRlcjogMiI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9
IndpZHRoOiAtd2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIiPjwvZGl2
PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAt
d2Via2l0LWZsZXgtb3JkZXI6IDEiPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgc3R5bGU9ImRpc3Bs
YXk6IC13ZWJraXQtZmxleGJveCIgY2xhc3M9Imhvcml6b250YWwtYm94Ij4KKyAgPGRpdiBjbGFz
cz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9y
ZGVyOiAyIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtZmxleCgxKSI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0
aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IC0xMCI+PC9kaXY+Cis8L2Rp
dj4KKworPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpv
bnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1m
bGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIwMDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNs
YXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgt
b3JkZXI6IDEwMDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3
aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDEwMDAwMDAwMDAiPjwv
ZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEp
OyAtd2Via2l0LWZsZXgtb3JkZXI6IC0xMDAwMDAwMDAwIj48L2Rpdj4KKzwvZGl2PgorCis8IS0t
IEZsb2F0aW5nIG51bWJlcnMgYXJlIGlnbm9yZWQgYW5kIHdlIHVzZSB0aGUgZGVmYXVsdCBvZiAx
IGluc3RlYWQuIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFz
cz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIuNSI+PC9kaXY+CisgIDxkaXYg
Y2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxl
eC1vcmRlcjogMiI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogLTEiPjwvZGl2PgorICA8ZGl2IGNs
YXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKzwvZGl2
PgorCis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9u
dGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZs
ZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAtMSI+
PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgo
MSk7IC13ZWJraXQtZmxleC1vcmRlcjogMSI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIg
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFZh
bHVlcyBncmVhdGVyIHRoYW4gd2hhdCBjYW4gYmUgc3RvcmVkIGluIGFuIGludCBhcmUgY2xhbXBl
ZCBmcm9tCisgICAgIC0yLDE0Nyw0ODMsNjQ2IChpbnQgbWluICsgMikgdG8gMiwxNDcsNDgzLDY0
Ny4gLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jp
em9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogNDAwMDAwMDAwMCI+PC9kaXY+CisgIDxkaXYg
Y2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxl
eC1vcmRlcjogMzAwMDAwMDAwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9
IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyMTQ3NDgz
NjQ2Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhi
b3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InNlY29uZCIgc3R5bGU9
IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogNDAwMDAwMDAwMCI+
PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgo
MSk7IC13ZWJraXQtZmxleC1vcmRlcjogMzAwMDAwMDAwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9
ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7Ij48L2Rpdj4KKyAgPGRpdiBj
bGFzcz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4
LW9yZGVyOiAyMTQ3NDgzNjQ3Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJkaXNwbGF5
OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9
InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRl
cjogLTIxNDc0ODM2NDUiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0
aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IC0yMTQ3NDgzNjQ2Ij48L2Rp
dj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsg
LXdlYmtpdC1mbGV4LW9yZGVyOiAtMjE0NzQ4MzY0NyI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZv
dXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7Ij48L2Rpdj4KKzwvZGl2PgorCis8
IS0tIFRoaXMgc2hvdWxkIG5vdCBjcmFzaC4gLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Vi
a2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+PC9kaXY+CisKKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCBhZmE4NzgxMGE4Y2JjMmVhMzZkN2Q2ZmJhMWRjZTk5ODBjNTI1
OGVlLi5jNjk1NjMwZDJmMzI2NGUxNzA1YzZlNDA3NjVlMzQ3YzAyZGFjZWFlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDktMDEgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBpbXBsZW1lbnQgLXdlYmtpdC1mbGV4LW9yZGVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzQzMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZsZXgtb3JkZXIgY2FuIGJlIGFu
IGludCAoaW5jbHVkaW5nIG5lZ2F0aXZlKSwgYnV0IHdlIGRpc2FsbG93IHRoZSB0d28KKyAgICAg
ICAgc21hbGxlc3QgdmFsdWVzIHNvIHdlIGNhbiBwdXQgdGhlIG51bWJlcnMgaW50byBhIGhhc2gg
c2V0LgorCisgICAgICAgIEFsc28sIGNyZWF0ZSB0d28gaXRlcmF0b3JzOiBvbmUgdGhhdCBnb2Vz
IGluIHJlbmRlciB0cmVlIG9yZGVyICh3ZSB1c2UKKyAgICAgICAgdGhpcyBmb3IgdGhlIGZpcnN0
IHBhc3MgYW5kIHRvIGNvbGxlY3QgdGhlIHBvc3NpYmxlIGZsZXggb3JkZXIgdmFsdWVzKQorICAg
ICAgICBhbmQgb25lIHRoYXQgZ29lcyBpbiBmbGV4IG9yZGVyLgorCisgICAgICAgIFRlc3Q6IGNz
czMvZmxleGJveC9mbGV4LW9yZGVyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZhbHVlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6RmxleE9y
ZGVySGFzaFRyYWl0czo6ZW1wdHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpGbGV4T3JkZXJI
YXNoVHJhaXRzOjpjb25zdHJ1Y3REZWxldGVkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Rmxl
eE9yZGVySGFzaFRyYWl0czo6aXNEZWxldGVkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyRmxleGlibGVCb3g6OlRyZWVPcmRlckl0ZXJhdG9yOjpUcmVlT3JkZXJJdGVyYXRvcik6IEEg
c2ltcGxlIGl0ZXJhdG9yCisgICAgICAgICAgICB0aGF0IGdvZXMgaW4gcmVuZGVyIHRyZWUgb3Jk
ZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6VHJlZU9yZGVySXRlcmF0
b3I6Om5leHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OlRyZWVPcmRl
ckl0ZXJhdG9yOjpyZXNldCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6
VHJlZU9yZGVySXRlcmF0b3I6OmZsZXhPcmRlclZhbHVlcyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OkZsZXhPcmRlckl0ZXJhdG9yKTog
QW4gaXRlcmF0b3IgdGhhdAorICAgICAgICAgICAgZ29lcyBpbiBmbGV4LW9yZGVyIG9yZGVyLiAg
Q3JlYXRpbmcgdGhpcyBpbnZvbHZlcyBzb3J0aW5nLCBzbyBvbmx5IGNyZWF0ZSBpdCBvbmNlCisg
ICAgICAgICAgICBhbmQgcGFzcyBpdCBhcm91bmQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJG
bGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OmZpcnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpGbGV4T3JkZXJJdGVyYXRvcjo6bmV4dCk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OnJlc2V0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRIb3Jpem9udGFsQmxvY2sp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmNvbXB1dGVQcmVmZXJyZWRT
aXplSG9yaXpvbnRhbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6cnVu
RnJlZVNwYWNlQWxsb2NhdGlvbkFsZ29yaXRobUhvcml6b250YWwpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyRmxleGlibGVCb3g6OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFsKToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaDoKKwogMjAxMS0wOS0wMSAg
Tm9lbCBHb3Jkb24gIDxub2VsLmdvcmRvbkBnbWFpbC5jb20+CiAKICAgICAgICAgW2Nocm9taXVt
XSBNb3ZlIEltYWdlQnVmZmVyOjpwbGF0Zm9ybUxheWVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKaW5kZXggZTAzZGRhMDliYTY2YjZmY2FjM2ZjYTZjMDRhODFhZTE3MTNlNDc0MC4uNGQ5NjNi
ZjVmMDk5MmZiMjRlNDg2NzEyMzIyMmY1YTE4Nzk3ZTA4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKQEAgLTE1NDYsNyArMTU0NiwxMiBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShp
bnQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgYnJlYWs7CiAjaWYgRU5BQkxFKENT
UzNfRkxFWEJPWCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgotICAgICAg
ICB2YWxpZFByaW1pdGl2ZSA9IHZhbGlkVW5pdCh2YWx1ZSwgRkludGVnZXIsIHRydWUpOworICAg
ICAgICBpZiAodmFsaWRVbml0KHZhbHVlLCBGSW50ZWdlciwgdHJ1ZSkpIHsKKyAgICAgICAgICAg
IC8vIFdlIHJlc3RyaWN0IHRoZSBzbWFsbGVzdCB2YWx1ZSB0byBpbnQgbWluICsgMiBiZWNhdXNl
IHdlIHVzZSBpbnQgbWluIGFuZCBpbnQgbWluICsgMSBhcyBzcGVjaWFsIHZhbHVlcyBpbiBhIGhh
c2ggc2V0LgorICAgICAgICAgICAgcGFyc2VkVmFsdWUgPSBwcmltaXRpdmVWYWx1ZUNhY2hlKCkt
PmNyZWF0ZVZhbHVlKG1heChzdGF0aWNfY2FzdDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8
aW50Pjo6bWluKCkgKyAyKSwgdmFsdWUtPmZWYWx1ZSksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8Q1NTUHJp
bWl0aXZlVmFsdWU6OlVuaXRUeXBlcz4odmFsdWUtPnVuaXQpKTsKKyAgICAgICAgICAgIG1fdmFs
dWVMaXN0LT5uZXh0KCk7CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdEZsZXhQYWNrOgogICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IGlkID09IENT
U1ZhbHVlU3RhcnQgfHwgaWQgPT0gQ1NTVmFsdWVFbmQgfHwgaWQgPT0gQ1NTVmFsdWVDZW50ZXIg
fHwgaWQgPT0gQ1NTVmFsdWVKdXN0aWZ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGbGV4aWJsZUJveC5jcHAKaW5kZXggOGZjYTUxYWUwYjg1MGYzODc4ZTk0MDNlYjFhNDM4
N2IxNzNiOTA5MC4uOTg0MGM2MmRlMTJmZWE0OThkZjQ2OWZkYjhhZTQ1OGQ3ZTU0MDIzYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCkBAIC0z
NSw5ICszNSwyMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJlbmRlckZsZXhp
YmxlQm94OjpGbGV4aWJsZUJveEl0ZXJhdG9yIHsKKy8vIE5vcm1hbGx5LCAtMSBhbmQgMCBhcmUg
bm90IHZhbGlkIGluIGEgSGFzaFNldCwgYnV0IHRoZXNlIGFyZSByZWxhdGl2ZWx5IGxpa2VseSBm
bGV4LW9yZGVyIHZhbHVlcy4gSW5zdGVhZCwKKy8vIHdlIG1ha2UgdGhlIHR3byBzbWFsbGVzdCBp
bnQgdmFsdWVzIGludmFsaWQgZmxleC1vcmRlciB2YWx1ZXMgKGluIHRoZSBjc3MgcGFyc2VyIGNv
ZGUgd2UgY2xhbXAgdGhlbSB0bworLy8gaW50IG1pbiArIDIpLgorc3RydWN0IEZsZXhPcmRlckhh
c2hUcmFpdHMgOiBXVEY6OkdlbmVyaWNIYXNoVHJhaXRzPGludD4geworICAgIHN0YXRpYyBjb25z
dCBib29sIGVtcHR5VmFsdWVJc1plcm8gPSBmYWxzZTsKKyAgICBzdGF0aWMgaW50IGVtcHR5VmFs
dWUoKSB7IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1pbigpOyB9CisgICAgc3Rh
dGljIHZvaWQgY29uc3RydWN0RGVsZXRlZFZhbHVlKGludCYgc2xvdCkgeyBzbG90ID0gc3RkOjpu
dW1lcmljX2xpbWl0czxpbnQ+OjptaW4oKSArIDE7IH0KKyAgICBzdGF0aWMgYm9vbCBpc0RlbGV0
ZWRWYWx1ZShpbnQgdmFsdWUpIHsgcmV0dXJuIHZhbHVlID09IHN0ZDo6bnVtZXJpY19saW1pdHM8
aW50Pjo6bWluKCkgKyAxOyB9Cit9OworCit0eXBlZGVmIEhhc2hTZXQ8aW50LCBEZWZhdWx0SGFz
aDxpbnQ+OjpIYXNoLCBGbGV4T3JkZXJIYXNoVHJhaXRzPiBGbGV4T3JkZXJIYXNoU2V0OworCitj
bGFzcyBSZW5kZXJGbGV4aWJsZUJveDo6VHJlZU9yZGVySXRlcmF0b3IgewogcHVibGljOgotICAg
IGV4cGxpY2l0IEZsZXhpYmxlQm94SXRlcmF0b3IoUmVuZGVyRmxleGlibGVCb3gqIGZsZXhpYmxl
Qm94KQorICAgIGV4cGxpY2l0IFRyZWVPcmRlckl0ZXJhdG9yKFJlbmRlckZsZXhpYmxlQm94KiBm
bGV4aWJsZUJveCkKICAgICAgICAgOiBtX2ZsZXhpYmxlQm94KGZsZXhpYmxlQm94KQogICAgICAg
ICAsIG1fY3VycmVudENoaWxkKDApCiAgICAgewpAQCAtNTYsNiArNjgsNjUgQEAgcHVibGljOgog
ICAgICAgICB3aGlsZSAoY2hpbGQgJiYgIWNoaWxkLT5pc0JveCgpKQogICAgICAgICAgICAgY2hp
bGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKTsKIAorICAgICAgICBpZiAoY2hpbGQpCisgICAgICAg
ICAgICBtX2ZsZXhPcmRlclZhbHVlcy5hZGQoY2hpbGQtPnN0eWxlKCktPmZsZXhPcmRlcigpKTsK
KworICAgICAgICBtX2N1cnJlbnRDaGlsZCA9IHRvUmVuZGVyQm94KGNoaWxkKTsKKyAgICAgICAg
cmV0dXJuIG1fY3VycmVudENoaWxkOworICAgIH0KKworICAgIHZvaWQgcmVzZXQoKQorICAgIHsK
KyAgICAgICAgbV9jdXJyZW50Q2hpbGQgPSAwOworICAgIH0KKworICAgIGNvbnN0IEZsZXhPcmRl
ckhhc2hTZXQmIGZsZXhPcmRlclZhbHVlcygpCisgICAgeworICAgICAgICByZXR1cm4gbV9mbGV4
T3JkZXJWYWx1ZXM7CisgICAgfQorCitwcml2YXRlOgorICAgIFJlbmRlckZsZXhpYmxlQm94KiBt
X2ZsZXhpYmxlQm94OworICAgIFJlbmRlckJveCogbV9jdXJyZW50Q2hpbGQ7CisgICAgRmxleE9y
ZGVySGFzaFNldCBtX2ZsZXhPcmRlclZhbHVlczsKK307CisKK2NsYXNzIFJlbmRlckZsZXhpYmxl
Qm94OjpGbGV4T3JkZXJJdGVyYXRvciB7CitwdWJsaWM6CisgICAgRmxleE9yZGVySXRlcmF0b3Io
UmVuZGVyRmxleGlibGVCb3gqIGZsZXhpYmxlQm94LCBjb25zdCBGbGV4T3JkZXJIYXNoU2V0JiBm
bGV4T3JkZXJWYWx1ZXMpCisgICAgICAgIDogbV9mbGV4aWJsZUJveChmbGV4aWJsZUJveCkKKyAg
ICAgICAgLCBtX2N1cnJlbnRDaGlsZCgwKQorICAgICAgICAsIG1fb3JkZXJWYWx1ZXNJdGVyYXRv
cigwKQorICAgIHsKKyAgICAgICAgY29weVRvVmVjdG9yKGZsZXhPcmRlclZhbHVlcywgbV9vcmRl
clZhbHVlcyk7CisgICAgICAgIHN0ZDo6c29ydChtX29yZGVyVmFsdWVzLmJlZ2luKCksIG1fb3Jk
ZXJWYWx1ZXMuZW5kKCkpOworICAgIH0KKworICAgIFJlbmRlckJveCogZmlyc3QoKQorICAgIHsK
KyAgICAgICAgcmVzZXQoKTsKKyAgICAgICAgcmV0dXJuIG5leHQoKTsKKyAgICB9CisKKyAgICBS
ZW5kZXJCb3gqIG5leHQoKQorICAgIHsKKyAgICAgICAgUmVuZGVyT2JqZWN0KiBjaGlsZCA9IG1f
Y3VycmVudENoaWxkOworICAgICAgICBkbyB7CisgICAgICAgICAgICBpZiAoIWNoaWxkKSB7Cisg
ICAgICAgICAgICAgICAgaWYgKG1fb3JkZXJWYWx1ZXNJdGVyYXRvciA9PSBtX29yZGVyVmFsdWVz
LmVuZCgpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICBp
ZiAobV9vcmRlclZhbHVlc0l0ZXJhdG9yKSB7CisgICAgICAgICAgICAgICAgICAgICsrbV9vcmRl
clZhbHVlc0l0ZXJhdG9yOworICAgICAgICAgICAgICAgICAgICBpZiAobV9vcmRlclZhbHVlc0l0
ZXJhdG9yID09IG1fb3JkZXJWYWx1ZXMuZW5kKCkpCisgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgbV9v
cmRlclZhbHVlc0l0ZXJhdG9yID0gbV9vcmRlclZhbHVlcy5iZWdpbigpOworCisgICAgICAgICAg
ICAgICAgY2hpbGQgPSBtX2ZsZXhpYmxlQm94LT5maXJzdENoaWxkKCk7CisgICAgICAgICAgICB9
IGVsc2UKKyAgICAgICAgICAgICAgICBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpOworICAg
ICAgICB9IHdoaWxlICghY2hpbGQgfHwgIWNoaWxkLT5pc0JveCgpIHx8IGNoaWxkLT5zdHlsZSgp
LT5mbGV4T3JkZXIoKSAhPSAqbV9vcmRlclZhbHVlc0l0ZXJhdG9yKTsKKwogICAgICAgICBtX2N1
cnJlbnRDaGlsZCA9IHRvUmVuZGVyQm94KGNoaWxkKTsKICAgICAgICAgcmV0dXJuIG1fY3VycmVu
dENoaWxkOwogICAgIH0KQEAgLTYzLDExICsxMzQsMTQgQEAgcHVibGljOgogICAgIHZvaWQgcmVz
ZXQoKQogICAgIHsKICAgICAgICAgbV9jdXJyZW50Q2hpbGQgPSAwOworICAgICAgICBtX29yZGVy
VmFsdWVzSXRlcmF0b3IgPSAwOwogICAgIH0KIAogcHJpdmF0ZToKICAgICBSZW5kZXJGbGV4aWJs
ZUJveCogbV9mbGV4aWJsZUJveDsKICAgICBSZW5kZXJCb3gqIG1fY3VycmVudENoaWxkOworICAg
IFZlY3RvcjxpbnQ+IG1fb3JkZXJWYWx1ZXM7CisgICAgVmVjdG9yPGludD46OmNvbnN0X2l0ZXJh
dG9yIG1fb3JkZXJWYWx1ZXNJdGVyYXRvcjsKIH07CiAKIApAQCAtMTI3LDE5ICsyMDEsMjAgQEAg
dm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0SG9yaXpvbnRhbEJsb2NrKGJvb2wgcmVsYXlv
dXRDaGlsZHJlbikKICAgICBMYXlvdXRVbml0IHByZWZlcnJlZFNpemU7CiAgICAgZmxvYXQgdG90
YWxQb3NpdGl2ZUZsZXhpYmlsaXR5OwogICAgIGZsb2F0IHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0
eTsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9yKHRoaXMpOworICAgIFRyZWVPcmRl
ckl0ZXJhdG9yIHRyZWVJdGVyYXRvcih0aGlzKTsKIAotICAgIGNvbXB1dGVQcmVmZXJyZWRTaXpl
SG9yaXpvbnRhbChyZWxheW91dENoaWxkcmVuLCBpdGVyYXRvciwgcHJlZmVycmVkU2l6ZSwgdG90
YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHkpOworICAgIGNv
bXB1dGVQcmVmZXJyZWRTaXplSG9yaXpvbnRhbChyZWxheW91dENoaWxkcmVuLCB0cmVlSXRlcmF0
b3IsIHByZWZlcnJlZFNpemUsIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgdG90YWxOZWdhdGl2
ZUZsZXhpYmlsaXR5KTsKICAgICBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSA9IGNvbnRl
bnRXaWR0aCgpIC0gcHJlZmVycmVkU2l6ZTsKIAorICAgIEZsZXhPcmRlckl0ZXJhdG9yIGZsZXhJ
dGVyYXRvcih0aGlzLCB0cmVlSXRlcmF0b3IuZmxleE9yZGVyVmFsdWVzKCkpOwogICAgIEluZmxl
eGlibGVGbGV4SXRlbVNpemUgaW5mbGV4aWJsZUl0ZW1zOwogICAgIFdURjo6VmVjdG9yPExheW91
dFVuaXQ+IGNoaWxkU2l6ZXM7Ci0gICAgd2hpbGUgKCFydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxn
b3JpdGhtSG9yaXpvbnRhbChhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4aWJp
bGl0eSwgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5LCBpbmZsZXhpYmxlSXRlbXMsIGNoaWxkU2l6
ZXMpKSB7CisgICAgd2hpbGUgKCFydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSG9yaXpv
bnRhbChmbGV4SXRlcmF0b3IsIGF2YWlsYWJsZUZyZWVTcGFjZSwgdG90YWxQb3NpdGl2ZUZsZXhp
YmlsaXR5LCB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIGluZmxleGlibGVJdGVtcywgY2hpbGRT
aXplcykpIHsKICAgICAgICAgQVNTRVJUKHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA+PSAwICYm
IHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSA+PSAwKTsKICAgICAgICAgQVNTRVJUKGluZmxleGli
bGVJdGVtcy5zaXplKCkgPiAwKTsKICAgICB9CiAKLSAgICBsYXlvdXRBbmRQbGFjZUNoaWxkcmVu
SG9yaXpvbnRhbChjaGlsZFNpemVzLCBhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVG
bGV4aWJpbGl0eSk7CisgICAgbGF5b3V0QW5kUGxhY2VDaGlsZHJlbkhvcml6b250YWwoZmxleEl0
ZXJhdG9yLCBjaGlsZFNpemVzLCBhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4
aWJpbGl0eSk7CiAKICAgICAvLyBGSVhNRTogSGFuZGxlIGRpc3RyaWJ1dGlvbiBvZiB2ZXJ0aWNh
bCBzcGFjZSAodGhpcmQgZGlzdHJpYnV0aW9uIHJvdW5kKS4KIH0KQEAgLTE0OSw3ICsyMjQsNyBA
QCBzdGF0aWMgTGF5b3V0VW5pdCBwcmVmZXJyZWRTaXplRm9yTWFyZ2luc0FuZFBhZGRpbmcoTGVu
Z3RoIGxlbmd0aCwgTGF5b3V0VW5pdCBjbwogICAgIHJldHVybiBsZW5ndGguY2FsY01pblZhbHVl
KGNvbnRhaW5lckxlbmd0aCk7CiB9CiAKLXZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmNvbXB1dGVQ
cmVmZXJyZWRTaXplSG9yaXpvbnRhbChib29sIHJlbGF5b3V0Q2hpbGRyZW4sIEZsZXhpYmxlQm94
SXRlcmF0b3ImIGl0ZXJhdG9yLCBMYXlvdXRVbml0JiBwcmVmZXJyZWRTaXplLCBmbG9hdCYgdG90
YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBmbG9hdCYgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5KQor
dm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6Y29tcHV0ZVByZWZlcnJlZFNpemVIb3Jpem9udGFsKGJv
b2wgcmVsYXlvdXRDaGlsZHJlbiwgVHJlZU9yZGVySXRlcmF0b3ImIGl0ZXJhdG9yLCBMYXlvdXRV
bml0JiBwcmVmZXJyZWRTaXplLCBmbG9hdCYgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBmbG9h
dCYgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5KQogewogICAgIHByZWZlcnJlZFNpemUgPSAwOwog
ICAgIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA9IHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSA9
IDA7CkBAIC0xODQsOSArMjU5LDggQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6Y29tcHV0ZVBy
ZWZlcnJlZFNpemVIb3Jpem9udGFsKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgRmwKIH0KIAogLy8g
UmV0dXJucyB0cnVlIGlmIHdlIHN1Y2Nlc3NmdWxseSByYW4gdGhlIGFsZ29yaXRobSBhbmQgc2l6
ZWQgdGhlIGZsZXggaXRlbXMuCi1ib29sIFJlbmRlckZsZXhpYmxlQm94OjpydW5GcmVlU3BhY2VB
bGxvY2F0aW9uQWxnb3JpdGhtSG9yaXpvbnRhbChMYXlvdXRVbml0JiBhdmFpbGFibGVGcmVlU3Bh
Y2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0JiB0b3RhbE5lZ2F0aXZl
RmxleGliaWxpdHksIEluZmxleGlibGVGbGV4SXRlbVNpemUmIGluZmxleGlibGVJdGVtcywgV1RG
OjpWZWN0b3I8TGF5b3V0VW5pdD4mIGNoaWxkU2l6ZXMpCitib29sIFJlbmRlckZsZXhpYmxlQm94
OjpydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSG9yaXpvbnRhbChGbGV4T3JkZXJJdGVy
YXRvciYgaXRlcmF0b3IsIExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQmIHRv
dGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwg
SW5mbGV4aWJsZUZsZXhJdGVtU2l6ZSYgaW5mbGV4aWJsZUl0ZW1zLCBXVEY6OlZlY3RvcjxMYXlv
dXRVbml0PiYgY2hpbGRTaXplcykKIHsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9y
KHRoaXMpOwogICAgIGNoaWxkU2l6ZXMuY2xlYXIoKTsKIAogICAgIC8vIEZJWE1FOiBIYW5kbGUg
dmVydGljYWwgd3JpdGluZyBtb2RlcyB3aXRoIGhvcml6b250YWwgZmxleGluZy4KQEAgLTIzMyw5
ICszMDcsOCBAQCBzdGF0aWMgYm9vbCBoYXNQYWNraW5nU3BhY2UoTGF5b3V0VW5pdCBhdmFpbGFi
bGVGcmVlU3BhY2UsIGZsb2F0IHRvdGFsUG9zaXRpdmVGbAogICAgIHJldHVybiBhdmFpbGFibGVG
cmVlU3BhY2UgPiAwICYmICF0b3RhbFBvc2l0aXZlRmxleGliaWxpdHk7CiB9CiAKLXZvaWQgUmVu
ZGVyRmxleGlibGVCb3g6OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFsKGNvbnN0IFdU
Rjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJsZUZy
ZWVTcGFjZSwgZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KQordm9pZCBSZW5kZXJGbGV4
aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbkhvcml6b250YWwoRmxleE9yZGVySXRlcmF0
b3ImIGl0ZXJhdG9yLCBjb25zdCBXVEY6OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcywg
TGF5b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0IHRvdGFsUG9zaXRpdmVGbGV4aWJp
bGl0eSkKIHsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9yKHRoaXMpOwogICAgIC8v
IE5vdyB0aGF0IHdlIGtub3cgdGhlIHNpemVzLCBsYXlvdXQgYW5kIHBvc2l0aW9uIHRoZSBmbGV4
IGl0ZW1zLgogICAgIExheW91dFVuaXQgeE9mZnNldCA9IGJvcmRlckxlZnQoKSArIHBhZGRpbmdM
ZWZ0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4
aWJsZUJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgK
aW5kZXggMzYxM2UyMDZlNjExMzE5NmE1ZWIzOTIxMDVhM2FmN2NmYTllNTYzYy4uYzg2YjVmODNj
ZDY2NjczMWE1ODVjNzkyZTBmNTUxNjNjZmQ0M2U4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKQEAgLTQ5LDE0ICs0OSwxNSBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIGxheW91dEJsb2NrKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgaW50IHBh
Z2VMb2dpY2FsSGVpZ2h0ID0gMCwgQmxvY2tMYXlvdXRQYXNzID0gTm9ybWFsTGF5b3V0UGFzcyk7
CiAKIHByaXZhdGU6Ci0gICAgY2xhc3MgRmxleGlibGVCb3hJdGVyYXRvcjsKKyAgICBjbGFzcyBU
cmVlT3JkZXJJdGVyYXRvcjsKKyAgICBjbGFzcyBGbGV4T3JkZXJJdGVyYXRvcjsKICAgICB0eXBl
ZGVmIFdURjo6SGFzaE1hcDxjb25zdCBSZW5kZXJCb3gqLCBMYXlvdXRVbml0PiBJbmZsZXhpYmxl
RmxleEl0ZW1TaXplOwogCiAgICAgdm9pZCBsYXlvdXRIb3Jpem9udGFsQmxvY2soYm9vbCByZWxh
eW91dENoaWxkcmVuKTsKIAotICAgIHZvaWQgY29tcHV0ZVByZWZlcnJlZFNpemVIb3Jpem9udGFs
KGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgRmxleGlibGVCb3hJdGVyYXRvciYsIExheW91dFVuaXQm
LCBmbG9hdCYgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBmbG9hdCYgdG90YWxOZWdhdGl2ZUZs
ZXhpYmlsaXR5KTsKLSAgICBib29sIHJ1bkZyZWVTcGFjZUFsbG9jYXRpb25BbGdvcml0aG1Ib3Jp
em9udGFsKExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQmIHRvdGFsUG9zaXRp
dmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwgSW5mbGV4aWJs
ZUZsZXhJdGVtU2l6ZSYsIFdURjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzKTsKLSAg
ICB2b2lkIGxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFsKGNvbnN0IFdURjo6VmVjdG9y
PExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSwg
ZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KTsKKyAgICB2b2lkIGNvbXB1dGVQcmVmZXJy
ZWRTaXplSG9yaXpvbnRhbChib29sIHJlbGF5b3V0Q2hpbGRyZW4sIFRyZWVPcmRlckl0ZXJhdG9y
JiwgTGF5b3V0VW5pdCYsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0JiB0
b3RhbE5lZ2F0aXZlRmxleGliaWxpdHkpOworICAgIGJvb2wgcnVuRnJlZVNwYWNlQWxsb2NhdGlv
bkFsZ29yaXRobUhvcml6b250YWwoRmxleE9yZGVySXRlcmF0b3ImLCBMYXlvdXRVbml0JiBhdmFp
bGFibGVGcmVlU3BhY2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0JiB0
b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIEluZmxleGlibGVGbGV4SXRlbVNpemUmLCBXVEY6OlZl
Y3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcyk7CisgICAgdm9pZCBsYXlvdXRBbmRQbGFjZUNo
aWxkcmVuSG9yaXpvbnRhbChGbGV4T3JkZXJJdGVyYXRvciYsIGNvbnN0IFdURjo6VmVjdG9yPExh
eW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxv
YXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106140</attachid>
            <date>2011-09-02 09:27:11 -0700</date>
            <delta_ts>2011-09-21 11:06:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67432-20110902092607.patch</filename>
            <type>text/plain</type>
            <size>19956</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTQzMzIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjNWY1ZGMwZDIwMGM5MGQ2ZGY4Y2Rk
YTFjYzRkOWZhNmRkMTdiNzAzLi42MWYyM2Q5NWUyNDMzNzllYmExNzEyNmE2YTRjMmNkZTkyYTFk
NzI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMDIgIFRvbnkgQ2hhbmcgIDx0b255
QGNocm9taXVtLm9yZz4KKworICAgICAgICBpbXBsZW1lbnQgLXdlYmtpdC1mbGV4LW9yZGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzQzMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9mbGV4
Ym94L2ZsZXgtb3JkZXItZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2ZsZXhi
b3gvZmxleC1vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvZmxleGJv
eC9mbGV4LW9yZGVyLmh0bWw6IEFkZGVkLgorCiAyMDExLTA5LTAxICBLdWxhbnRoYWl2ZWwgUGFs
YW5pY2hhbXkgIDxrdWxhbnRoYWl2ZWxAY29kZWF1cm9yYS5vcmc+CiAKICAgICAgICAgRm9jdXMg
cmluZyBpcyByZW5kZXJlZCBpbmNvcnJlY3RseSBmb3IgYSBibG9jayB3aXRoIC13ZWJraXQtd3Jp
dGluZy1tb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRl
ci1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRlci1leHBl
Y3RlZC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZmI0YzdhZTg0MGY0ZTBkNGVmNzRhM2MwYWE3NWU5ZWEwNTY1
MzQ0MQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMzAzMAp6Y21lQVNATj8ob2xIeWB1VkJxIWlh
MHl+eVV7K3ZZVjJhPmkwKlopPWheaGxBJUBXcyRsSGBvazxtfT9vVCF0aHcKeiF4Vz01PDVXfVFH
LUZGNlc2TStuMUxMJSQ8Zkpxc3YhbzxMZ0c2Nz1uO1otYishPnhPanYqQ3UtcmpOU0pyY21mCnpk
TkFkdUdnb1Q+JEpHNVFSVmdQfEllcUJVbTlMM14tZ005MHdxZmVMbXlCel5gMCp6IS12NSUzZiNF
aVg0bnhDPwp6MTU2QVpvQ0NxUWArVXd6VUl2RU1JfSNXZmo8QVJeSVFTND95Z1JMMlVpV2FlK3lT
cmlVbF91d21hfWh8JFc0U2MKelZ2SHRWJV5TUHRLS1RwYDVsMzBNODVHbnVGZmIlQjtiKVleJWtC
S2tlSU1rNVckWVUrUz0lPUIjdEA7NjdeNWpyCnpeVzhHTmlrYWJubVI8d3tnSkJ+cGdNY3U4Iz5V
XkRQUnh6fTByRyh7RmsjKCQkKFp3YGlMZj9lakhXPSU/KD4kSAp6cjVQQikzSigmUXNQOWc5ZkF7
QVFhQEo1NUFCZW53a155aGpvfH0xKGZuaEB6djhuc2JLQVdRRjtgPjBFK2xOMTQKelg/WWNjXmlC
ZUtpVG5nbEQzYCliZXBoXyUzbVpkMkRBQjM9YF9xWm1gIzw7c2VVTShvcHVQN3BeTmtiNFctMUMm
CnpLQjRTN3pqJkVCMUgrbX0jSFF9dWB1JXIpdyZud1VWMClRNDtea2JxMTgmNC1EaGc2USFSJEs2
Y3JQUEVmKyhANgp6YCRsYyRsWExudEFSbypHN1AjLWZGcWpuKW8yZ0l8R2dhJUM1bjUlP0VfSUta
aks4dVQ0V0g1UWZ3YnRwQGhnOUoKV3NySG9xWnZ8fHFHa0NpQ3h2WDxhWGFXRXdpa0RSWQoKbGl0
ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94
L2ZsZXgtb3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgt
b3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwNTc1NTc2ZTQyMDJiYmFjZWIzMzM0MWY1
MWJiMGQ2MzUwMDE4MWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhi
b3gvZmxleC1vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorWW91IHNob3VsZCBzZWUg
aWRlbnRpY2FsIGdyZWVuIGJhcnMgZ29pbmcgZnJvbSBsaWdodCBncmVlbiAobGVmdCkgdG8gZGFy
ayBncmVlbiAocmlnaHQpLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2Zs
ZXgtb3JkZXIuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9yZGVyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMmMyNTUxNTllMGE5OGNiMGZhNGExYTNkNWZlNzRkZTdhODg4MThiOQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9yZGVyLmh0bWwK
QEAgLTAsMCArMSwxMTYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8c3R5bGU+Citib2R5
IHsKKyAgICBtYXJnaW46IDA7Cit9CisuaG9yaXpvbnRhbC1ib3ggZGl2IHsKKyAgICBoZWlnaHQ6
IDMwcHg7CisgICAgYm9yZGVyOiAwOworICAgIG1hcmdpbi1ib3R0b206IDEwcHg7Cit9CisKKy5m
aXJzdCB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDsKK30KKy5zZWNvbmQgeworICAgIGJh
Y2tncm91bmQtY29sb3I6ICMwZDA7Cit9CisudGhpcmQgeworICAgIGJhY2tncm91bmQtY29sb3I6
ICMwOTA7Cit9CisuZm91cnRoIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDYwOworfQorLmZp
ZnRoIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDMwOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+
CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQodHJ1ZSk7Cis8L3NjcmlwdD4KKzxib2R5PgorCis8ZGl2IHN0eWxlPSJk
aXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYg
Y2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxl
eC1vcmRlcjogMSI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSk7Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmQiICBzdHlsZT0id2lk
dGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAzIj48L2Rpdj4KKyAgPGRp
diBjbGFzcz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1m
bGV4LW9yZGVyOiAyMCI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBzdHlsZT0iZGlzcGxheTogLXdl
YmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJmb3Vy
dGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDQi
PjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4
KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDMiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIiPjwv
ZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEp
OyAtd2Via2l0LWZsZXgtb3JkZXI6IDEiPjwvZGl2PgorPC9kaXY+CisKKzwhLS0gVGhlIGV4YW1w
bGUgZnJvbSB0aGUgc3BlYy4gLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhi
b3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9
IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMiI+PC9kaXY+Cisg
IDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSkiPjwvZGl2
PgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAt
d2Via2l0LWZsZXgtb3JkZXI6IDIiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDEiPjwvZGl2Pgor
PC9kaXY+CisKKzxkaXYgc3R5bGU9ImRpc3BsYXk6IC13ZWJraXQtZmxleGJveCIgY2xhc3M9Imhv
cml6b250YWwtYm94Ij4KKyAgPGRpdiBjbGFzcz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0i
c2Vjb25kIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKSI+PC9kaXY+CisgIDxkaXYgY2xh
c3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2
IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZs
ZXgtb3JkZXI6IC0xMCI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBzdHlsZT0iZGlzcGxheTogLXdl
YmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJmb3Vy
dGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIw
MDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDEwMDAwMDAwMDAiPjwvZGl2PgorICA8
ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0
LWZsZXgtb3JkZXI6IDEwMDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IC0xMDAwMDAw
MDAwIj48L2Rpdj4KKzwvZGl2PgorCis8IS0tIEZsb2F0aW5nIG51bWJlcnMgYXJlIGlnbm9yZWQg
YW5kIHdlIHVzZSB0aGUgZGVmYXVsdCBvZiAxIGluc3RlYWQuIC0tPgorPGRpdiBzdHlsZT0iZGlz
cGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNs
YXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgt
b3JkZXI6IDIuNSI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMiI+PC9kaXY+CisgIDxkaXYgY2xh
c3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1v
cmRlcjogLTEiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1mbGV4KDEpIj48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Vi
a2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InNlY29u
ZCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMCI+
PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgx
KTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAtMSI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMSI+PC9k
aXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEp
Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFZhbHVlcyBncmVhdGVyIHRoYW4gd2hhdCBjYW4gYmUg
c3RvcmVkIGluIGFuIGludCBhcmUgY2xhbXBlZCBmcm9tCisgICAgIC0yLDE0Nyw0ODMsNjQ2IChp
bnQgbWluICsgMikgdG8gMiwxNDcsNDgzLDY0Ny4gLS0+Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAt
d2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InRo
aXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjog
NDAwMDAwMDAwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMzAwMDAwMDAwMCI+PC9kaXY+Cisg
IDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7Ij48L2Rp
dj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsg
LXdlYmtpdC1mbGV4LW9yZGVyOiAyMTQ3NDgzNjQ2Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0
eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFsLWJveCI+Cisg
IDxkaXYgY2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJr
aXQtZmxleC1vcmRlcjogNDAwMDAwMDAwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMzAwMDAw
MDAwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZpcnN0IiAgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWZsZXgoMSk7Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyMTQ3NDgzNjQ3Ij48L2Rpdj4KKzwv
ZGl2PgorCis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jp
em9udGFsLWJveCI+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogLTIxNDc0ODM2NDUiPjwvZGl2PgorICA8ZGl2
IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZs
ZXgtb3JkZXI6IC0yMTQ3NDgzNjQ2Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAtMjE0NzQ4MzY0
NyI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZs
ZXgoMSk7Ij48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFRoaXMgc2hvdWxkIG5vdCBjcmFzaC4gLS0+
Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFs
LWJveCI+PC9kaXY+CisKKzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OiAtMTAw
MDBweDsiPllvdSBzaG91bGQgc2VlIGlkZW50aWNhbCBncmVlbiBiYXJzIGdvaW5nIGZyb20gbGln
aHQgZ3JlZW4KKyhsZWZ0KSB0byBkYXJrIGdyZWVuIChyaWdodCkuPC9kaXY+CisKKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhZmE4NzgxMGE4Y2JjMmVhMzZkN2Q2ZmJhMWRjZTk5ODBj
NTI1OGVlLi4xYjllZTM0MGMyMjg5YmM0OWYwMGJmZjZlMWI2NWQ2ZmMwMTgyNDhkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDktMDIgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9t
aXVtLm9yZz4KKworICAgICAgICBpbXBsZW1lbnQgLXdlYmtpdC1mbGV4LW9yZGVyCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzQzMgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZsZXgtb3JkZXIgY2FuIGJl
IGFuIGludCAoaW5jbHVkaW5nIG5lZ2F0aXZlKSwgYnV0IHdlIGRpc2FsbG93IHRoZSB0d28KKyAg
ICAgICAgc21hbGxlc3QgdmFsdWVzIHNvIHdlIGNhbiBwdXQgdGhlIG51bWJlcnMgaW50byBhIGhh
c2ggc2V0LgorCisgICAgICAgIEFsc28sIGNyZWF0ZSB0d28gaXRlcmF0b3JzOiBvbmUgdGhhdCBn
b2VzIGluIHJlbmRlciB0cmVlIG9yZGVyICh3ZSB1c2UKKyAgICAgICAgdGhpcyBmb3IgdGhlIGZp
cnN0IHBhc3MgYW5kIHRvIGNvbGxlY3QgdGhlIHBvc3NpYmxlIGZsZXggb3JkZXIgdmFsdWVzKQor
ICAgICAgICBhbmQgb25lIHRoYXQgZ29lcyBpbiBmbGV4IG9yZGVyLgorCisgICAgICAgIFRlc3Q6
IGNzczMvZmxleGJveC9mbGV4LW9yZGVyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NQYXJzZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZhbHVlKToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rmxl
eE9yZGVySGFzaFRyYWl0czo6ZW1wdHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpGbGV4T3Jk
ZXJIYXNoVHJhaXRzOjpjb25zdHJ1Y3REZWxldGVkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
RmxleE9yZGVySGFzaFRyYWl0czo6aXNEZWxldGVkVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyRmxleGlibGVCb3g6OlRyZWVPcmRlckl0ZXJhdG9yOjpUcmVlT3JkZXJJdGVyYXRvcik6
IEEgc2ltcGxlIGl0ZXJhdG9yCisgICAgICAgICAgICB0aGF0IGdvZXMgaW4gcmVuZGVyIHRyZWUg
b3JkZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6VHJlZU9yZGVySXRl
cmF0b3I6Om5leHQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OlRyZWVP
cmRlckl0ZXJhdG9yOjpyZXNldCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJv
eDo6VHJlZU9yZGVySXRlcmF0b3I6OmZsZXhPcmRlclZhbHVlcyk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OkZsZXhPcmRlckl0ZXJhdG9y
KTogQW4gaXRlcmF0b3IgdGhhdAorICAgICAgICAgICAgZ29lcyBpbiBmbGV4LW9yZGVyIG9yZGVy
LiAgQ3JlYXRpbmcgdGhpcyBpbnZvbHZlcyBzb3J0aW5nLCBzbyBvbmx5IGNyZWF0ZSBpdCBvbmNl
CisgICAgICAgICAgICBhbmQgcGFzcyBpdCBhcm91bmQuCisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OmZpcnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckZsZXhpYmxlQm94OjpGbGV4T3JkZXJJdGVyYXRvcjo6bmV4dCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6OnJlc2V0KToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRIb3Jpem9udGFsQmxv
Y2spOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmNvbXB1dGVQcmVmZXJy
ZWRTaXplSG9yaXpvbnRhbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6
cnVuRnJlZVNwYWNlQWxsb2NhdGlvbkFsZ29yaXRobUhvcml6b250YWwpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFs
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaDoKKwogMjAxMS0wOS0w
MSAgTm9lbCBHb3Jkb24gIDxub2VsLmdvcmRvbkBnbWFpbC5jb20+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBNb3ZlIEltYWdlQnVmZmVyOjpwbGF0Zm9ybUxheWVyKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKaW5kZXggZTAzZGRhMDliYTY2YjZmY2FjM2ZjYTZjMDRhODFhZTE3MTNlNDc0MC4uNGQ5
NjNiZjVmMDk5MmZiMjRlNDg2NzEyMzIyMmY1YTE4Nzk3ZTA4NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlci5jcHAKQEAgLTE1NDYsNyArMTU0NiwxMiBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1
ZShpbnQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgYnJlYWs7CiAjaWYgRU5BQkxF
KENTUzNfRkxFWEJPWCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgotICAg
ICAgICB2YWxpZFByaW1pdGl2ZSA9IHZhbGlkVW5pdCh2YWx1ZSwgRkludGVnZXIsIHRydWUpOwor
ICAgICAgICBpZiAodmFsaWRVbml0KHZhbHVlLCBGSW50ZWdlciwgdHJ1ZSkpIHsKKyAgICAgICAg
ICAgIC8vIFdlIHJlc3RyaWN0IHRoZSBzbWFsbGVzdCB2YWx1ZSB0byBpbnQgbWluICsgMiBiZWNh
dXNlIHdlIHVzZSBpbnQgbWluIGFuZCBpbnQgbWluICsgMSBhcyBzcGVjaWFsIHZhbHVlcyBpbiBh
IGhhc2ggc2V0LgorICAgICAgICAgICAgcGFyc2VkVmFsdWUgPSBwcmltaXRpdmVWYWx1ZUNhY2hl
KCktPmNyZWF0ZVZhbHVlKG1heChzdGF0aWNfY2FzdDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1p
dHM8aW50Pjo6bWluKCkgKyAyKSwgdmFsdWUtPmZWYWx1ZSksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8Q1NT
UHJpbWl0aXZlVmFsdWU6OlVuaXRUeXBlcz4odmFsdWUtPnVuaXQpKTsKKyAgICAgICAgICAgIG1f
dmFsdWVMaXN0LT5uZXh0KCk7CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdEZsZXhQYWNrOgogICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IGlkID09
IENTU1ZhbHVlU3RhcnQgfHwgaWQgPT0gQ1NTVmFsdWVFbmQgfHwgaWQgPT0gQ1NTVmFsdWVDZW50
ZXIgfHwgaWQgPT0gQ1NTVmFsdWVKdXN0aWZ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGbGV4aWJsZUJveC5jcHAKaW5kZXggOGZjYTUxYWUwYjg1MGYzODc4ZTk0MDNlYjFh
NDM4N2IxNzNiOTA5MC4uOTg0MGM2MmRlMTJmZWE0OThkZjQ2OWZkYjhhZTQ1OGQ3ZTU0MDIzYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCkBA
IC0zNSw5ICszNSwyMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJlbmRlckZs
ZXhpYmxlQm94OjpGbGV4aWJsZUJveEl0ZXJhdG9yIHsKKy8vIE5vcm1hbGx5LCAtMSBhbmQgMCBh
cmUgbm90IHZhbGlkIGluIGEgSGFzaFNldCwgYnV0IHRoZXNlIGFyZSByZWxhdGl2ZWx5IGxpa2Vs
eSBmbGV4LW9yZGVyIHZhbHVlcy4gSW5zdGVhZCwKKy8vIHdlIG1ha2UgdGhlIHR3byBzbWFsbGVz
dCBpbnQgdmFsdWVzIGludmFsaWQgZmxleC1vcmRlciB2YWx1ZXMgKGluIHRoZSBjc3MgcGFyc2Vy
IGNvZGUgd2UgY2xhbXAgdGhlbSB0bworLy8gaW50IG1pbiArIDIpLgorc3RydWN0IEZsZXhPcmRl
ckhhc2hUcmFpdHMgOiBXVEY6OkdlbmVyaWNIYXNoVHJhaXRzPGludD4geworICAgIHN0YXRpYyBj
b25zdCBib29sIGVtcHR5VmFsdWVJc1plcm8gPSBmYWxzZTsKKyAgICBzdGF0aWMgaW50IGVtcHR5
VmFsdWUoKSB7IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1pbigpOyB9CisgICAg
c3RhdGljIHZvaWQgY29uc3RydWN0RGVsZXRlZFZhbHVlKGludCYgc2xvdCkgeyBzbG90ID0gc3Rk
OjpudW1lcmljX2xpbWl0czxpbnQ+OjptaW4oKSArIDE7IH0KKyAgICBzdGF0aWMgYm9vbCBpc0Rl
bGV0ZWRWYWx1ZShpbnQgdmFsdWUpIHsgcmV0dXJuIHZhbHVlID09IHN0ZDo6bnVtZXJpY19saW1p
dHM8aW50Pjo6bWluKCkgKyAxOyB9Cit9OworCit0eXBlZGVmIEhhc2hTZXQ8aW50LCBEZWZhdWx0
SGFzaDxpbnQ+OjpIYXNoLCBGbGV4T3JkZXJIYXNoVHJhaXRzPiBGbGV4T3JkZXJIYXNoU2V0Owor
CitjbGFzcyBSZW5kZXJGbGV4aWJsZUJveDo6VHJlZU9yZGVySXRlcmF0b3IgewogcHVibGljOgot
ICAgIGV4cGxpY2l0IEZsZXhpYmxlQm94SXRlcmF0b3IoUmVuZGVyRmxleGlibGVCb3gqIGZsZXhp
YmxlQm94KQorICAgIGV4cGxpY2l0IFRyZWVPcmRlckl0ZXJhdG9yKFJlbmRlckZsZXhpYmxlQm94
KiBmbGV4aWJsZUJveCkKICAgICAgICAgOiBtX2ZsZXhpYmxlQm94KGZsZXhpYmxlQm94KQogICAg
ICAgICAsIG1fY3VycmVudENoaWxkKDApCiAgICAgewpAQCAtNTYsNiArNjgsNjUgQEAgcHVibGlj
OgogICAgICAgICB3aGlsZSAoY2hpbGQgJiYgIWNoaWxkLT5pc0JveCgpKQogICAgICAgICAgICAg
Y2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKTsKIAorICAgICAgICBpZiAoY2hpbGQpCisgICAg
ICAgICAgICBtX2ZsZXhPcmRlclZhbHVlcy5hZGQoY2hpbGQtPnN0eWxlKCktPmZsZXhPcmRlcigp
KTsKKworICAgICAgICBtX2N1cnJlbnRDaGlsZCA9IHRvUmVuZGVyQm94KGNoaWxkKTsKKyAgICAg
ICAgcmV0dXJuIG1fY3VycmVudENoaWxkOworICAgIH0KKworICAgIHZvaWQgcmVzZXQoKQorICAg
IHsKKyAgICAgICAgbV9jdXJyZW50Q2hpbGQgPSAwOworICAgIH0KKworICAgIGNvbnN0IEZsZXhP
cmRlckhhc2hTZXQmIGZsZXhPcmRlclZhbHVlcygpCisgICAgeworICAgICAgICByZXR1cm4gbV9m
bGV4T3JkZXJWYWx1ZXM7CisgICAgfQorCitwcml2YXRlOgorICAgIFJlbmRlckZsZXhpYmxlQm94
KiBtX2ZsZXhpYmxlQm94OworICAgIFJlbmRlckJveCogbV9jdXJyZW50Q2hpbGQ7CisgICAgRmxl
eE9yZGVySGFzaFNldCBtX2ZsZXhPcmRlclZhbHVlczsKK307CisKK2NsYXNzIFJlbmRlckZsZXhp
YmxlQm94OjpGbGV4T3JkZXJJdGVyYXRvciB7CitwdWJsaWM6CisgICAgRmxleE9yZGVySXRlcmF0
b3IoUmVuZGVyRmxleGlibGVCb3gqIGZsZXhpYmxlQm94LCBjb25zdCBGbGV4T3JkZXJIYXNoU2V0
JiBmbGV4T3JkZXJWYWx1ZXMpCisgICAgICAgIDogbV9mbGV4aWJsZUJveChmbGV4aWJsZUJveCkK
KyAgICAgICAgLCBtX2N1cnJlbnRDaGlsZCgwKQorICAgICAgICAsIG1fb3JkZXJWYWx1ZXNJdGVy
YXRvcigwKQorICAgIHsKKyAgICAgICAgY29weVRvVmVjdG9yKGZsZXhPcmRlclZhbHVlcywgbV9v
cmRlclZhbHVlcyk7CisgICAgICAgIHN0ZDo6c29ydChtX29yZGVyVmFsdWVzLmJlZ2luKCksIG1f
b3JkZXJWYWx1ZXMuZW5kKCkpOworICAgIH0KKworICAgIFJlbmRlckJveCogZmlyc3QoKQorICAg
IHsKKyAgICAgICAgcmVzZXQoKTsKKyAgICAgICAgcmV0dXJuIG5leHQoKTsKKyAgICB9CisKKyAg
ICBSZW5kZXJCb3gqIG5leHQoKQorICAgIHsKKyAgICAgICAgUmVuZGVyT2JqZWN0KiBjaGlsZCA9
IG1fY3VycmVudENoaWxkOworICAgICAgICBkbyB7CisgICAgICAgICAgICBpZiAoIWNoaWxkKSB7
CisgICAgICAgICAgICAgICAgaWYgKG1fb3JkZXJWYWx1ZXNJdGVyYXRvciA9PSBtX29yZGVyVmFs
dWVzLmVuZCgpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAg
ICBpZiAobV9vcmRlclZhbHVlc0l0ZXJhdG9yKSB7CisgICAgICAgICAgICAgICAgICAgICsrbV9v
cmRlclZhbHVlc0l0ZXJhdG9yOworICAgICAgICAgICAgICAgICAgICBpZiAobV9vcmRlclZhbHVl
c0l0ZXJhdG9yID09IG1fb3JkZXJWYWx1ZXMuZW5kKCkpCisgICAgICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAg
bV9vcmRlclZhbHVlc0l0ZXJhdG9yID0gbV9vcmRlclZhbHVlcy5iZWdpbigpOworCisgICAgICAg
ICAgICAgICAgY2hpbGQgPSBtX2ZsZXhpYmxlQm94LT5maXJzdENoaWxkKCk7CisgICAgICAgICAg
ICB9IGVsc2UKKyAgICAgICAgICAgICAgICBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpOwor
ICAgICAgICB9IHdoaWxlICghY2hpbGQgfHwgIWNoaWxkLT5pc0JveCgpIHx8IGNoaWxkLT5zdHls
ZSgpLT5mbGV4T3JkZXIoKSAhPSAqbV9vcmRlclZhbHVlc0l0ZXJhdG9yKTsKKwogICAgICAgICBt
X2N1cnJlbnRDaGlsZCA9IHRvUmVuZGVyQm94KGNoaWxkKTsKICAgICAgICAgcmV0dXJuIG1fY3Vy
cmVudENoaWxkOwogICAgIH0KQEAgLTYzLDExICsxMzQsMTQgQEAgcHVibGljOgogICAgIHZvaWQg
cmVzZXQoKQogICAgIHsKICAgICAgICAgbV9jdXJyZW50Q2hpbGQgPSAwOworICAgICAgICBtX29y
ZGVyVmFsdWVzSXRlcmF0b3IgPSAwOwogICAgIH0KIAogcHJpdmF0ZToKICAgICBSZW5kZXJGbGV4
aWJsZUJveCogbV9mbGV4aWJsZUJveDsKICAgICBSZW5kZXJCb3gqIG1fY3VycmVudENoaWxkOwor
ICAgIFZlY3RvcjxpbnQ+IG1fb3JkZXJWYWx1ZXM7CisgICAgVmVjdG9yPGludD46OmNvbnN0X2l0
ZXJhdG9yIG1fb3JkZXJWYWx1ZXNJdGVyYXRvcjsKIH07CiAKIApAQCAtMTI3LDE5ICsyMDEsMjAg
QEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0SG9yaXpvbnRhbEJsb2NrKGJvb2wgcmVs
YXlvdXRDaGlsZHJlbikKICAgICBMYXlvdXRVbml0IHByZWZlcnJlZFNpemU7CiAgICAgZmxvYXQg
dG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5OwogICAgIGZsb2F0IHRvdGFsTmVnYXRpdmVGbGV4aWJp
bGl0eTsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9yKHRoaXMpOworICAgIFRyZWVP
cmRlckl0ZXJhdG9yIHRyZWVJdGVyYXRvcih0aGlzKTsKIAotICAgIGNvbXB1dGVQcmVmZXJyZWRT
aXplSG9yaXpvbnRhbChyZWxheW91dENoaWxkcmVuLCBpdGVyYXRvciwgcHJlZmVycmVkU2l6ZSwg
dG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHkpOworICAg
IGNvbXB1dGVQcmVmZXJyZWRTaXplSG9yaXpvbnRhbChyZWxheW91dENoaWxkcmVuLCB0cmVlSXRl
cmF0b3IsIHByZWZlcnJlZFNpemUsIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgdG90YWxOZWdh
dGl2ZUZsZXhpYmlsaXR5KTsKICAgICBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSA9IGNv
bnRlbnRXaWR0aCgpIC0gcHJlZmVycmVkU2l6ZTsKIAorICAgIEZsZXhPcmRlckl0ZXJhdG9yIGZs
ZXhJdGVyYXRvcih0aGlzLCB0cmVlSXRlcmF0b3IuZmxleE9yZGVyVmFsdWVzKCkpOwogICAgIElu
ZmxleGlibGVGbGV4SXRlbVNpemUgaW5mbGV4aWJsZUl0ZW1zOwogICAgIFdURjo6VmVjdG9yPExh
eW91dFVuaXQ+IGNoaWxkU2l6ZXM7Ci0gICAgd2hpbGUgKCFydW5GcmVlU3BhY2VBbGxvY2F0aW9u
QWxnb3JpdGhtSG9yaXpvbnRhbChhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4
aWJpbGl0eSwgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5LCBpbmZsZXhpYmxlSXRlbXMsIGNoaWxk
U2l6ZXMpKSB7CisgICAgd2hpbGUgKCFydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSG9y
aXpvbnRhbChmbGV4SXRlcmF0b3IsIGF2YWlsYWJsZUZyZWVTcGFjZSwgdG90YWxQb3NpdGl2ZUZs
ZXhpYmlsaXR5LCB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIGluZmxleGlibGVJdGVtcywgY2hp
bGRTaXplcykpIHsKICAgICAgICAgQVNTRVJUKHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA+PSAw
ICYmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSA+PSAwKTsKICAgICAgICAgQVNTRVJUKGluZmxl
eGlibGVJdGVtcy5zaXplKCkgPiAwKTsKICAgICB9CiAKLSAgICBsYXlvdXRBbmRQbGFjZUNoaWxk
cmVuSG9yaXpvbnRhbChjaGlsZFNpemVzLCBhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRp
dmVGbGV4aWJpbGl0eSk7CisgICAgbGF5b3V0QW5kUGxhY2VDaGlsZHJlbkhvcml6b250YWwoZmxl
eEl0ZXJhdG9yLCBjaGlsZFNpemVzLCBhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVG
bGV4aWJpbGl0eSk7CiAKICAgICAvLyBGSVhNRTogSGFuZGxlIGRpc3RyaWJ1dGlvbiBvZiB2ZXJ0
aWNhbCBzcGFjZSAodGhpcmQgZGlzdHJpYnV0aW9uIHJvdW5kKS4KIH0KQEAgLTE0OSw3ICsyMjQs
NyBAQCBzdGF0aWMgTGF5b3V0VW5pdCBwcmVmZXJyZWRTaXplRm9yTWFyZ2luc0FuZFBhZGRpbmco
TGVuZ3RoIGxlbmd0aCwgTGF5b3V0VW5pdCBjbwogICAgIHJldHVybiBsZW5ndGguY2FsY01pblZh
bHVlKGNvbnRhaW5lckxlbmd0aCk7CiB9CiAKLXZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmNvbXB1
dGVQcmVmZXJyZWRTaXplSG9yaXpvbnRhbChib29sIHJlbGF5b3V0Q2hpbGRyZW4sIEZsZXhpYmxl
Qm94SXRlcmF0b3ImIGl0ZXJhdG9yLCBMYXlvdXRVbml0JiBwcmVmZXJyZWRTaXplLCBmbG9hdCYg
dG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBmbG9hdCYgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5
KQordm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6Y29tcHV0ZVByZWZlcnJlZFNpemVIb3Jpem9udGFs
KGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgVHJlZU9yZGVySXRlcmF0b3ImIGl0ZXJhdG9yLCBMYXlv
dXRVbml0JiBwcmVmZXJyZWRTaXplLCBmbG9hdCYgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBm
bG9hdCYgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5KQogewogICAgIHByZWZlcnJlZFNpemUgPSAw
OwogICAgIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA9IHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0
eSA9IDA7CkBAIC0xODQsOSArMjU5LDggQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6Y29tcHV0
ZVByZWZlcnJlZFNpemVIb3Jpem9udGFsKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgRmwKIH0KIAog
Ly8gUmV0dXJucyB0cnVlIGlmIHdlIHN1Y2Nlc3NmdWxseSByYW4gdGhlIGFsZ29yaXRobSBhbmQg
c2l6ZWQgdGhlIGZsZXggaXRlbXMuCi1ib29sIFJlbmRlckZsZXhpYmxlQm94OjpydW5GcmVlU3Bh
Y2VBbGxvY2F0aW9uQWxnb3JpdGhtSG9yaXpvbnRhbChMYXlvdXRVbml0JiBhdmFpbGFibGVGcmVl
U3BhY2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0JiB0b3RhbE5lZ2F0
aXZlRmxleGliaWxpdHksIEluZmxleGlibGVGbGV4SXRlbVNpemUmIGluZmxleGlibGVJdGVtcywg
V1RGOjpWZWN0b3I8TGF5b3V0VW5pdD4mIGNoaWxkU2l6ZXMpCitib29sIFJlbmRlckZsZXhpYmxl
Qm94OjpydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSG9yaXpvbnRhbChGbGV4T3JkZXJJ
dGVyYXRvciYgaXRlcmF0b3IsIExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQm
IHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0
eSwgSW5mbGV4aWJsZUZsZXhJdGVtU2l6ZSYgaW5mbGV4aWJsZUl0ZW1zLCBXVEY6OlZlY3RvcjxM
YXlvdXRVbml0PiYgY2hpbGRTaXplcykKIHsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJh
dG9yKHRoaXMpOwogICAgIGNoaWxkU2l6ZXMuY2xlYXIoKTsKIAogICAgIC8vIEZJWE1FOiBIYW5k
bGUgdmVydGljYWwgd3JpdGluZyBtb2RlcyB3aXRoIGhvcml6b250YWwgZmxleGluZy4KQEAgLTIz
Myw5ICszMDcsOCBAQCBzdGF0aWMgYm9vbCBoYXNQYWNraW5nU3BhY2UoTGF5b3V0VW5pdCBhdmFp
bGFibGVGcmVlU3BhY2UsIGZsb2F0IHRvdGFsUG9zaXRpdmVGbAogICAgIHJldHVybiBhdmFpbGFi
bGVGcmVlU3BhY2UgPiAwICYmICF0b3RhbFBvc2l0aXZlRmxleGliaWxpdHk7CiB9CiAKLXZvaWQg
UmVuZGVyRmxleGlibGVCb3g6OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFsKGNvbnN0
IFdURjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJs
ZUZyZWVTcGFjZSwgZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KQordm9pZCBSZW5kZXJG
bGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbkhvcml6b250YWwoRmxleE9yZGVySXRl
cmF0b3ImIGl0ZXJhdG9yLCBjb25zdCBXVEY6OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXpl
cywgTGF5b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0IHRvdGFsUG9zaXRpdmVGbGV4
aWJpbGl0eSkKIHsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9yKHRoaXMpOwogICAg
IC8vIE5vdyB0aGF0IHdlIGtub3cgdGhlIHNpemVzLCBsYXlvdXQgYW5kIHBvc2l0aW9uIHRoZSBm
bGV4IGl0ZW1zLgogICAgIExheW91dFVuaXQgeE9mZnNldCA9IGJvcmRlckxlZnQoKSArIHBhZGRp
bmdMZWZ0KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
bGV4aWJsZUJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94
LmgKaW5kZXggMzYxM2UyMDZlNjExMzE5NmE1ZWIzOTIxMDVhM2FmN2NmYTllNTYzYy4uYzg2YjVm
ODNjZDY2NjczMWE1ODVjNzkyZTBmNTUxNjNjZmQ0M2U4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKQEAgLTQ5LDE0ICs0OSwxNSBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIGxheW91dEJsb2NrKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgaW50
IHBhZ2VMb2dpY2FsSGVpZ2h0ID0gMCwgQmxvY2tMYXlvdXRQYXNzID0gTm9ybWFsTGF5b3V0UGFz
cyk7CiAKIHByaXZhdGU6Ci0gICAgY2xhc3MgRmxleGlibGVCb3hJdGVyYXRvcjsKKyAgICBjbGFz
cyBUcmVlT3JkZXJJdGVyYXRvcjsKKyAgICBjbGFzcyBGbGV4T3JkZXJJdGVyYXRvcjsKICAgICB0
eXBlZGVmIFdURjo6SGFzaE1hcDxjb25zdCBSZW5kZXJCb3gqLCBMYXlvdXRVbml0PiBJbmZsZXhp
YmxlRmxleEl0ZW1TaXplOwogCiAgICAgdm9pZCBsYXlvdXRIb3Jpem9udGFsQmxvY2soYm9vbCBy
ZWxheW91dENoaWxkcmVuKTsKIAotICAgIHZvaWQgY29tcHV0ZVByZWZlcnJlZFNpemVIb3Jpem9u
dGFsKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgRmxleGlibGVCb3hJdGVyYXRvciYsIExheW91dFVu
aXQmLCBmbG9hdCYgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCBmbG9hdCYgdG90YWxOZWdhdGl2
ZUZsZXhpYmlsaXR5KTsKLSAgICBib29sIHJ1bkZyZWVTcGFjZUFsbG9jYXRpb25BbGdvcml0aG1I
b3Jpem9udGFsKExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQmIHRvdGFsUG9z
aXRpdmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwgSW5mbGV4
aWJsZUZsZXhJdGVtU2l6ZSYsIFdURjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzKTsK
LSAgICB2b2lkIGxheW91dEFuZFBsYWNlQ2hpbGRyZW5Ib3Jpem9udGFsKGNvbnN0IFdURjo6VmVj
dG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFj
ZSwgZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KTsKKyAgICB2b2lkIGNvbXB1dGVQcmVm
ZXJyZWRTaXplSG9yaXpvbnRhbChib29sIHJlbGF5b3V0Q2hpbGRyZW4sIFRyZWVPcmRlckl0ZXJh
dG9yJiwgTGF5b3V0VW5pdCYsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0
JiB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHkpOworICAgIGJvb2wgcnVuRnJlZVNwYWNlQWxsb2Nh
dGlvbkFsZ29yaXRobUhvcml6b250YWwoRmxleE9yZGVySXRlcmF0b3ImLCBMYXlvdXRVbml0JiBh
dmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0
JiB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIEluZmxleGlibGVGbGV4SXRlbVNpemUmLCBXVEY6
OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcyk7CisgICAgdm9pZCBsYXlvdXRBbmRQbGFj
ZUNoaWxkcmVuSG9yaXpvbnRhbChGbGV4T3JkZXJJdGVyYXRvciYsIGNvbnN0IFdURjo6VmVjdG9y
PExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBMYXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSwg
ZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>108184</attachid>
            <date>2011-09-21 11:06:40 -0700</date>
            <delta_ts>2011-09-22 21:53:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67432-20110921110523.patch</filename>
            <type>text/plain</type>
            <size>20499</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTU2NDkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2ZGUwNjc0NjM0ZGY3ODFjZmYzMmI1
N2M5ZTQ2ZGJjMzcyYTViZWQ3Li5hNjk3YzhmYWNmMGI4YTZkN2RjM2E2ZDI2Yjk2NmU1OWYyMGVj
ZjNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMjEgIFRvbnkgQ2hhbmcgIDx0b255
QGNocm9taXVtLm9yZz4KKworICAgICAgICBpbXBsZW1lbnQgLXdlYmtpdC1mbGV4LW9yZGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzQzMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9mbGV4
Ym94L2ZsZXgtb3JkZXItZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2ZsZXhi
b3gvZmxleC1vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvZmxleGJv
eC9mbGV4LW9yZGVyLmh0bWw6IEFkZGVkLgorCiAyMDExLTA5LTIxICBWc2V2b2xvZCBWbGFzb3Yg
IDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGNsZWFyIHJl
c291cmNlIGFnZW50IHJlc291cmNlIGNhY2hlIHVwb24gcmVzb3VyY2UgYWdlbnQncyBkaXNhYmxl
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtb3JkZXItZXhwZWN0
ZWQucG5nIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtb3JkZXItZXhwZWN0ZWQucG5n
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmZiNGM3YWU4NDBmNGUwZDRlZjc0YTNjMGFhNzVlOWVhMDU2NTM0NDEKR0lU
IGJpbmFyeSBwYXRjaApsaXRlcmFsIDMwMzAKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2
WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhgb2s8bX0/b1QhdGh3CnoheFc9NTw1V31RRy1GRjZXNk0r
bjFMTCUkPGZKcXN2IW88TGdHNjc9bjtaLWIrIT54T2p2KkN1LXJqTlNKcmNtZgp6ZE5BZHVHZ29U
PiRKRzVRUlZnUHxJZXFCVW05TDNeLWdNOTB3cWZlTG15QnpeYDAqeiEtdjUlM2YjRWlYNG54Qz8K
ejE1NkFab0NDcVFgK1V3elVJdkVNSX0jV2ZqPEFSXklRUzQ/eWdSTDJVaVdhZSt5U3JpVWxfdXdt
YX1ofCRXNFNjCnpWdkh0ViVeU1B0S0tUcGA1bDMwTTg1R251RmZiJUI7YilZXiVrQktrZUlNazVX
JFlVK1M9JT1CI3RAOzY3XjVqcgp6Xlc4R05pa2Fibm1SPHd7Z0pCfnBnTWN1OCM+VV5EUFJ4en0w
ckcoe0ZrIygkJChad2BpTGY/ZWpIVz0lPyg+JEgKenI1UEIpM0ooJlFzUDlnOWZBe0FRYUBKNTVB
QmVud2teeWhqb3x9MShmbmhAenY4bnNiS0FXUUY7YD4wRStsTjE0CnpYP1ljY15pQmVLaVRuZ2xE
M2ApYmVwaF8lM21aZDJEQUIzPWBfcVptYCM8O3NlVU0ob3B1UDdwXk5rYjRXLTFDJgp6S0I0Uzd6
aiZFQjFIK219I0hRfXVgdSVyKXcmbndVVjApUTQ7XmticTE4JjQtRGhnNlEhUiRLNmNyUFBFZiso
QDYKemAkbGMkbFhMbnRBUm8qRzdQIy1mRnFqbilvMmdJfEdnYSVDNW41JT9FX0lLWmpLOHVUNFdI
NVFmd2J0cEBoZzlKCldzckhvcVp2fHxxR2tDaUN4dlg8YVhhV0V3aWtEUlkKCmxpdGVyYWwgMApI
Y21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9y
ZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9yZGVyLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MDU3NTU3NmU0MjAyYmJhY2ViMzMzNDFmNTFiYjBkNjM1
MDAxODFmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgt
b3JkZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1lvdSBzaG91bGQgc2VlIGlkZW50aWNh
bCBncmVlbiBiYXJzIGdvaW5nIGZyb20gbGlnaHQgZ3JlZW4gKGxlZnQpIHRvIGRhcmsgZ3JlZW4g
KHJpZ2h0KS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LW9yZGVy
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRlci5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjJjMjU1MTU5ZTBhOThjYjBmYTRhMWEzZDVmZTc0ZGU3YTg4ODE4YjkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1vcmRlci5odG1sCkBAIC0wLDAg
KzEsMTE2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHN0eWxlPgorYm9keSB7CisgICAg
bWFyZ2luOiAwOworfQorLmhvcml6b250YWwtYm94IGRpdiB7CisgICAgaGVpZ2h0OiAzMHB4Owor
ICAgIGJvcmRlcjogMDsKKyAgICBtYXJnaW4tYm90dG9tOiAxMHB4OworfQorCisuZmlyc3Qgewor
ICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7Cit9Cisuc2Vjb25kIHsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yOiAjMGQwOworfQorLnRoaXJkIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkwOwor
fQorLmZvdXJ0aCB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2MDsKK30KKy5maWZ0aCB7Cisg
ICAgYmFja2dyb3VuZC1jb2xvcjogIzAzMDsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgoraWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KHRydWUpOworPC9zY3JpcHQ+Cis8Ym9keT4KKworPGRpdiBzdHlsZT0iZGlzcGxheTog
LXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJm
aXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6
IDEiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1m
bGV4KDEpOyI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkIiAgc3R5bGU9IndpZHRoOiAtd2Vi
a2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMyI+PC9kaXY+CisgIDxkaXYgY2xhc3M9
ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRl
cjogMjAiPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgc3R5bGU9ImRpc3BsYXk6IC13ZWJraXQtZmxl
eGJveCIgY2xhc3M9Imhvcml6b250YWwtYm94Ij4KKyAgPGRpdiBjbGFzcz0iZm91cnRoIiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiA0Ij48L2Rpdj4K
KyAgPGRpdiBjbGFzcz0idGhpcmQiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdl
YmtpdC1mbGV4LW9yZGVyOiAzIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyIj48L2Rpdj4KKyAg
PGRpdiBjbGFzcz0iZmlyc3QiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtp
dC1mbGV4LW9yZGVyOiAxIj48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFRoZSBleGFtcGxlIGZyb20g
dGhlIHNwZWMuIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFz
cz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIiPjwvZGl2PgorICA8ZGl2IGNs
YXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKyAgPGRp
diBjbGFzcz0iZm91cnRoIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1m
bGV4LW9yZGVyOiAyIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0id2lkdGg6
IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAxIj48L2Rpdj4KKzwvZGl2Pgor
Cis8ZGl2IHN0eWxlPSJkaXNwbGF5OiAtd2Via2l0LWZsZXhib3giIGNsYXNzPSJob3Jpem9udGFs
LWJveCI+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgo
MSk7IC13ZWJraXQtZmxleC1vcmRlcjogMiI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGly
ZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0i
Zmlyc3QiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVy
OiAtMTAiPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgc3R5bGU9ImRpc3BsYXk6IC13ZWJraXQtZmxl
eGJveCIgY2xhc3M9Imhvcml6b250YWwtYm94Ij4KKyAgPGRpdiBjbGFzcz0iZm91cnRoIiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAyMDAwMDAwMDAw
Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxl
eCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAxMDAwMDAwMDAwIj48L2Rpdj4KKyAgPGRpdiBjbGFz
cz0idGhpcmQiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9y
ZGVyOiAxMDAwMDAwMDAwIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0iZmlyc3QiICBzdHlsZT0id2lk
dGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAtMTAwMDAwMDAwMCI+PC9k
aXY+Cis8L2Rpdj4KKworPCEtLSBGbG9hdGluZyBudW1iZXJzIGFyZSBpZ25vcmVkIGFuZCB3ZSB1
c2UgdGhlIGRlZmF1bHQgb2YgMSBpbnN0ZWFkLiAtLT4KKzxkaXYgc3R5bGU9ImRpc3BsYXk6IC13
ZWJraXQtZmxleGJveCIgY2xhc3M9Imhvcml6b250YWwtYm94Ij4KKyAgPGRpdiBjbGFzcz0ic2Vj
b25kIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVyOiAy
LjUiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1m
bGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDIiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJz
dCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IC0x
Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmQiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxl
eCgxKSI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4
Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJzZWNvbmQiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDAiPjwvZGl2Pgor
ICA8ZGl2IGNsYXNzPSJmaXJzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJr
aXQtZmxleC1vcmRlcjogLTEiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3
aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDEiPjwvZGl2PgorICA8
ZGl2IGNsYXNzPSJmb3VydGgiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKSI+PC9kaXY+
Cis8L2Rpdj4KKworPCEtLSBWYWx1ZXMgZ3JlYXRlciB0aGFuIHdoYXQgY2FuIGJlIHN0b3JlZCBp
biBhbiBpbnQgYXJlIGNsYW1wZWQgZnJvbQorICAgICAtMiwxNDcsNDgzLDY0NiAoaW50IG1pbiAr
IDIpIHRvIDIsMTQ3LDQ4Myw2NDcuIC0tPgorPGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1m
bGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDQwMDAwMDAw
MDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1m
bGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDMwMDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNs
YXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyI+PC9kaXY+CisgIDxk
aXYgY2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQt
ZmxleC1vcmRlcjogMjE0NzQ4MzY0NiI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBzdHlsZT0iZGlz
cGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPgorICA8ZGl2IGNs
YXNzPSJzZWNvbmQiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgt
b3JkZXI6IDQwMDAwMDAwMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3
aWR0aDogLXdlYmtpdC1mbGV4KDEpOyAtd2Via2l0LWZsZXgtb3JkZXI6IDMwMDAwMDAwMDAiPjwv
ZGl2PgorICA8ZGl2IGNsYXNzPSJmaXJzdCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEp
OyI+PC9kaXY+CisgIDxkaXYgY2xhc3M9ImZvdXJ0aCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZs
ZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogMjE0NzQ4MzY0NyI+PC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBzdHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1i
b3giPgorICA8ZGl2IGNsYXNzPSJ0aGlyZCIgIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEp
OyAtd2Via2l0LWZsZXgtb3JkZXI6IC0yMTQ3NDgzNjQ1Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0i
Zmlyc3QiICBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKTsgLXdlYmtpdC1mbGV4LW9yZGVy
OiAtMjE0NzQ4MzY0NiI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZCIgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWZsZXgoMSk7IC13ZWJraXQtZmxleC1vcmRlcjogLTIxNDc0ODM2NDciPjwvZGl2
PgorICA8ZGl2IGNsYXNzPSJmb3VydGgiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEpOyI+
PC9kaXY+Cis8L2Rpdj4KKworPCEtLSBUaGlzIHNob3VsZCBub3QgY3Jhc2guIC0tPgorPGRpdiBz
dHlsZT0iZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94IiBjbGFzcz0iaG9yaXpvbnRhbC1ib3giPjwv
ZGl2PgorCis8ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDogLTEwMDAwcHg7Ij5Z
b3Ugc2hvdWxkIHNlZSBpZGVudGljYWwgZ3JlZW4gYmFycyBnb2luZyBmcm9tIGxpZ2h0IGdyZWVu
CisobGVmdCkgdG8gZGFyayBncmVlbiAocmlnaHQpLjwvZGl2PgorCis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKaW5kZXggZTY1ZDU3ZWQ0MWZlYzIzMzAxODNhNGY3NjczODU5ZTE2ZTVkNDVjNS4u
Y2EwNTRkOGQ5ZDdkYTA1NjNkYTVjZTU3MWUxZmM2NWE3Zjc4ODVjNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDQyIEBACisyMDExLTA5LTIxICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgaW1wbGVtZW50IC13ZWJraXQtZmxleC1vcmRlcgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc0MzIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBmbGV4LW9yZGVyIGNhbiBiZSBhbiBpbnQg
KGluY2x1ZGluZyBuZWdhdGl2ZSksIGJ1dCB3ZSBkaXNhbGxvdyB0aGUgdHdvCisgICAgICAgIHNt
YWxsZXN0IHZhbHVlcyBzbyB3ZSBjYW4gcHV0IHRoZSBudW1iZXJzIGludG8gYSBoYXNoIHNldC4K
KworICAgICAgICBBbHNvLCBjcmVhdGUgdHdvIGl0ZXJhdG9yczogb25lIHRoYXQgZ29lcyBpbiBy
ZW5kZXIgdHJlZSBvcmRlciAod2UgdXNlCisgICAgICAgIHRoaXMgZm9yIHRoZSBmaXJzdCBwYXNz
IGFuZCB0byBjb2xsZWN0IHRoZSBwb3NzaWJsZSBmbGV4IG9yZGVyIHZhbHVlcykKKyAgICAgICAg
YW5kIG9uZSB0aGF0IGdvZXMgaW4gZmxleCBvcmRlci4KKworICAgICAgICBUZXN0OiBjc3MzL2Zs
ZXhib3gvZmxleC1vcmRlci5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VWYWx1ZSk6CisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZsZXhPcmRlckhh
c2hUcmFpdHM6OmVtcHR5VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6RmxleE9yZGVySGFzaFRy
YWl0czo6Y29uc3RydWN0RGVsZXRlZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkZsZXhPcmRl
ckhhc2hUcmFpdHM6OmlzRGVsZXRlZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZs
ZXhpYmxlQm94OjpUcmVlT3JkZXJJdGVyYXRvcjo6VHJlZU9yZGVySXRlcmF0b3IpOiBBIHNpbXBs
ZSBpdGVyYXRvcgorICAgICAgICAgICAgdGhhdCBnb2VzIGluIHJlbmRlciB0cmVlIG9yZGVyLgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OlRyZWVPcmRlckl0ZXJhdG9yOjpu
ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpUcmVlT3JkZXJJdGVy
YXRvcjo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OlRyZWVP
cmRlckl0ZXJhdG9yOjpmbGV4T3JkZXJWYWx1ZXMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
RmxleGlibGVCb3g6OkZsZXhPcmRlckl0ZXJhdG9yOjpGbGV4T3JkZXJJdGVyYXRvcik6IEFuIGl0
ZXJhdG9yIHRoYXQKKyAgICAgICAgICAgIGdvZXMgaW4gZmxleC1vcmRlciBvcmRlci4gIENyZWF0
aW5nIHRoaXMgaW52b2x2ZXMgc29ydGluZywgc28gb25seSBjcmVhdGUgaXQgb25jZQorICAgICAg
ICAgICAgYW5kIHBhc3MgaXQgYXJvdW5kLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGli
bGVCb3g6OkZsZXhPcmRlckl0ZXJhdG9yOjpmaXJzdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJGbGV4aWJsZUJveDo6RmxleE9yZGVySXRlcmF0b3I6Om5leHQpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyRmxleGlibGVCb3g6OkZsZXhPcmRlckl0ZXJhdG9yOjpyZXNldCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0SG9yaXpvbnRhbEJsb2NrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94Ojpjb21wdXRlUHJlZmVycmVkTG9naWNh
bFdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpydW5GcmVlU3Bh
Y2VBbGxvY2F0aW9uQWxnb3JpdGhtSW5saW5lRGlyZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxkcmVuSW5saW5lRGlyZWN0aW9u
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaDoKKwogMjAxMS0wOS0y
MSAgVnNldm9sb2QgVmxhc292ICA8dnNldmlrQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIg
SW5zcGVjdG9yOiBjbGVhciByZXNvdXJjZSBhZ2VudCByZXNvdXJjZSBjYWNoZSB1cG9uIHJlc291
cmNlIGFnZW50J3MgZGlzYWJsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
YXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggNTE1NDgy
ZDFjZDc0ZTBmZWZiMjFjMDc1OWZhNWRiMTUwNWVhODc2Ny4uMTllYzE2ZDJhMzczYmZiYzNmZWVl
OGUyNzU4NTE5MmI5YzlmYzBjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTE1NzQs
NyArMTU3NCwxMiBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShpbnQgcHJvcElkLCBib29s
IGltcG9ydGFudCkKICAgICAgICAgYnJlYWs7CiAjaWYgRU5BQkxFKENTUzNfRkxFWEJPWCkKICAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0RmxleE9yZGVyOgotICAgICAgICB2YWxpZFByaW1pdGl2
ZSA9IHZhbGlkVW5pdCh2YWx1ZSwgRkludGVnZXIsIHRydWUpOworICAgICAgICBpZiAodmFsaWRV
bml0KHZhbHVlLCBGSW50ZWdlciwgdHJ1ZSkpIHsKKyAgICAgICAgICAgIC8vIFdlIHJlc3RyaWN0
IHRoZSBzbWFsbGVzdCB2YWx1ZSB0byBpbnQgbWluICsgMiBiZWNhdXNlIHdlIHVzZSBpbnQgbWlu
IGFuZCBpbnQgbWluICsgMSBhcyBzcGVjaWFsIHZhbHVlcyBpbiBhIGhhc2ggc2V0LgorICAgICAg
ICAgICAgcGFyc2VkVmFsdWUgPSBwcmltaXRpdmVWYWx1ZUNhY2hlKCktPmNyZWF0ZVZhbHVlKG1h
eChzdGF0aWNfY2FzdDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWluKCkgKyAy
KSwgdmFsdWUtPmZWYWx1ZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU6OlVu
aXRUeXBlcz4odmFsdWUtPnVuaXQpKTsKKyAgICAgICAgICAgIG1fdmFsdWVMaXN0LT5uZXh0KCk7
CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZs
ZXhQYWNrOgogICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IGlkID09IENTU1ZhbHVlU3RhcnQgfHwg
aWQgPT0gQ1NTVmFsdWVFbmQgfHwgaWQgPT0gQ1NTVmFsdWVDZW50ZXIgfHwgaWQgPT0gQ1NTVmFs
dWVKdXN0aWZ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZs
ZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5jcHAKaW5kZXggYjVjODZhZDhiMWNkMDA4M2JmMTRjMzJiNDU2MmJlMWU0Mjk1OTE5NC4uYzk5
NWEyM2E5YWQyN2YxYTQzNmRkYTE5NzgxMTA5ZDhjN2M0YmEzZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCkBAIC0zNSw5ICszNSwyMSBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFJlbmRlckZsZXhpYmxlQm94OjpGbGV4aWJs
ZUJveEl0ZXJhdG9yIHsKKy8vIE5vcm1hbGx5LCAtMSBhbmQgMCBhcmUgbm90IHZhbGlkIGluIGEg
SGFzaFNldCwgYnV0IHRoZXNlIGFyZSByZWxhdGl2ZWx5IGxpa2VseSBmbGV4LW9yZGVyIHZhbHVl
cy4gSW5zdGVhZCwKKy8vIHdlIG1ha2UgdGhlIHR3byBzbWFsbGVzdCBpbnQgdmFsdWVzIGludmFs
aWQgZmxleC1vcmRlciB2YWx1ZXMgKGluIHRoZSBjc3MgcGFyc2VyIGNvZGUgd2UgY2xhbXAgdGhl
bSB0bworLy8gaW50IG1pbiArIDIpLgorc3RydWN0IEZsZXhPcmRlckhhc2hUcmFpdHMgOiBXVEY6
OkdlbmVyaWNIYXNoVHJhaXRzPGludD4geworICAgIHN0YXRpYyBjb25zdCBib29sIGVtcHR5VmFs
dWVJc1plcm8gPSBmYWxzZTsKKyAgICBzdGF0aWMgaW50IGVtcHR5VmFsdWUoKSB7IHJldHVybiBz
dGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1pbigpOyB9CisgICAgc3RhdGljIHZvaWQgY29uc3Ry
dWN0RGVsZXRlZFZhbHVlKGludCYgc2xvdCkgeyBzbG90ID0gc3RkOjpudW1lcmljX2xpbWl0czxp
bnQ+OjptaW4oKSArIDE7IH0KKyAgICBzdGF0aWMgYm9vbCBpc0RlbGV0ZWRWYWx1ZShpbnQgdmFs
dWUpIHsgcmV0dXJuIHZhbHVlID09IHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWluKCkgKyAx
OyB9Cit9OworCit0eXBlZGVmIEhhc2hTZXQ8aW50LCBEZWZhdWx0SGFzaDxpbnQ+OjpIYXNoLCBG
bGV4T3JkZXJIYXNoVHJhaXRzPiBGbGV4T3JkZXJIYXNoU2V0OworCitjbGFzcyBSZW5kZXJGbGV4
aWJsZUJveDo6VHJlZU9yZGVySXRlcmF0b3IgewogcHVibGljOgotICAgIGV4cGxpY2l0IEZsZXhp
YmxlQm94SXRlcmF0b3IoUmVuZGVyRmxleGlibGVCb3gqIGZsZXhpYmxlQm94KQorICAgIGV4cGxp
Y2l0IFRyZWVPcmRlckl0ZXJhdG9yKFJlbmRlckZsZXhpYmxlQm94KiBmbGV4aWJsZUJveCkKICAg
ICAgICAgOiBtX2ZsZXhpYmxlQm94KGZsZXhpYmxlQm94KQogICAgICAgICAsIG1fY3VycmVudENo
aWxkKDApCiAgICAgewpAQCAtNTYsNiArNjgsNjUgQEAgcHVibGljOgogICAgICAgICB3aGlsZSAo
Y2hpbGQgJiYgIWNoaWxkLT5pc0JveCgpKQogICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC0+bmV4
dFNpYmxpbmcoKTsKIAorICAgICAgICBpZiAoY2hpbGQpCisgICAgICAgICAgICBtX2ZsZXhPcmRl
clZhbHVlcy5hZGQoY2hpbGQtPnN0eWxlKCktPmZsZXhPcmRlcigpKTsKKworICAgICAgICBtX2N1
cnJlbnRDaGlsZCA9IHRvUmVuZGVyQm94KGNoaWxkKTsKKyAgICAgICAgcmV0dXJuIG1fY3VycmVu
dENoaWxkOworICAgIH0KKworICAgIHZvaWQgcmVzZXQoKQorICAgIHsKKyAgICAgICAgbV9jdXJy
ZW50Q2hpbGQgPSAwOworICAgIH0KKworICAgIGNvbnN0IEZsZXhPcmRlckhhc2hTZXQmIGZsZXhP
cmRlclZhbHVlcygpCisgICAgeworICAgICAgICByZXR1cm4gbV9mbGV4T3JkZXJWYWx1ZXM7Cisg
ICAgfQorCitwcml2YXRlOgorICAgIFJlbmRlckZsZXhpYmxlQm94KiBtX2ZsZXhpYmxlQm94Owor
ICAgIFJlbmRlckJveCogbV9jdXJyZW50Q2hpbGQ7CisgICAgRmxleE9yZGVySGFzaFNldCBtX2Zs
ZXhPcmRlclZhbHVlczsKK307CisKK2NsYXNzIFJlbmRlckZsZXhpYmxlQm94OjpGbGV4T3JkZXJJ
dGVyYXRvciB7CitwdWJsaWM6CisgICAgRmxleE9yZGVySXRlcmF0b3IoUmVuZGVyRmxleGlibGVC
b3gqIGZsZXhpYmxlQm94LCBjb25zdCBGbGV4T3JkZXJIYXNoU2V0JiBmbGV4T3JkZXJWYWx1ZXMp
CisgICAgICAgIDogbV9mbGV4aWJsZUJveChmbGV4aWJsZUJveCkKKyAgICAgICAgLCBtX2N1cnJl
bnRDaGlsZCgwKQorICAgICAgICAsIG1fb3JkZXJWYWx1ZXNJdGVyYXRvcigwKQorICAgIHsKKyAg
ICAgICAgY29weVRvVmVjdG9yKGZsZXhPcmRlclZhbHVlcywgbV9vcmRlclZhbHVlcyk7CisgICAg
ICAgIHN0ZDo6c29ydChtX29yZGVyVmFsdWVzLmJlZ2luKCksIG1fb3JkZXJWYWx1ZXMuZW5kKCkp
OworICAgIH0KKworICAgIFJlbmRlckJveCogZmlyc3QoKQorICAgIHsKKyAgICAgICAgcmVzZXQo
KTsKKyAgICAgICAgcmV0dXJuIG5leHQoKTsKKyAgICB9CisKKyAgICBSZW5kZXJCb3gqIG5leHQo
KQorICAgIHsKKyAgICAgICAgUmVuZGVyT2JqZWN0KiBjaGlsZCA9IG1fY3VycmVudENoaWxkOwor
ICAgICAgICBkbyB7CisgICAgICAgICAgICBpZiAoIWNoaWxkKSB7CisgICAgICAgICAgICAgICAg
aWYgKG1fb3JkZXJWYWx1ZXNJdGVyYXRvciA9PSBtX29yZGVyVmFsdWVzLmVuZCgpKQorICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICBpZiAobV9vcmRlclZhbHVl
c0l0ZXJhdG9yKSB7CisgICAgICAgICAgICAgICAgICAgICsrbV9vcmRlclZhbHVlc0l0ZXJhdG9y
OworICAgICAgICAgICAgICAgICAgICBpZiAobV9vcmRlclZhbHVlc0l0ZXJhdG9yID09IG1fb3Jk
ZXJWYWx1ZXMuZW5kKCkpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgbV9vcmRlclZhbHVlc0l0ZXJh
dG9yID0gbV9vcmRlclZhbHVlcy5iZWdpbigpOworCisgICAgICAgICAgICAgICAgY2hpbGQgPSBt
X2ZsZXhpYmxlQm94LT5maXJzdENoaWxkKCk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAg
ICAgICAgICBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpOworICAgICAgICB9IHdoaWxlICgh
Y2hpbGQgfHwgIWNoaWxkLT5pc0JveCgpIHx8IGNoaWxkLT5zdHlsZSgpLT5mbGV4T3JkZXIoKSAh
PSAqbV9vcmRlclZhbHVlc0l0ZXJhdG9yKTsKKwogICAgICAgICBtX2N1cnJlbnRDaGlsZCA9IHRv
UmVuZGVyQm94KGNoaWxkKTsKICAgICAgICAgcmV0dXJuIG1fY3VycmVudENoaWxkOwogICAgIH0K
QEAgLTYzLDExICsxMzQsMTQgQEAgcHVibGljOgogICAgIHZvaWQgcmVzZXQoKQogICAgIHsKICAg
ICAgICAgbV9jdXJyZW50Q2hpbGQgPSAwOworICAgICAgICBtX29yZGVyVmFsdWVzSXRlcmF0b3Ig
PSAwOwogICAgIH0KIAogcHJpdmF0ZToKICAgICBSZW5kZXJGbGV4aWJsZUJveCogbV9mbGV4aWJs
ZUJveDsKICAgICBSZW5kZXJCb3gqIG1fY3VycmVudENoaWxkOworICAgIFZlY3RvcjxpbnQ+IG1f
b3JkZXJWYWx1ZXM7CisgICAgVmVjdG9yPGludD46OmNvbnN0X2l0ZXJhdG9yIG1fb3JkZXJWYWx1
ZXNJdGVyYXRvcjsKIH07CiAKIApAQCAtMTUyLDE5ICsyMjYsMjAgQEAgdm9pZCBSZW5kZXJGbGV4
aWJsZUJveDo6bGF5b3V0SW5saW5lRGlyZWN0aW9uKGJvb2wgcmVsYXlvdXRDaGlsZHJlbikKICAg
ICBMYXlvdXRVbml0IHByZWZlcnJlZExvZ2ljYWxXaWR0aDsKICAgICBmbG9hdCB0b3RhbFBvc2l0
aXZlRmxleGliaWxpdHk7CiAgICAgZmxvYXQgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5OwotICAg
IEZsZXhpYmxlQm94SXRlcmF0b3IgaXRlcmF0b3IodGhpcyk7CisgICAgVHJlZU9yZGVySXRlcmF0
b3IgdHJlZUl0ZXJhdG9yKHRoaXMpOwogCi0gICAgY29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0
aChyZWxheW91dENoaWxkcmVuLCBpdGVyYXRvciwgcHJlZmVycmVkTG9naWNhbFdpZHRoLCB0b3Rh
bFBvc2l0aXZlRmxleGliaWxpdHksIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSk7CisgICAgY29t
cHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aChyZWxheW91dENoaWxkcmVuLCB0cmVlSXRlcmF0b3Is
IHByZWZlcnJlZExvZ2ljYWxXaWR0aCwgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCB0b3RhbE5l
Z2F0aXZlRmxleGliaWxpdHkpOwogICAgIExheW91dFVuaXQgYXZhaWxhYmxlRnJlZVNwYWNlID0g
Y29udGVudExvZ2ljYWxXaWR0aCgpIC0gcHJlZmVycmVkTG9naWNhbFdpZHRoOwogCisgICAgRmxl
eE9yZGVySXRlcmF0b3IgZmxleEl0ZXJhdG9yKHRoaXMsIHRyZWVJdGVyYXRvci5mbGV4T3JkZXJW
YWx1ZXMoKSk7CiAgICAgSW5mbGV4aWJsZUZsZXhJdGVtU2l6ZSBpbmZsZXhpYmxlSXRlbXM7CiAg
ICAgV1RGOjpWZWN0b3I8TGF5b3V0VW5pdD4gY2hpbGRTaXplczsKLSAgICB3aGlsZSAoIXJ1bkZy
ZWVTcGFjZUFsbG9jYXRpb25BbGdvcml0aG1JbmxpbmVEaXJlY3Rpb24oYXZhaWxhYmxlRnJlZVNw
YWNlLCB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwg
aW5mbGV4aWJsZUl0ZW1zLCBjaGlsZFNpemVzKSkgeworICAgIHdoaWxlICghcnVuRnJlZVNwYWNl
QWxsb2NhdGlvbkFsZ29yaXRobUlubGluZURpcmVjdGlvbihmbGV4SXRlcmF0b3IsIGF2YWlsYWJs
ZUZyZWVTcGFjZSwgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5LCB0b3RhbE5lZ2F0aXZlRmxleGli
aWxpdHksIGluZmxleGlibGVJdGVtcywgY2hpbGRTaXplcykpIHsKICAgICAgICAgQVNTRVJUKHRv
dGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA+PSAwICYmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSA+
PSAwKTsKICAgICAgICAgQVNTRVJUKGluZmxleGlibGVJdGVtcy5zaXplKCkgPiAwKTsKICAgICB9
CiAKLSAgICBsYXlvdXRBbmRQbGFjZUNoaWxkcmVuSW5saW5lRGlyZWN0aW9uKGNoaWxkU2l6ZXMs
IGF2YWlsYWJsZUZyZWVTcGFjZSwgdG90YWxQb3NpdGl2ZUZsZXhpYmlsaXR5KTsKKyAgICBsYXlv
dXRBbmRQbGFjZUNoaWxkcmVuSW5saW5lRGlyZWN0aW9uKGZsZXhJdGVyYXRvciwgY2hpbGRTaXpl
cywgYXZhaWxhYmxlRnJlZVNwYWNlLCB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHkpOwogCiAgICAg
Ly8gRklYTUU6IEhhbmRsZSBkaXN0cmlidXRpb24gb2YgY3Jvc3MtYXhpcyBzcGFjZSAodGhpcmQg
ZGlzdHJpYnV0aW9uIHJvdW5kKS4KIH0KQEAgLTE3OSw3ICsyNTQsNyBAQCBmbG9hdCBSZW5kZXJG
bGV4aWJsZUJveDo6bG9naWNhbE5lZ2F0aXZlRmxleEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQp
CiAgICAgcmV0dXJuIGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBjaGlsZC0+c3R5bGUoKS0+
ZmxleGJveFdpZHRoTmVnYXRpdmVGbGV4KCkgOiBjaGlsZC0+c3R5bGUoKS0+ZmxleGJveEhlaWdo
dE5lZ2F0aXZlRmxleCgpOwogfQogCi12b2lkIFJlbmRlckZsZXhpYmxlQm94Ojpjb21wdXRlUHJl
ZmVycmVkTG9naWNhbFdpZHRoKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgRmxleGlibGVCb3hJdGVy
YXRvciYgaXRlcmF0b3IsIExheW91dFVuaXQmIHByZWZlcnJlZExvZ2ljYWxXaWR0aCwgZmxvYXQm
IHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0
eSkKK3ZvaWQgUmVuZGVyRmxleGlibGVCb3g6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgo
Ym9vbCByZWxheW91dENoaWxkcmVuLCBUcmVlT3JkZXJJdGVyYXRvciYgaXRlcmF0b3IsIExheW91
dFVuaXQmIHByZWZlcnJlZExvZ2ljYWxXaWR0aCwgZmxvYXQmIHRvdGFsUG9zaXRpdmVGbGV4aWJp
bGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSkKIHsKICAgICBwcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSAwOwogICAgIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSA9IHRvdGFsTmVn
YXRpdmVGbGV4aWJpbGl0eSA9IDA7CkBAIC0yMTYsOSArMjkxLDggQEAgdm9pZCBSZW5kZXJGbGV4
aWJsZUJveDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aChib29sIHJlbGF5b3V0Q2hpbGRy
ZW4sIEZsZXgKIH0KIAogLy8gUmV0dXJucyB0cnVlIGlmIHdlIHN1Y2Nlc3NmdWxseSByYW4gdGhl
IGFsZ29yaXRobSBhbmQgc2l6ZWQgdGhlIGZsZXggaXRlbXMuCi1ib29sIFJlbmRlckZsZXhpYmxl
Qm94OjpydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSW5saW5lRGlyZWN0aW9uKExheW91
dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQmIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0
eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwgSW5mbGV4aWJsZUZsZXhJdGVtU2l6
ZSYgaW5mbGV4aWJsZUl0ZW1zLCBXVEY6OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcykK
K2Jvb2wgUmVuZGVyRmxleGlibGVCb3g6OnJ1bkZyZWVTcGFjZUFsbG9jYXRpb25BbGdvcml0aG1J
bmxpbmVEaXJlY3Rpb24oRmxleE9yZGVySXRlcmF0b3ImIGl0ZXJhdG9yLCBMYXlvdXRVbml0JiBh
dmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHksIGZsb2F0
JiB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIEluZmxleGlibGVGbGV4SXRlbVNpemUmIGluZmxl
eGlibGVJdGVtcywgV1RGOjpWZWN0b3I8TGF5b3V0VW5pdD4mIGNoaWxkU2l6ZXMpCiB7Ci0gICAg
RmxleGlibGVCb3hJdGVyYXRvciBpdGVyYXRvcih0aGlzKTsKICAgICBjaGlsZFNpemVzLmNsZWFy
KCk7CiAKICAgICBMYXlvdXRVbml0IGZsZXhib3hBdmFpbGFibGVMb2dpY2FsV2lkdGggPSBhdmFp
bGFibGVMb2dpY2FsV2lkdGgoKTsKQEAgLTI3Myw5ICszNDcsOCBAQCB2b2lkIFJlbmRlckZsZXhp
YmxlQm94OjpzZXRMb2dpY2FsT3ZlcnJpZGVTaXplKFJlbmRlckJveCogY2hpbGQsIExheW91dFVu
aXQgY2hpbAogICAgICAgICBjaGlsZC0+aXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IGNoaWxk
LT5zZXRPdmVycmlkZUhlaWdodChjaGlsZFByZWZlcnJlZFNpemUpIDogY2hpbGQtPnNldE92ZXJy
aWRlV2lkdGgoY2hpbGRQcmVmZXJyZWRTaXplKTsKIH0KIAotdm9pZCBSZW5kZXJGbGV4aWJsZUJv
eDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihjb25zdCBXVEY6OlZlY3Rv
cjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcywgTGF5b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2Us
IGZsb2F0IHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSkKK3ZvaWQgUmVuZGVyRmxleGlibGVCb3g6
OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5JbmxpbmVEaXJlY3Rpb24oRmxleE9yZGVySXRlcmF0b3Im
IGl0ZXJhdG9yLCBjb25zdCBXVEY6OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcywgTGF5
b3V0VW5pdCBhdmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0IHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0
eSkKIHsKLSAgICBGbGV4aWJsZUJveEl0ZXJhdG9yIGl0ZXJhdG9yKHRoaXMpOwogICAgIExheW91
dFVuaXQgc3RhcnRFZGdlID0gYm9yZGVyU3RhcnQoKSArIHBhZGRpbmdTdGFydCgpOwogCiAgICAg
aWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4
aWJpbGl0eSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
bGV4aWJsZUJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94
LmgKaW5kZXggMTNlMTIyMTMxNjczZTFhODg0YWE4NjRlODVlMzJhNTM3NDE4MjQxNy4uOGI3ZTZi
NGUwM2QyM2M1OTRmOTMyYjU3Mzg4ZmY0ODFmZDdhZDMzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmgKQEAgLTQ5LDcgKzQ5LDggQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBsYXlvdXRCbG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIGludCBw
YWdlTG9naWNhbEhlaWdodCA9IDAsIEJsb2NrTGF5b3V0UGFzcyA9IE5vcm1hbExheW91dFBhc3Mp
OwogCiBwcml2YXRlOgotICAgIGNsYXNzIEZsZXhpYmxlQm94SXRlcmF0b3I7CisgICAgY2xhc3Mg
VHJlZU9yZGVySXRlcmF0b3I7CisgICAgY2xhc3MgRmxleE9yZGVySXRlcmF0b3I7CiAgICAgdHlw
ZWRlZiBXVEY6Okhhc2hNYXA8Y29uc3QgUmVuZGVyQm94KiwgTGF5b3V0VW5pdD4gSW5mbGV4aWJs
ZUZsZXhJdGVtU2l6ZTsKIAogICAgIExheW91dFVuaXQgbG9naWNhbEJvcmRlckFuZFBhZGRpbmdX
aWR0aEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQpOwpAQCAtNjMsMTAgKzY0LDEwIEBAIHByaXZh
dGU6CiAgICAgZmxvYXQgbG9naWNhbFBvc2l0aXZlRmxleEZvckNoaWxkKFJlbmRlckJveCogY2hp
bGQpOwogICAgIGZsb2F0IGxvZ2ljYWxOZWdhdGl2ZUZsZXhGb3JDaGlsZChSZW5kZXJCb3gqIGNo
aWxkKTsKIAotICAgIHZvaWQgY29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aChib29sIHJlbGF5
b3V0Q2hpbGRyZW4sIEZsZXhpYmxlQm94SXRlcmF0b3ImLCBMYXlvdXRVbml0JiwgZmxvYXQmIHRv
dGFsUG9zaXRpdmVGbGV4aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSk7
Ci0gICAgYm9vbCBydW5GcmVlU3BhY2VBbGxvY2F0aW9uQWxnb3JpdGhtSW5saW5lRGlyZWN0aW9u
KExheW91dFVuaXQmIGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQmIHRvdGFsUG9zaXRpdmVGbGV4
aWJpbGl0eSwgZmxvYXQmIHRvdGFsTmVnYXRpdmVGbGV4aWJpbGl0eSwgSW5mbGV4aWJsZUZsZXhJ
dGVtU2l6ZSYsIFdURjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzKTsKKyAgICB2b2lk
IGNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgoYm9vbCByZWxheW91dENoaWxkcmVuLCBUcmVl
T3JkZXJJdGVyYXRvciYsIExheW91dFVuaXQmLCBmbG9hdCYgdG90YWxQb3NpdGl2ZUZsZXhpYmls
aXR5LCBmbG9hdCYgdG90YWxOZWdhdGl2ZUZsZXhpYmlsaXR5KTsKKyAgICBib29sIHJ1bkZyZWVT
cGFjZUFsbG9jYXRpb25BbGdvcml0aG1JbmxpbmVEaXJlY3Rpb24oRmxleE9yZGVySXRlcmF0b3Im
LCBMYXlvdXRVbml0JiBhdmFpbGFibGVGcmVlU3BhY2UsIGZsb2F0JiB0b3RhbFBvc2l0aXZlRmxl
eGliaWxpdHksIGZsb2F0JiB0b3RhbE5lZ2F0aXZlRmxleGliaWxpdHksIEluZmxleGlibGVGbGV4
SXRlbVNpemUmLCBXVEY6OlZlY3RvcjxMYXlvdXRVbml0PiYgY2hpbGRTaXplcyk7CiAgICAgdm9p
ZCBzZXRMb2dpY2FsT3ZlcnJpZGVTaXplKFJlbmRlckJveCogY2hpbGQsIExheW91dFVuaXQgY2hp
bGRQcmVmZXJyZWRTaXplKTsKLSAgICB2b2lkIGxheW91dEFuZFBsYWNlQ2hpbGRyZW5JbmxpbmVE
aXJlY3Rpb24oY29uc3QgV1RGOjpWZWN0b3I8TGF5b3V0VW5pdD4mIGNoaWxkU2l6ZXMsIExheW91
dFVuaXQgYXZhaWxhYmxlRnJlZVNwYWNlLCBmbG9hdCB0b3RhbFBvc2l0aXZlRmxleGliaWxpdHkp
OworICAgIHZvaWQgbGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihGbGV4T3Jk
ZXJJdGVyYXRvciYsIGNvbnN0IFdURjo6VmVjdG9yPExheW91dFVuaXQ+JiBjaGlsZFNpemVzLCBM
YXlvdXRVbml0IGF2YWlsYWJsZUZyZWVTcGFjZSwgZmxvYXQgdG90YWxQb3NpdGl2ZUZsZXhpYmls
aXR5KTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>