<?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>9213</bug_id>
          
          <creation_ts>2006-06-01 11:51:38 -0700</creation_ts>
          <short_desc>Absolutely positioned objects with relatively positioned inline containing blocks are rendered incorrectly</short_desc>
          <delta_ts>2006-12-16 12:48: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>Layout and Rendering</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>joost</cc>
    
    <cc>mike</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>44275</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-06-01 11:51:38 -0700</bug_when>
    <thetext>CSS 2.1 specifies that an absolutely positioned object may have a relatively positioned inline element as its containing block, but in such cases the equation for determining the bounds change from the ordanary.  Currently no browsers that I have tested fully implement the specified behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44278</commentid>
    <comment_count>1</comment_count>
      <attachid>8648</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-06-01 12:01:43 -0700</bug_when>
    <thetext>Created attachment 8648
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44355</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-06-02 02:10:37 -0700</bug_when>
    <thetext>Typo in the comments in two places:

&quot;relativly&quot; should be &quot;relatively&quot;

Should we be worried about the fact that this doesn&apos;t match other browsers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44357</commentid>
    <comment_count>3</comment_count>
    <who name="Joost de Valk (AlthA)">joost</who>
    <bug_when>2006-06-02 02:14:32 -0700</bug_when>
    <thetext>I think we should.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44419</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-06-02 13:34:10 -0700</bug_when>
    <thetext>I would be happy to make a quirks mode variation, but I am really unsure what we want to emulate from the other browsers.  Our current behavior does not match either Firefox or Opera (the only two I have access to), and I am not sure what we would want to mimic.  I will of course fix the typos, but I would also love to know what a desired quirks mode behavior would be.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44570</commentid>
    <comment_count>5</comment_count>
      <attachid>8683</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-06-03 14:23:43 -0700</bug_when>
    <thetext>Created attachment 8683
patch 2

Fixes the misspellings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44662</commentid>
    <comment_count>6</comment_count>
      <attachid>8683</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-06-04 11:53:22 -0700</bug_when>
    <thetext>Comment on attachment 8683
patch 2

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44694</commentid>
    <comment_count>7</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-06-04 14:57:15 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 8683 [edit])
&gt; r=me

There were no *-expected.txt results in this patch.  In the future, it would be helpful to have these test results included in the patch to make sure a local build is working properly before commit.  Thanks!
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44696</commentid>
    <comment_count>8</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-06-04 15:36:54 -0700</bug_when>
    <thetext>Committed revision 14727.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41727</commentid>
    <comment_count>9</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-12-16 12:48:48 -0800</bug_when>
    <thetext>*** Bug 5722 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8648</attachid>
            <date>2006-06-01 12:01:43 -0700</date>
            <delta_ts>2006-06-03 14:23:43 -0700</delta_ts>
            <desc>patch</desc>
            <filename>inlineabs2.diff</filename>
            <type>text/plain</type>
            <size>23114</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE0NjY2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDYtMDYtMDEgIFNhbSBXZWluaWcgIDxzYW0u
d2VpbmlnQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAtIHRlc3RzIGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hv
d19idWcuY2dpP2lkPTkyMTMKKyAgICAgICAgICBBYnNvbHV0ZWx5IHBvc2l0aW9uZWQgb2JqZWN0
cyB3aXRoIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBpbmxpbmUgCisgICAgICAgICAgY29udGFpbmlu
ZyBibG9ja3MgYXJlIHJlbmRlcmVkIGluY29ycmVjdGx5CisKKyAgICAgICAgKiBmYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHItMi5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHItMy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlu
bGluZS1sdHIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9h
YnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTMuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5s
aW5lLXNob3J0LWx0ci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9u
aW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9ydC1ydGwuaHRtbDogQWRkZWQuCisKIDIwMDYtMDYt
MDEgIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxlLmNvbT4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBoYXJyaXNvbgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlv
bmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtc2hvcnQtbHRyLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtc2hvcnQt
bHRyLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9u
aW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9ydC1sdHIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSw0MCBAQAorPGh0bWw+Cis8aGVhZD4KKyAgICA8c3R5bGU+CisgICAgICAgICNvdXRzaWRl
IHsKKyAgICAgICAgICAgb3V0bGluZTogMXB4IGRhc2hlZCByZWQ7CisgICAgICAgICAgIHdpZHRo
OiA2MDBweDsKKyAgICAgICAgfQorICAgICAgICAjY29udGFpbmluZ0Jsb2NrIHsgCisgICAgICAg
ICAgIGRpc3BsYXk6IGlubGluZTsKKyAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICAgICAgICAgbWFyZ2luOiAxMHB4
OworICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7CisgICAgICAgICAgIGJvcmRlcjogMXB4IHNv
bGlkIGdyZXk7CisgICAgICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIGJsdWU7CisgICAg
ICAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCBvcmFuZ2U7CisgICAgICAgIH0KKyAgICAg
ICAgI3Rlc3QgeworICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgICAgIHRv
cDogMDsKKyAgICAgICAgICAgbGVmdDogMDsKKyAgICAgICAgICAgd2lkdGg6IDEwMCU7CisgICAg
ICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNr
OworICAgICAgICB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBi
bGFjayBvdXRsaW5lIGJveCBzaG91bGQgc3RyZXRjaCBmcm9tIHRoZSBsZWZ0IDxzcGFuIHN0eWxl
PSJjb2xvcjogYmx1ZTsiPmJsdWU8L3NwYW4+IGJvcmRlciwgdG8gdGhlIHJpZ2h0IDxzcGFuIHN0
eWxlPSJjb2xvcjogb3JhbmdlOyI+b3JhbmdlPC9zcGFuPiBib3JkZXIuPC9wPgorICAgIDxwIGlk
PSJvdXRzaWRlIj4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAg
ICA8c3BhbiBpZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVy
LgorICAgICAgICAgICAgPGRpdiBpZD0idGVzdCI+PC9kaXY+CisgICAgICAgICAgICBkdWlzIGF1
dGUKKyAgICAgICAgPC9zcGFuPgorICAgICAgICBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0
LgorICAgIDwvcD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYmxv
Y2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLWx0ci0yLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUt
bHRyLTIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvYWJzb2x1dGUtaW4taW5saW5lLWx0ci0yLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsNDAgQEAKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZT4KKyAgICAjb3V0c2lkZSB7CisgICAg
ICAgb3V0bGluZTogMXB4IGRhc2hlZCByZWQ7CisgICAgICAgd2lkdGg6IDYwMHB4OworICAgIH0K
KyAgICAjY29udGFpbmluZ0Jsb2NrIHsgCisgICAgICAgZGlzcGxheTogaW5saW5lOworICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAg
ICAgICBtYXJnaW46IDEwcHg7CisgICAgICAgcGFkZGluZzogMCAxMHB4OworICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGdyZXk7CisgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgYmx1ZTsK
KyAgICAgICBib3JkZXItcmlnaHQ6IDIwcHggc29saWQgb3JhbmdlOworICAgIH0KKyAgICAjdGVz
dCB7CisgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgIGJvdHRvbTogMDsKKyAgICAg
ICByaWdodDogMDsKKyAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICBoZWlnaHQ6IDUwcHg7Cisg
ICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBvdXRsaW5lIGJveCBzaG91bGQgYmUgYSA1MHB4
IGJ5IDUwcHggc3F1YXJlIHdpdGggaXRzIGJvdHRvbSByaWdodCBjb3JuZXIgYW5jaG9yZWQgdG8g
dGhlIHJpZ2h0IDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+b3JhbmdlPC9zcGFuPiBib3Jk
ZXIgb24gdGhlIHRoaXJkIGxpbmUuPC9wPgorICAgIDxwIGlkPSJvdXRzaWRlIj4KKyAgICAgICAg
SUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAgICA8c3BhbiBpZD0iY29udGFpbmlu
Z0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2Nh
ZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHAgcXVpIG9mZmljaWEgZGVz
ZXJ1bnQgbW9sbGl0IGFuaW1lcXVzCisgICAgICAgICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4K
KyAgICAgICAgICAgIElMT1JFTSBpcHN1bSBkb2wgc0R1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiBy
ZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVn
aWF0IG51bGxhdAorICAgICAgICA8L3NwYW4+CisgICAgICAgIGR1aXMgYXV0ZSBpcnVyZSBkb2xv
ciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdC4KKyAgICA8L3A+Cis8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29s
dXRlLWluLWlubGluZS1ydGwtMy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
YmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLXJ0bC0zLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlu
bGluZS1ydGwtMy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQyIEBACis8aHRtbD4KKzxo
ZWFkPgorICA8c3R5bGU+CisgICAgI291dHNpZGUgeworICAgICAgICBkaXJlY3Rpb246IHJ0bDsK
KyAgICAgICAgdW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlOworICAgICAgICBvdXRsaW5lOiAx
cHggZGFzaGVkIHJlZDsKKyAgICAgICAgd2lkdGg6IDYwMHB4OworICAgIH0KKyAgICAjY29udGFp
bmluZ0Jsb2NrIHsgCisgICAgICAgIGRpc3BsYXk6IGlubGluZTsKKyAgICAgICAgcG9zaXRpb246
IHJlbGF0aXZlOworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICAgICAgbWFy
Z2luOiAxMHB4OworICAgICAgICBwYWRkaW5nOiAwIDEwcHg7CisgICAgICAgIGJvcmRlcjogMXB4
IHNvbGlkIGdyZXk7CisgICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIG9yYW5nZTsKKyAg
ICAgICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIGJsdWU7CisgICAgfQorICAgICN0ZXN0IHsK
KyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICB0b3A6IDA7CisgICAgICAgIHJp
Z2h0OiAwOworICAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICAgaGVpZ2h0OiA1MHB4OworICAg
ICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAgfQorICA8L3N0eWxlPgorPC9oZWFk
PgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91dGxpbmUgYm94IHNob3VsZCBiZSBhIDUwcHgg
YnkgNTBweCBzcXVhcmUgd2l0aCBpdHMgdG9wIHJpZ2h0IGNvcm5lciBhbmNob3JlZCB0byB0aGUg
cmlnaHQgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+Ymx1ZTwvc3Bhbj4gYm9yZGVyIG9uIHRo
ZSBmaXJzdCBsaW5lLjwvcD4KKyAgICA8cCBpZD0ib3V0c2lkZSI+CisgICAgICAgIElMb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldCwKKyAgICAgICAgPHNwYW4gaWQ9ImNvbnRhaW5pbmdCbG9jayI+
CisgICAgICAgICAgICBjb24gYSBwYXJpYXR1ci4gRXhjZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3Vw
aWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwIHF1aSBvZmZpY2lhIGRlc2VydW50IG1v
bGxpdCBhbmltZXF1cworICAgICAgICAgICAgPGRpdiBpZD0idGVzdCI+PC9kaXY+CisgICAgICAg
ICAgICBJTE9SRU0gaXBzdW0gZG9sIHNEdWlzIGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5k
ZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9sb3JlIGV1IGZ1Z2lhdCBudWxs
YXQKKyAgICAgICAgPC9zcGFuPgorICAgICAgICBkdWlzIGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVw
cmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQuCisgICAgPC9wPgorPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1p
bmxpbmUtbHRyLTMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bv
c2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHItMy5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtbHRy
LTMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0MCBAQAorPGh0bWw+Cis8aGVhZD4KKyAg
PHN0eWxlPgorICAgICNvdXRzaWRlIHsKKyAgICAgICBvdXRsaW5lOiAxcHggZGFzaGVkIHJlZDsK
KyAgICAgICB3aWR0aDogNjAwcHg7CisgICAgfQorICAgICNjb250YWluaW5nQmxvY2sgeyAKKyAg
ICAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAg
IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICBw
YWRkaW5nOiAwIDEwcHg7CisgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTsKKyAgICAgICBi
b3JkZXItbGVmdDogMjBweCBzb2xpZCBibHVlOworICAgICAgIGJvcmRlci1yaWdodDogMjBweCBz
b2xpZCBvcmFuZ2U7CisgICAgfQorICAgICN0ZXN0IHsKKyAgICAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CisgICAgICAgdG9wOiAwOworICAgICAgIGxlZnQ6IDA7CisgICAgICAgd2lkdGg6IDUwcHg7
CisgICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAgIG91dGxpbmU6IDVweCBzb2xpZCBibGFjazsK
KyAgICB9CisgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8cD5UaGUgYmxhY2sgb3V0
bGluZSBib3ggc2hvdWxkIGJlIGEgNTBweCBieSA1MHB4IHNxdWFyZSB3aXRoIGl0cyB0b3AgbGVm
dCBjb3JuZXIgYW5jaG9yZWQgdG8gdGhlIGxlZnQgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+
Ymx1ZTwvc3Bhbj4gYm9yZGVyIG9uIHRoZSBmaXJzdCBsaW5lLjwvcD4KKyAgICA8cCBpZD0ib3V0
c2lkZSI+CisgICAgICAgIElMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwKKyAgICAgICAgPHNw
YW4gaWQ9ImNvbnRhaW5pbmdCbG9jayI+CisgICAgICAgICAgICBjb24gYSBwYXJpYXR1ci4gRXhj
ZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3VwaWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxw
IHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltZXF1cworICAgICAgICAgICAgPGRpdiBp
ZD0idGVzdCI+PC9kaXY+CisgICAgICAgICAgICBJTE9SRU0gaXBzdW0gZG9sIHNEdWlzIGF1dGUg
aXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxs
dW0gZG9sb3JlIGV1IGZ1Z2lhdCBudWxsYXQKKyAgICAgICAgPC9zcGFuPgorICAgICAgICBkdWlz
IGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQuCisg
ICAgPC9wPgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9w
b3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fi
c29sdXRlLWluLWlubGluZS1ydGwuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0MiBAQAor
PGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlPgorICAgICNvdXRzaWRlIHsKKyAgICAgICAgZGlyZWN0
aW9uOiBydGw7CisgICAgICAgIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsKKyAgICAgICAg
b3V0bGluZTogMXB4IGRhc2hlZCByZWQ7CisgICAgICAgIHdpZHRoOiA2MDBweDsKKyAgICB9Cisg
ICAgI2NvbnRhaW5pbmdCbG9jayB7IAorICAgICAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Cisg
ICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogMCAxMHB4OworICAgICAgICBi
b3JkZXI6IDFweCBzb2xpZCBncmV5OworICAgICAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCBv
cmFuZ2U7CisgICAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCBibHVlOworICAgIH0KKyAg
ICAjdGVzdCB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgdG9wOiAwOwor
ICAgICAgICByaWdodDogMDsKKyAgICAgICAgd2lkdGg6IDEwMCU7CisgICAgICAgIGhlaWdodDog
MTAwJTsKKyAgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBvdXRsaW5lIGJveCBzaG91bGQg
c3RyZXRjaCBmcm9tIHRoZSByaWdodCA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5ibHVlPC9z
cGFuPiBib3JkZXIgb24gdGhlIGZpcnN0IGxpbmUsIHRvIHRoZSBsZWZ0IDxzcGFuIHN0eWxlPSJj
b2xvcjogb3JhbmdlOyI+b3JhbmdlPC9zcGFuPiBib3JkZXIgb24gdGhlIHRoaXJkIGxpbmUuPC9w
PgorICAgIDxwIGlkPSJvdXRzaWRlIj4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0LAorICAgICAgICA8c3BhbiBpZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNv
biBhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lk
ZW50LCBzdW50IGluIGN1bHAgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW1lcXVzCisg
ICAgICAgICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIElMT1JFTSBpcHN1
bSBkb2wgc0R1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0
ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhdAorICAgICAgICA8L3Nw
YW4+CisgICAgICAgIGR1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZv
bHVwdGF0ZSB2ZWxpdC4KKyAgICA8L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHIuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRl
LWluLWlubGluZS1sdHIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxv
Y2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLWx0ci5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDQwIEBACis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGU+CisgICAgI291dHNpZGUg
eworICAgICAgIG91dGxpbmU6IDFweCBkYXNoZWQgcmVkOworICAgICAgIHdpZHRoOiA2MDBweDsK
KyAgICB9CisgICAgI2NvbnRhaW5pbmdCbG9jayB7IAorICAgICAgIGRpc3BsYXk6IGlubGluZTsK
KyAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47CisgICAgICAgbWFyZ2luOiAxMHB4OworICAgICAgIHBhZGRpbmc6IDAgMTBweDsKKyAgICAg
ICBib3JkZXI6IDFweCBzb2xpZCBncmV5OworICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlk
IGJsdWU7CisgICAgICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIG9yYW5nZTsKKyAgICB9Cisg
ICAgI3Rlc3QgeworICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICB0b3A6IDA7Cisg
ICAgICAgbGVmdDogMDsKKyAgICAgICB3aWR0aDogMTAwJTsKKyAgICAgICBoZWlnaHQ6IDEwMCU7
CisgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgPC9zdHlsZT4KKzwv
aGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBvdXRsaW5lIGJveCBzaG91bGQgc3RyZXRj
aCBmcm9tIHRoZSBsZWZ0IDxzcGFuIHN0eWxlPSJjb2xvcjogYmx1ZTsiPmJsdWU8L3NwYW4+IGJv
cmRlciBvbiB0aGUgZmlyc3QgbGluZSwgdG8gdGhlIHJpZ2h0IDxzcGFuIHN0eWxlPSJjb2xvcjog
b3JhbmdlOyI+b3JhbmdlPC9zcGFuPiBib3JkZXIgb24gdGhlIHRoaXJkIGxpbmUuPC9wPgorICAg
IDxwIGlkPSJvdXRzaWRlIj4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAor
ICAgICAgICA8c3BhbiBpZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBh
cmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBz
dW50IGluIGN1bHAgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW1lcXVzCisgICAgICAg
ICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIElMT1JFTSBpcHN1bSBkb2wg
c0R1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxp
dCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhdAorICAgICAgICA8L3NwYW4+Cisg
ICAgICAgIGR1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0
ZSB2ZWxpdC4KKyAgICA8L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9ydC1ydGwuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRl
LWluLWlubGluZS1zaG9ydC1ydGwuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zh
c3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLXNob3J0LXJ0bC5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQyIEBACis8aHRtbD4KKzxoZWFkPgorICAgIDxzdHlsZT4K
KyAgICAgICAgI291dHNpZGUgeworICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7CisgICAgICAg
ICAgICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7CisgICAgICAgICAgICBvdXRsaW5lOiAx
cHggZGFzaGVkIHJlZDsKKyAgICAgICAgICAgIHdpZHRoOiA2MDBweDsKKyAgICAgICAgfQorICAg
ICAgICAjY29udGFpbmluZ0Jsb2NrIHsgCisgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7Cisg
ICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiBncmVlbjsKKyAgICAgICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICAgICAgIHBhZGRp
bmc6IDAgMTBweDsKKyAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZXk7CisgICAgICAg
ICAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCBvcmFuZ2U7CisgICAgICAgICAgICBib3JkZXIt
cmlnaHQ6IDIwcHggc29saWQgYmx1ZTsKKyAgICAgICAgfQorICAgICAgICAjdGVzdCB7CisgICAg
ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgICAgICB0b3A6IDA7CisgICAgICAg
ICAgICByaWdodDogMDsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVp
Z2h0OiAxMDAlOworICAgICAgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNrOworICAgICAg
ICB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBvdXRs
aW5lIGJveCBzaG91bGQgc3RyZXRjaCBmcm9tIHRoZSByaWdodCA8c3BhbiBzdHlsZT0iY29sb3I6
IGJsdWU7Ij5ibHVlPC9zcGFuPiBib3JkZXIsIHRvIHRoZSBsZWZ0IDxzcGFuIHN0eWxlPSJjb2xv
cjogb3JhbmdlOyI+b3JhbmdlPC9zcGFuPiBib3JkZXIuPC9wPgorICAgIDxwIGlkPSJvdXRzaWRl
Ij4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAgICA8c3BhbiBp
ZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVyLgorICAgICAg
ICAgICAgPGRpdiBpZD0idGVzdCI+PC9kaXY+CisgICAgICAgICAgICBkdWlzIGF1dGUKKyAgICAg
ICAgPC9zcGFuPgorICAgICAgICBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0LgorICAgIDwv
cD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvYWJzb2x1dGUtaW4taW5saW5lLXJ0bC0yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTIuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJz
b2x1dGUtaW4taW5saW5lLXJ0bC0yLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDIgQEAK
KzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZT4KKyAgICAjb3V0c2lkZSB7CisgICAgICAgIGRpcmVj
dGlvbjogcnRsOworICAgICAgICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7CisgICAgICAg
IG91dGxpbmU6IDFweCBkYXNoZWQgcmVkOworICAgICAgICB3aWR0aDogNjAwcHg7CisgICAgfQor
ICAgICNjb250YWluaW5nQmxvY2sgeyAKKyAgICAgICAgZGlzcGxheTogaW5saW5lOworICAgICAg
ICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwor
ICAgICAgICBtYXJnaW46IDEwcHg7CisgICAgICAgIHBhZGRpbmc6IDAgMTBweDsKKyAgICAgICAg
Ym9yZGVyOiAxcHggc29saWQgZ3JleTsKKyAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQg
b3JhbmdlOworICAgICAgICBib3JkZXItcmlnaHQ6IDIwcHggc29saWQgYmx1ZTsKKyAgICB9Cisg
ICAgI3Rlc3QgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGJvdHRvbTog
MDsKKyAgICAgICAgbGVmdDogMDsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgIGhlaWdo
dDogNTBweDsKKyAgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgPC9z
dHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBvdXRsaW5lIGJveCBzaG91
bGQgYmUgYSA1MHB4IGJ5IDUwcHggc3F1YXJlIHdpdGggaXRzIGJvdHRvbSBsZWZ0IGNvcm5lciBh
bmNob3JlZCB0byB0aGUgbGVmdCA8c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZTsiPm9yYW5nZTwv
c3Bhbj4gYm9yZGVyIG9uIHRoZSB0aGlyZCBsaW5lLjwvcD4KKyAgICA8cCBpZD0ib3V0c2lkZSI+
CisgICAgICAgIElMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwKKyAgICAgICAgPHNwYW4gaWQ9
ImNvbnRhaW5pbmdCbG9jayI+CisgICAgICAgICAgICBjb24gYSBwYXJpYXR1ci4gRXhjZXB0ZXVy
IHNpbnQgb2NjYWVjYXQgY3VwaWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwIHF1aSBv
ZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltZXF1cworICAgICAgICAgICAgPGRpdiBpZD0idGVz
dCI+PC9kaXY+CisgICAgICAgICAgICBJTE9SRU0gaXBzdW0gZG9sIHNEdWlzIGF1dGUgaXJ1cmUg
ZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9s
b3JlIGV1IGZ1Z2lhdCBudWxsYXQKKyAgICAgICAgPC9zcGFuPgorICAgICAgICBkdWlzIGF1dGUg
aXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQuCisgICAgPC9w
PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgJKHJldmlzaW9uIDE0
NjY0KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgJKHdvcmtpbmcgY29weSkKQEAg
LTE1NSw2ICsxNTUsOSBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBwYWludEJhY2tncm91bmQoR3Jh
cGhpY3NDb250ZXh0KiwgY29uc3QgQ29sb3ImLCBjb25zdCBCYWNrZ3JvdW5kTGF5ZXIqLCBpbnQg
Y2xpcHksIGludCBjbGlwaCwgaW50IF90eCwgaW50IF90eSwgaW50IHcsIGludCBoKTsKICAgICB2
b2lkIG91dGxpbmVCb3goR3JhcGhpY3NDb250ZXh0KiwgaW50IF90eCwgaW50IF90eSwgY29uc3Qg
Y2hhciAqY29sb3IgPSAicmVkIik7CiAKKyAgICBpbnQgY29udGFpbmluZ0Jsb2NrV2lkdGhGb3JQ
b3NpdGlvbmVkKGNvbnN0IFJlbmRlck9iamVjdCogY29udGFpbmluZ0Jsb2NrKSBjb25zdDsKKyAg
ICBpbnQgY29udGFpbmluZ0Jsb2NrSGVpZ2h0Rm9yUG9zaXRpb25lZChjb25zdCBSZW5kZXJPYmpl
Y3QqIGNvbnRhaW5pbmdCbG9jaykgY29uc3Q7CisKICAgICB2b2lkIGNhbGNBYnNvbHV0ZUhvcml6
b250YWwoKTsKICAgICB2b2lkIGNhbGNBYnNvbHV0ZVZlcnRpY2FsKCk7CiAgICAgdm9pZCBjYWxj
QWJzb2x1dGVIb3Jpem9udGFsVmFsdWVzKExlbmd0aCB3aWR0aCwgY29uc3QgUmVuZGVyT2JqZWN0
KiBjYiwgVGV4dERpcmVjdGlvbiBjb250YWluZXJEaXJlY3Rpb24sCkluZGV4OiBXZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHAJKHJldmlzaW9uIDE0NjY0KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM5OCw2ICsxMzk4LDQ2IEBAIHZvaWQgUmVuZGVy
Qm94OjpzZXRTdGF0aWNZKGludCBzdGF0aWNZKQogICAgIG1fc3RhdGljWSA9IHN0YXRpY1k7CiB9
CiAKK2ludCBSZW5kZXJCb3g6OmNvbnRhaW5pbmdCbG9ja1dpZHRoRm9yUG9zaXRpb25lZChjb25z
dCBSZW5kZXJPYmplY3QqIGNvbnRhaW5pbmdCbG9jaykgY29uc3QKK3sKKyAgICBpZiAoY29udGFp
bmluZ0Jsb2NrLT5pc0lubGluZSgpKSB7CisgICAgICAgIEFTU0VSVChjb250YWluaW5nQmxvY2st
PmlzUmVsUG9zaXRpb25lZCgpKTsKKyAgICAKKyAgICAgICAgY29uc3QgUmVuZGVyRmxvdyogZmxv
dyA9IHN0YXRpY19jYXN0PGNvbnN0IFJlbmRlckZsb3cqPihjb250YWluaW5nQmxvY2spOworICAg
ICAgICBJbmxpbmVGbG93Qm94KiBmaXJzdCA9IGZsb3ctPmZpcnN0TGluZUJveCgpOworICAgICAg
ICBJbmxpbmVGbG93Qm94KiBsYXN0ID0gZmxvdy0+bGFzdExpbmVCb3goKTsKKyAgICAgICAgCisg
ICAgICAgIC8vIElmIHRoZSBjb250YWluaW5nIGJsb2NrIGlzIGVtcHR5LCByZXR1cm4gYSB3aWR0
aCBvZiAwLgorICAgICAgICBpZiAoIWZpcnN0IHx8ICFsYXN0KQorICAgICAgICAgICAgcmV0dXJu
IDA7CisKKyAgICAgICAgaW50IGZyb21MZWZ0OworICAgICAgICBpbnQgZnJvbVJpZ2h0OworICAg
ICAgICBpZiAoY29udGFpbmluZ0Jsb2NrLT5zdHlsZSgpLT5kaXJlY3Rpb24oKSA9PSBMVFIpIHsK
KyAgICAgICAgICAgIGZyb21MZWZ0ID0gZmlyc3QtPnhQb3MoKSArIGZpcnN0LT5ib3JkZXJMZWZ0
KCk7CisgICAgICAgICAgICBmcm9tUmlnaHQgPSBsYXN0LT54UG9zKCkgKyBsYXN0LT53aWR0aCgp
IC0gbGFzdC0+Ym9yZGVyUmlnaHQoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGZy
b21SaWdodCA9IGZpcnN0LT54UG9zKCkgKyBmaXJzdC0+d2lkdGgoKSAtIGZpcnN0LT5ib3JkZXJS
aWdodCgpOworICAgICAgICAgICAgZnJvbUxlZnQgPSBsYXN0LT54UG9zKCkgKyBsYXN0LT5ib3Jk
ZXJMZWZ0KCk7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4gbWF4KDAsIChmcm9tUmlnaHQg
LSBmcm9tTGVmdCkpOworICAgIH0KKworICAgIGlmICh1c2VzTGluZVdpZHRoKCkgJiYgaXNSZW5k
ZXJCbG9jaygpKQorICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgUmVuZGVyQmxvY2sq
Pihjb250YWluaW5nQmxvY2spLT5saW5lV2lkdGgobV95KSArIGNvbnRhaW5pbmdCbG9jay0+cGFk
ZGluZ0xlZnQoKSArIGNvbnRhaW5pbmdCbG9jay0+cGFkZGluZ1JpZ2h0KCk7CisgICAgcmV0dXJu
IGNvbnRhaW5pbmdCbG9jay0+d2lkdGgoKSAtIGNvbnRhaW5pbmdCbG9jay0+Ym9yZGVyTGVmdCgp
IC0gY29udGFpbmluZ0Jsb2NrLT5ib3JkZXJSaWdodCgpOworfQorCitpbnQgUmVuZGVyQm94Ojpj
b250YWluaW5nQmxvY2tIZWlnaHRGb3JQb3NpdGlvbmVkKGNvbnN0IFJlbmRlck9iamVjdCogY29u
dGFpbmluZ0Jsb2NrKSBjb25zdAoreworICAgIC8vIEV2ZW4gaW4gc3RyaWN0IG1vZGUgKHdoZXJl
IHdlIGRvbid0IGdyb3cgdGhlIHJvb3QgdG8gZmlsbCB0aGUgdmlld3BvcnQpIG90aGVyIGJyb3dz
ZXJzCisgICAgLy8gcG9zaXRpb24gYXMgdGhvdWdoIHRoZSByb290IGZpbGxzIHRoZSB2aWV3cG9y
dC4KKyAgICBpZiAoY29udGFpbmluZ0Jsb2NrLT5pc1Jvb3QoKSkKKyAgICAgICAgcmV0dXJuIGNv
bnRhaW5pbmdCbG9jay0+YXZhaWxhYmxlSGVpZ2h0KCk7CisgICAgcmV0dXJuIGNvbnRhaW5pbmdC
bG9jay0+aGVpZ2h0KCkgLSBjb250YWluaW5nQmxvY2stPmJvcmRlclRvcCgpIC0gY29udGFpbmlu
Z0Jsb2NrLT5ib3JkZXJCb3R0b20oKTsKK30KKwogdm9pZCBSZW5kZXJCb3g6OmNhbGNBYnNvbHV0
ZUhvcml6b250YWwoKQogewogICAgIGlmIChpc1JlcGxhY2VkKCkpIHsKQEAgLTE0MzQsMTAgKzE0
NzQsOCBAQCB2b2lkIFJlbmRlckJveDo6Y2FsY0Fic29sdXRlSG9yaXpvbnRhbCgpCiAgICAgLy8g
V2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdCbG9jaygpLCBzaW5jZSB3ZSBtYXkgYmUgcG9zaXRpb25l
ZCBieSBhbiBlbmNsb3NpbmcKICAgICAvLyByZWxhdGl2ZSBwb3NpdGlvbmVkIGlubGluZS4KICAg
ICBjb25zdCBSZW5kZXJPYmplY3QqIGNvbnRhaW5lckJsb2NrID0gY29udGFpbmVyKCk7Ci0gICAg
Ci0gICAgLy8gRklYTUU6IFRoaXMgaXMgaW5jb3JyZWN0IGZvciBjYXNlcyB3aGVyZSB0aGUgY29u
dGFpbmVyIGJsb2NrIGlzIGEgcmVsYXRpdmVseQotICAgIC8vIHBvc2l0aW9uZWQgaW5saW5lLgot
ICAgIGNvbnN0IGludCBjb250YWluZXJXaWR0aCA9IGNvbnRhaW5pbmdCbG9ja1dpZHRoKCkgKyBj
b250YWluZXJCbG9jay0+cGFkZGluZ0xlZnQoKSArIGNvbnRhaW5lckJsb2NrLT5wYWRkaW5nUmln
aHQoKTsKKworICAgIGNvbnN0IGludCBjb250YWluZXJXaWR0aCA9IGNvbnRhaW5pbmdCbG9ja1dp
ZHRoRm9yUG9zaXRpb25lZChjb250YWluZXJCbG9jayk7CiAKICAgICAvLyBUbyBtYXRjaCBXaW5J
RSwgaW4gcXVpcmtzIG1vZGUgdXNlIHRoZSBwYXJlbnQncyAnZGlyZWN0aW9uJyBwcm9wZXJ0eQog
ICAgIC8vIGluc3RlYWQgb2YgdGhlIHRoZSBjb250YWluZXIgYmxvY2sncy4KQEAgLTE2OTYsNiAr
MTczNCwyMSBAQCB2b2lkIFJlbmRlckJveDo6Y2FsY0Fic29sdXRlSG9yaXpvbnRhbFZhCiAgICAg
fQogCiAgICAgLy8gVXNlIGNvbXB1dGVkIHZhbHVlcyB0byBjYWxjdWxhdGUgdGhlIGhvcml6b250
YWwgcG9zaXRpb24uCisKKyAgICAvLyBGSVhNRTogVGhpcyBoYWNrIGlzIG5lZWRlZCB0byBjYWxj
dWxhdGUgdGhlIHhQb3MgZm9yIGEgJ3J0bCcgcmVsYXRpdmx5IAorICAgIC8vIHBvc2l0aW9uZWQs
IGlubGluZSBjb250YWluaW5nIGJsb2NrIGJlY2F1c2UgcmlnaHQgbm93LCBpdCBpcyB1c2luZyB0
aGUgeFBvcyAKKyAgICAvLyBvZiB0aGUgZmlyc3QgbGluZSBib3ggd2hlbiByZWFsbHkgaXQgc2hv
dWxkIHVzZSB0aGUgbGFzdCBsaW5lIGJveC4gIFdoZW4gCisgICAgLy8gdGhpcyBpcyBmaXhlZCBl
bHNld2hlcmUsIHRoaXMgYmxvY2sgc2hvdWxkIGJlIHJlbW92ZWQuCisgICAgaWYgKGNvbnRhaW5l
ckJsb2NrLT5pc0lubGluZSgpICYmIGNvbnRhaW5lckJsb2NrLT5zdHlsZSgpLT5kaXJlY3Rpb24o
KSA9PSBSVEwpIHsKKyAgICAgICAgY29uc3QgUmVuZGVyRmxvdyogZmxvdyA9IHN0YXRpY19jYXN0
PGNvbnN0IFJlbmRlckZsb3cqPihjb250YWluZXJCbG9jayk7CisgICAgICAgIElubGluZUZsb3dC
b3gqIGZpcnN0TGluZSA9IGZsb3ctPmZpcnN0TGluZUJveCgpOworICAgICAgICBJbmxpbmVGbG93
Qm94KiBsYXN0TGluZSA9IGZsb3ctPmxhc3RMaW5lQm94KCk7CisgICAgICAgIGlmIChmaXJzdExp
bmUgJiYgbGFzdExpbmUgJiYgZmlyc3RMaW5lICE9IGxhc3RMaW5lKSB7CisgICAgICAgICAgICB4
UG9zID0gbGVmdFZhbHVlICsgbWFyZ2luTGVmdFZhbHVlICsgbGFzdExpbmUtPmJvcmRlckxlZnQo
KSArIChsYXN0TGluZS0+eFBvcygpIC0gZmlyc3RMaW5lLT54UG9zKCkpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisgICAgfQorCiAgICAgeFBvcyA9IGxlZnRWYWx1ZSArIG1hcmdp
bkxlZnRWYWx1ZSArIGNvbnRhaW5lckJsb2NrLT5ib3JkZXJMZWZ0KCk7CiB9CiAKQEAgLTE3MTYs
OSArMTc2OSw3IEBAIHZvaWQgUmVuZGVyQm94OjpjYWxjQWJzb2x1dGVWZXJ0aWNhbCgpCiAgICAg
Ly8gV2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdCbG9jaygpLCBzaW5jZSB3ZSBtYXkgYmUgcG9zaXRp
b25lZCBieSBhbiBlbmNsb3NpbmcgcmVscG9zaXRpb25lZCBpbmxpbmUuCiAgICAgY29uc3QgUmVu
ZGVyT2JqZWN0KiBjb250YWluZXJCbG9jayA9IGNvbnRhaW5lcigpOwogCi0gICAgLy8gRXZlbiBp
biBzdHJpY3QgbW9kZSAod2hlcmUgd2UgZG9uJ3QgZ3JvdyB0aGUgcm9vdCB0byBmaWxsIHRoZSB2
aWV3cG9ydCkgb3RoZXIgYnJvd3NlcnMKLSAgICAvLyBwb3NpdGlvbiBhcyB0aG91Z2ggdGhlIHJv
b3QgZmlsbHMgdGhlIHZpZXdwb3J0LgotICAgIGNvbnN0IGludCBjb250YWluZXJIZWlnaHQgPSBj
b250YWluZXJCbG9jay0+aXNSb290KCkgPyBjb250YWluZXJCbG9jay0+YXZhaWxhYmxlSGVpZ2h0
KCkgOiAoY29udGFpbmVyQmxvY2stPmhlaWdodCgpIC0gY29udGFpbmVyQmxvY2stPmJvcmRlclRv
cCgpIC0gY29udGFpbmVyQmxvY2stPmJvcmRlckJvdHRvbSgpKTsKKyAgICBjb25zdCBpbnQgY29u
dGFpbmVySGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrSGVpZ2h0Rm9yUG9zaXRpb25lZChjb250YWlu
ZXJCbG9jayk7CiAgICAgCiAgICAgY29uc3QgaW50IGJvcmRlcnNQbHVzUGFkZGluZyA9IGJvcmRl
clRvcCgpICsgYm9yZGVyQm90dG9tKCkgKyBwYWRkaW5nVG9wKCkgKyBwYWRkaW5nQm90dG9tKCk7
CiAgICAgY29uc3QgTGVuZ3RoIG1hcmdpblRvcCA9IHN0eWxlKCktPm1hcmdpblRvcCgpOwpAQCAt
MTk0MiwxMiArMTk5MywxMSBAQCB2b2lkIFJlbmRlckJveDo6Y2FsY0Fic29sdXRlSG9yaXpvbnRh
bFJlCiAgICAgLy8gKGJsb2NrLXN0eWxlLWNvbW1lbnRzIGluIHRoaXMgZnVuY3Rpb24gY29ycmVz
cG9uZCB0byB0ZXh0IGZyb20gdGhlIHNwZWMgYW5kCiAgICAgLy8gdGhlIG51bWJlcnMgY29ycmVz
cG9uZCB0byBudW1iZXJzIGluIHNwZWMpCiAKLSAgICAvLyBXZSBkb24ndCB1c2UgY29udGFpbmlu
Z0Jsb2NrKCksIHNpbmNlIHdlIG1heSBiZSBwb3NpdGlvbmVkIGJ5IGFuIGVuY2xvc2luZyByZWxw
b3NpdGlvbmVkIGlubGluZS4KKyAgICAvLyBXZSBkb24ndCB1c2UgY29udGFpbmluZ0Jsb2NrKCks
IHNpbmNlIHdlIG1heSBiZSBwb3NpdGlvbmVkIGJ5IGFuIGVuY2xvc2luZworICAgIC8vIHJlbGF0
aXZlIHBvc2l0aW9uZWQgaW5saW5lLgogICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29udGFpbmVy
QmxvY2sgPSBjb250YWluZXIoKTsKIAotICAgIC8vIEZJWE1FOiBUaGlzIGlzIGluY29ycmVjdCBm
b3IgY2FzZXMgd2hlcmUgdGhlIGNvbnRhaW5lciBibG9jayBpcyBhIHJlbGF0aXZlbHkKLSAgICAv
LyBwb3NpdGlvbmVkIGlubGluZS4KLSAgICBjb25zdCBpbnQgY29udGFpbmVyV2lkdGggPSBjb250
YWluaW5nQmxvY2tXaWR0aCgpICsgY29udGFpbmVyQmxvY2stPnBhZGRpbmdMZWZ0KCkgKyBjb250
YWluZXJCbG9jay0+cGFkZGluZ1JpZ2h0KCk7CisgICAgY29uc3QgaW50IGNvbnRhaW5lcldpZHRo
ID0gY29udGFpbmluZ0Jsb2NrV2lkdGhGb3JQb3NpdGlvbmVkKGNvbnRhaW5lckJsb2NrKTsKICAg
ICAKICAgICAvLyBUbyBtYXRjaCBXaW5JRSwgaW4gcXVpcmtzIG1vZGUgdXNlIHRoZSBwYXJlbnQn
cyAnZGlyZWN0aW9uJyBwcm9wZXJ0eSAKICAgICAvLyBpbnN0ZWFkIG9mIHRoZSB0aGUgY29udGFp
bmVyIGJsb2NrJ3MuCkBAIC0yMDkwLDggKzIxNDAsMjIgQEAgdm9pZCBSZW5kZXJCb3g6OmNhbGNB
YnNvbHV0ZUhvcml6b250YWxSZQogICAgIGlmICh0b3RhbFdpZHRoID4gY29udGFpbmVyV2lkdGgg
JiYgKGNvbnRhaW5lckRpcmVjdGlvbiA9PSBSVEwpKQogICAgICAgICBsZWZ0VmFsdWUgPSBjb250
YWluZXJXaWR0aCAtICh0b3RhbFdpZHRoIC0gbGVmdFZhbHVlKTsKIAotCiAgICAgLy8gVXNlIGNv
bXB1dGVkIHZhbHVlcyB0byBjYWxjdWxhdGUgdGhlIGhvcml6b250YWwgcG9zaXRpb24uCisKKyAg
ICAvLyBGSVhNRTogVGhpcyBoYWNrIGlzIG5lZWRlZCB0byBjYWxjdWxhdGUgdGhlIHhQb3MgZm9y
IGEgJ3J0bCcgcmVsYXRpdmx5IAorICAgIC8vIHBvc2l0aW9uZWQsIGlubGluZSBjb250YWluaW5n
IGJsb2NrIGJlY2F1c2UgcmlnaHQgbm93LCBpdCBpcyB1c2luZyB0aGUgeFBvcyAKKyAgICAvLyBv
ZiB0aGUgZmlyc3QgbGluZSBib3ggd2hlbiByZWFsbHkgaXQgc2hvdWxkIHVzZSB0aGUgbGFzdCBs
aW5lIGJveC4gIFdoZW4gCisgICAgLy8gdGhpcyBpcyBmaXhlZCBlbHNld2hlcmUsIHRoaXMgYmxv
Y2sgc2hvdWxkIGJlIHJlbW92ZWQuCisgICAgaWYgKGNvbnRhaW5lckJsb2NrLT5pc0lubGluZSgp
ICYmIGNvbnRhaW5lckJsb2NrLT5zdHlsZSgpLT5kaXJlY3Rpb24oKSA9PSBSVEwpIHsKKyAgICAg
ICAgY29uc3QgUmVuZGVyRmxvdyogZmxvdyA9IHN0YXRpY19jYXN0PGNvbnN0IFJlbmRlckZsb3cq
Pihjb250YWluZXJCbG9jayk7CisgICAgICAgIElubGluZUZsb3dCb3gqIGZpcnN0TGluZSA9IGZs
b3ctPmZpcnN0TGluZUJveCgpOworICAgICAgICBJbmxpbmVGbG93Qm94KiBsYXN0TGluZSA9IGZs
b3ctPmxhc3RMaW5lQm94KCk7CisgICAgICAgIGlmIChmaXJzdExpbmUgJiYgbGFzdExpbmUgJiYg
Zmlyc3RMaW5lICE9IGxhc3RMaW5lKSB7CisgICAgICAgICAgICBtX3ggPSBsZWZ0VmFsdWUgKyBt
X21hcmdpbkxlZnQgKyBsYXN0TGluZS0+Ym9yZGVyTGVmdCgpICsgKGxhc3RMaW5lLT54UG9zKCkg
LSBmaXJzdExpbmUtPnhQb3MoKSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAg
ICB9CisKICAgICBtX3ggPSBsZWZ0VmFsdWUgKyBtX21hcmdpbkxlZnQgKyBjb250YWluZXJCbG9j
ay0+Ym9yZGVyTGVmdCgpOwogfQogCkBAIC0yMTA2LDkgKzIxNzAsNyBAQCB2b2lkIFJlbmRlckJv
eDo6Y2FsY0Fic29sdXRlVmVydGljYWxSZXBsCiAgICAgLy8gV2UgZG9uJ3QgdXNlIGNvbnRhaW5p
bmdCbG9jaygpLCBzaW5jZSB3ZSBtYXkgYmUgcG9zaXRpb25lZCBieSBhbiBlbmNsb3NpbmcgcmVs
cG9zaXRpb25lZCBpbmxpbmUuCiAgICAgY29uc3QgUmVuZGVyT2JqZWN0KiBjb250YWluZXJCbG9j
ayA9IGNvbnRhaW5lcigpOwogCi0gICAgLy8gRXZlbiBpbiBzdHJpY3QgbW9kZSAod2hlcmUgd2Ug
ZG9uJ3QgZ3JvdyB0aGUgcm9vdCB0byBmaWxsIHRoZSB2aWV3cG9ydCkKLSAgICAvLyBvdGhlciBi
cm93c2VycyBwb3NpdGlvbiBhcyB0aG91Z2ggdGhlIHJvb3QgZmlsbHMgdGhlIHZpZXdwb3J0Lgot
ICAgIGNvbnN0IGludCBjb250YWluZXJIZWlnaHQgPSBjb250YWluZXJCbG9jay0+aXNSb290KCkg
PyBjb250YWluZXJCbG9jay0+YXZhaWxhYmxlSGVpZ2h0KCkgOiAoY29udGFpbmVyQmxvY2stPmhl
aWdodCgpIC0gY29udGFpbmVyQmxvY2stPmJvcmRlclRvcCgpIC0gY29udGFpbmVyQmxvY2stPmJv
cmRlckJvdHRvbSgpKTsKKyAgICBjb25zdCBpbnQgY29udGFpbmVySGVpZ2h0ID0gY29udGFpbmlu
Z0Jsb2NrSGVpZ2h0Rm9yUG9zaXRpb25lZChjb250YWluZXJCbG9jayk7CiAKICAgICAvLyBWYXJp
YWJsZXMgdG8gc29sdmUuCiAgICAgTGVuZ3RoIHRvcCA9IHN0eWxlKCktPnRvcCgpOwpJbmRleDog
V2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlz
aW9uIDE0NjY2KQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwyMSBAQAorMjAwNi0wNi0wMSAgU2FtIFdlaW5pZyAgPHNhbS53ZWluaWdAZ21haWwuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIC0gZml4IGZv
ciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTkyMTMKKyAg
ICAgICAgICBBYnNvbHV0ZWx5IHBvc2l0aW9uZWQgb2JqZWN0cyB3aXRoIHJlbGF0aXZlbHkgcG9z
aXRpb25lZCBpbmxpbmUgCisgICAgICAgICAgY29udGFpbmluZyBibG9ja3MgYXJlIHJlbmRlcmVk
IGluY29ycmVjdGx5CisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y29udGFpbmluZ0Jsb2NrV2lkdGhGb3JQb3NpdGlvbmVk
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y29udGFpbmluZ0Jsb2NrSGVpZ2h0Rm9y
UG9zaXRpb25lZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNhbGNBYnNvbHV0ZUhv
cml6b250YWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpjYWxjQWJzb2x1dGVIb3Jp
em9udGFsVmFsdWVzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y2FsY0Fic29sdXRl
VmVydGljYWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpjYWxjQWJzb2x1dGVIb3Jp
em9udGFsUmVwbGFjZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpjYWxjQWJzb2x1
dGVWZXJ0aWNhbFJlcGxhY2VkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94Lmg6CisK
IDIwMDYtMDYtMDEgIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBoYXJyaXNvbgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8683</attachid>
            <date>2006-06-03 14:23:43 -0700</date>
            <delta_ts>2006-06-04 11:53:22 -0700</delta_ts>
            <desc>patch 2</desc>
            <filename>absInInline.diff</filename>
            <type>text/plain</type>
            <size>23120</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE0NzE0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDYtMDYtMDMgIFNhbSBXZWluaWcgIDxzYW0u
d2VpbmlnQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAtIHRlc3RzIGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hv
d19idWcuY2dpP2lkPTkyMTMKKyAgICAgICAgICBBYnNvbHV0ZWx5IHBvc2l0aW9uZWQgb2JqZWN0
cyB3aXRoIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBpbmxpbmUgCisgICAgICAgICAgY29udGFpbmlu
ZyBibG9ja3MgYXJlIHJlbmRlcmVkIGluY29ycmVjdGx5CisKKyAgICAgICAgKiBmYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHItMi5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1sdHItMy5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlu
bGluZS1sdHIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9h
YnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTMuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5s
aW5lLXNob3J0LWx0ci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9u
aW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9ydC1ydGwuaHRtbDogQWRkZWQuCisKIDIwMDYtMDYt
MDMgIE1pdHogUGV0dGVsICA8b3BlbmRhcndpbi5vcmdAbWl0enBldHRlbC5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgSHlhdHQuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0
aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9ydC1sdHIuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1zaG9y
dC1sdHIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvYWJzb2x1dGUtaW4taW5saW5lLXNob3J0LWx0ci5odG1sCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDQwIEBACis8aHRtbD4KKzxoZWFkPgorICAgIDxzdHlsZT4KKyAgICAgICAgI291dHNp
ZGUgeworICAgICAgICAgICBvdXRsaW5lOiAxcHggZGFzaGVkIHJlZDsKKyAgICAgICAgICAgd2lk
dGg6IDYwMHB4OworICAgICAgICB9CisgICAgICAgICNjb250YWluaW5nQmxvY2sgeyAKKyAgICAg
ICAgICAgZGlzcGxheTogaW5saW5lOworICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7Cisg
ICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgICAgICAgICBtYXJnaW46IDEw
cHg7CisgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDsKKyAgICAgICAgICAgYm9yZGVyOiAxcHgg
c29saWQgZ3JleTsKKyAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgYmx1ZTsKKyAg
ICAgICAgICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIG9yYW5nZTsKKyAgICAgICAgfQorICAg
ICAgICAjdGVzdCB7CisgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgICAg
dG9wOiAwOworICAgICAgICAgICBsZWZ0OiAwOworICAgICAgICAgICB3aWR0aDogMTAwJTsKKyAg
ICAgICAgICAgaGVpZ2h0OiAxMDAlOworICAgICAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxh
Y2s7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPHA+VGhl
IGJsYWNrIG91dGxpbmUgYm94IHNob3VsZCBzdHJldGNoIGZyb20gdGhlIGxlZnQgPHNwYW4gc3R5
bGU9ImNvbG9yOiBibHVlOyI+Ymx1ZTwvc3Bhbj4gYm9yZGVyLCB0byB0aGUgcmlnaHQgPHNwYW4g
c3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij5vcmFuZ2U8L3NwYW4+IGJvcmRlci48L3A+CisgICAgPHAg
aWQ9Im91dHNpZGUiPgorICAgICAgICBJTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsCisgICAg
ICAgIDxzcGFuIGlkPSJjb250YWluaW5nQmxvY2siPgorICAgICAgICAgICAgY29uIGEgcGFyaWF0
dXIuCisgICAgICAgICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIGR1aXMg
YXV0ZQorICAgICAgICA8L3NwYW4+CisgICAgICAgIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVy
aXQuCisgICAgPC9wPgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9i
bG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtbHRyLTIuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGlu
ZS1sdHItMi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3Np
dGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtbHRyLTIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSw0MCBAQAorPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlPgorICAgICNvdXRzaWRlIHsKKyAg
ICAgICBvdXRsaW5lOiAxcHggZGFzaGVkIHJlZDsKKyAgICAgICB3aWR0aDogNjAwcHg7CisgICAg
fQorICAgICNjb250YWluaW5nQmxvY2sgeyAKKyAgICAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwor
ICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICBwYWRkaW5nOiAwIDEwcHg7CisgICAgICAgYm9y
ZGVyOiAxcHggc29saWQgZ3JleTsKKyAgICAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCBibHVl
OworICAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCBvcmFuZ2U7CisgICAgfQorICAgICN0
ZXN0IHsKKyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgYm90dG9tOiAwOworICAg
ICAgIHJpZ2h0OiAwOworICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgIGhlaWdodDogNTBweDsK
KyAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAgfQorICA8L3N0eWxlPgorPC9o
ZWFkPgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91dGxpbmUgYm94IHNob3VsZCBiZSBhIDUw
cHggYnkgNTBweCBzcXVhcmUgd2l0aCBpdHMgYm90dG9tIHJpZ2h0IGNvcm5lciBhbmNob3JlZCB0
byB0aGUgcmlnaHQgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij5vcmFuZ2U8L3NwYW4+IGJv
cmRlciBvbiB0aGUgdGhpcmQgbGluZS48L3A+CisgICAgPHAgaWQ9Im91dHNpZGUiPgorICAgICAg
ICBJTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsCisgICAgICAgIDxzcGFuIGlkPSJjb250YWlu
aW5nQmxvY2siPgorICAgICAgICAgICAgY29uIGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9j
Y2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscCBxdWkgb2ZmaWNpYSBk
ZXNlcnVudCBtb2xsaXQgYW5pbWVxdXMKKyAgICAgICAgICAgIDxkaXYgaWQ9InRlc3QiPjwvZGl2
PgorICAgICAgICAgICAgSUxPUkVNIGlwc3VtIGRvbCBzRHVpcyBhdXRlIGlydXJlIGRvbG9yIGlu
IHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBm
dWdpYXQgbnVsbGF0CisgICAgICAgIDwvc3Bhbj4KKyAgICAgICAgZHVpcyBhdXRlIGlydXJlIGRv
bG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0LgorICAgIDwvcD4KKzwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJz
b2x1dGUtaW4taW5saW5lLXJ0bC0zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTMuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4t
aW5saW5lLXJ0bC0zLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDIgQEAKKzxodG1sPgor
PGhlYWQ+CisgIDxzdHlsZT4KKyAgICAjb3V0c2lkZSB7CisgICAgICAgIGRpcmVjdGlvbjogcnRs
OworICAgICAgICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7CisgICAgICAgIG91dGxpbmU6
IDFweCBkYXNoZWQgcmVkOworICAgICAgICB3aWR0aDogNjAwcHg7CisgICAgfQorICAgICNjb250
YWluaW5nQmxvY2sgeyAKKyAgICAgICAgZGlzcGxheTogaW5saW5lOworICAgICAgICBwb3NpdGlv
bjogcmVsYXRpdmU7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgICAgICBt
YXJnaW46IDEwcHg7CisgICAgICAgIHBhZGRpbmc6IDAgMTBweDsKKyAgICAgICAgYm9yZGVyOiAx
cHggc29saWQgZ3JleTsKKyAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgb3JhbmdlOwor
ICAgICAgICBib3JkZXItcmlnaHQ6IDIwcHggc29saWQgYmx1ZTsKKyAgICB9CisgICAgI3Rlc3Qg
eworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIHRvcDogMDsKKyAgICAgICAg
cmlnaHQ6IDA7CisgICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgICBoZWlnaHQ6IDUwcHg7Cisg
ICAgICAgIG91dGxpbmU6IDVweCBzb2xpZCBibGFjazsKKyAgICB9CisgIDwvc3R5bGU+Cis8L2hl
YWQ+Cis8Ym9keT4KKyAgICA8cD5UaGUgYmxhY2sgb3V0bGluZSBib3ggc2hvdWxkIGJlIGEgNTBw
eCBieSA1MHB4IHNxdWFyZSB3aXRoIGl0cyB0b3AgcmlnaHQgY29ybmVyIGFuY2hvcmVkIHRvIHRo
ZSByaWdodCA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5ibHVlPC9zcGFuPiBib3JkZXIgb24g
dGhlIGZpcnN0IGxpbmUuPC9wPgorICAgIDxwIGlkPSJvdXRzaWRlIj4KKyAgICAgICAgSUxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAgICA8c3BhbiBpZD0iY29udGFpbmluZ0Jsb2Nr
Ij4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBj
dXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHAgcXVpIG9mZmljaWEgZGVzZXJ1bnQg
bW9sbGl0IGFuaW1lcXVzCisgICAgICAgICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAg
ICAgICAgIElMT1JFTSBpcHN1bSBkb2wgc0R1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhl
bmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51
bGxhdAorICAgICAgICA8L3NwYW4+CisgICAgICAgIGR1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiBy
ZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdC4KKyAgICA8L3A+Cis8L2JvZHk+Cis8L2h0
bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWlu
LWlubGluZS1sdHItMy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvYmxvY2sv
cG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLWx0ci0zLmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1s
dHItMy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQwIEBACis8aHRtbD4KKzxoZWFkPgor
ICA8c3R5bGU+CisgICAgI291dHNpZGUgeworICAgICAgIG91dGxpbmU6IDFweCBkYXNoZWQgcmVk
OworICAgICAgIHdpZHRoOiA2MDBweDsKKyAgICB9CisgICAgI2NvbnRhaW5pbmdCbG9jayB7IAor
ICAgICAgIGRpc3BsYXk6IGlubGluZTsKKyAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47CisgICAgICAgbWFyZ2luOiAxMHB4OworICAgICAg
IHBhZGRpbmc6IDAgMTBweDsKKyAgICAgICBib3JkZXI6IDFweCBzb2xpZCBncmV5OworICAgICAg
IGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIGJsdWU7CisgICAgICAgYm9yZGVyLXJpZ2h0OiAyMHB4
IHNvbGlkIG9yYW5nZTsKKyAgICB9CisgICAgI3Rlc3QgeworICAgICAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKKyAgICAgICB0b3A6IDA7CisgICAgICAgbGVmdDogMDsKKyAgICAgICB3aWR0aDogNTBw
eDsKKyAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgb3V0bGluZTogNXB4IHNvbGlkIGJsYWNr
OworICAgIH0KKyAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPlRoZSBibGFjayBv
dXRsaW5lIGJveCBzaG91bGQgYmUgYSA1MHB4IGJ5IDUwcHggc3F1YXJlIHdpdGggaXRzIHRvcCBs
ZWZ0IGNvcm5lciBhbmNob3JlZCB0byB0aGUgbGVmdCA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7
Ij5ibHVlPC9zcGFuPiBib3JkZXIgb24gdGhlIGZpcnN0IGxpbmUuPC9wPgorICAgIDxwIGlkPSJv
dXRzaWRlIj4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAgICA8
c3BhbiBpZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVyLiBF
eGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1
bHAgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW1lcXVzCisgICAgICAgICAgICA8ZGl2
IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIElMT1JFTSBpcHN1bSBkb2wgc0R1aXMgYXV0
ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNp
bGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhdAorICAgICAgICA8L3NwYW4+CisgICAgICAgIGR1
aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdC4K
KyAgICA8L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1ydGwuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1ydGwu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcv
YWJzb2x1dGUtaW4taW5saW5lLXJ0bC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQyIEBA
Cis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGU+CisgICAgI291dHNpZGUgeworICAgICAgICBkaXJl
Y3Rpb246IHJ0bDsKKyAgICAgICAgdW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlOworICAgICAg
ICBvdXRsaW5lOiAxcHggZGFzaGVkIHJlZDsKKyAgICAgICAgd2lkdGg6IDYwMHB4OworICAgIH0K
KyAgICAjY29udGFpbmluZ0Jsb2NrIHsgCisgICAgICAgIGRpc3BsYXk6IGlubGluZTsKKyAgICAg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsK
KyAgICAgICAgbWFyZ2luOiAxMHB4OworICAgICAgICBwYWRkaW5nOiAwIDEwcHg7CisgICAgICAg
IGJvcmRlcjogMXB4IHNvbGlkIGdyZXk7CisgICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlk
IG9yYW5nZTsKKyAgICAgICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIGJsdWU7CisgICAgfQor
ICAgICN0ZXN0IHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICB0b3A6IDA7
CisgICAgICAgIHJpZ2h0OiAwOworICAgICAgICB3aWR0aDogMTAwJTsKKyAgICAgICAgaGVpZ2h0
OiAxMDAlOworICAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAgfQorICA8L3N0
eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91dGxpbmUgYm94IHNob3Vs
ZCBzdHJldGNoIGZyb20gdGhlIHJpZ2h0IDxzcGFuIHN0eWxlPSJjb2xvcjogYmx1ZTsiPmJsdWU8
L3NwYW4+IGJvcmRlciBvbiB0aGUgZmlyc3QgbGluZSwgdG8gdGhlIGxlZnQgPHNwYW4gc3R5bGU9
ImNvbG9yOiBvcmFuZ2U7Ij5vcmFuZ2U8L3NwYW4+IGJvcmRlciBvbiB0aGUgdGhpcmQgbGluZS48
L3A+CisgICAgPHAgaWQ9Im91dHNpZGUiPgorICAgICAgICBJTG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQsCisgICAgICAgIDxzcGFuIGlkPSJjb250YWluaW5nQmxvY2siPgorICAgICAgICAgICAg
Y29uIGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJv
aWRlbnQsIHN1bnQgaW4gY3VscCBxdWkgb2ZmaWNpYSBkZXNlcnVudCBtb2xsaXQgYW5pbWVxdXMK
KyAgICAgICAgICAgIDxkaXYgaWQ9InRlc3QiPjwvZGl2PgorICAgICAgICAgICAgSUxPUkVNIGlw
c3VtIGRvbCBzRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0
YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGF0CisgICAgICAgIDwv
c3Bhbj4KKyAgICAgICAgZHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4g
dm9sdXB0YXRlIHZlbGl0LgorICAgIDwvcD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLWx0ci5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1
dGUtaW4taW5saW5lLWx0ci5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9i
bG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtbHRyLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNDAgQEAKKzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZT4KKyAgICAjb3V0c2lk
ZSB7CisgICAgICAgb3V0bGluZTogMXB4IGRhc2hlZCByZWQ7CisgICAgICAgd2lkdGg6IDYwMHB4
OworICAgIH0KKyAgICAjY29udGFpbmluZ0Jsb2NrIHsgCisgICAgICAgZGlzcGxheTogaW5saW5l
OworICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBn
cmVlbjsKKyAgICAgICBtYXJnaW46IDEwcHg7CisgICAgICAgcGFkZGluZzogMCAxMHB4OworICAg
ICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZXk7CisgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29s
aWQgYmx1ZTsKKyAgICAgICBib3JkZXItcmlnaHQ6IDIwcHggc29saWQgb3JhbmdlOworICAgIH0K
KyAgICAjdGVzdCB7CisgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgIHRvcDogMDsK
KyAgICAgICBsZWZ0OiAwOworICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgIGhlaWdodDogMTAw
JTsKKyAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAgfQorICA8L3N0eWxlPgor
PC9oZWFkPgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91dGxpbmUgYm94IHNob3VsZCBzdHJl
dGNoIGZyb20gdGhlIGxlZnQgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+Ymx1ZTwvc3Bhbj4g
Ym9yZGVyIG9uIHRoZSBmaXJzdCBsaW5lLCB0byB0aGUgcmlnaHQgPHNwYW4gc3R5bGU9ImNvbG9y
OiBvcmFuZ2U7Ij5vcmFuZ2U8L3NwYW4+IGJvcmRlciBvbiB0aGUgdGhpcmQgbGluZS48L3A+Cisg
ICAgPHAgaWQ9Im91dHNpZGUiPgorICAgICAgICBJTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQs
CisgICAgICAgIDxzcGFuIGlkPSJjb250YWluaW5nQmxvY2siPgorICAgICAgICAgICAgY29uIGEg
cGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQs
IHN1bnQgaW4gY3VscCBxdWkgb2ZmaWNpYSBkZXNlcnVudCBtb2xsaXQgYW5pbWVxdXMKKyAgICAg
ICAgICAgIDxkaXYgaWQ9InRlc3QiPjwvZGl2PgorICAgICAgICAgICAgSUxPUkVNIGlwc3VtIGRv
bCBzRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZl
bGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGF0CisgICAgICAgIDwvc3Bhbj4K
KyAgICAgICAgZHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0
YXRlIHZlbGl0LgorICAgIDwvcD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1dGUtaW4taW5saW5lLXNob3J0LXJ0bC5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvYWJzb2x1
dGUtaW4taW5saW5lLXNob3J0LXJ0bC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9ibG9jay9wb3NpdGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtc2hvcnQtcnRsLmh0bWwJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDIgQEAKKzxodG1sPgorPGhlYWQ+CisgICAgPHN0eWxl
PgorICAgICAgICAjb3V0c2lkZSB7CisgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDsKKyAgICAg
ICAgICAgIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsKKyAgICAgICAgICAgIG91dGxpbmU6
IDFweCBkYXNoZWQgcmVkOworICAgICAgICAgICAgd2lkdGg6IDYwMHB4OworICAgICAgICB9Cisg
ICAgICAgICNjb250YWluaW5nQmxvY2sgeyAKKyAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsK
KyAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICAgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6IGdyZWVuOworICAgICAgICAgICAgbWFyZ2luOiAxMHB4OworICAgICAgICAgICAgcGFk
ZGluZzogMCAxMHB4OworICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTsKKyAgICAg
ICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIG9yYW5nZTsKKyAgICAgICAgICAgIGJvcmRl
ci1yaWdodDogMjBweCBzb2xpZCBibHVlOworICAgICAgICB9CisgICAgICAgICN0ZXN0IHsKKyAg
ICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgICAgIHRvcDogMDsKKyAgICAg
ICAgICAgIHJpZ2h0OiAwOworICAgICAgICAgICAgd2lkdGg6IDEwMCU7CisgICAgICAgICAgICBo
ZWlnaHQ6IDEwMCU7CisgICAgICAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAg
ICAgIH0KKyAgICA8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91
dGxpbmUgYm94IHNob3VsZCBzdHJldGNoIGZyb20gdGhlIHJpZ2h0IDxzcGFuIHN0eWxlPSJjb2xv
cjogYmx1ZTsiPmJsdWU8L3NwYW4+IGJvcmRlciwgdG8gdGhlIGxlZnQgPHNwYW4gc3R5bGU9ImNv
bG9yOiBvcmFuZ2U7Ij5vcmFuZ2U8L3NwYW4+IGJvcmRlci48L3A+CisgICAgPHAgaWQ9Im91dHNp
ZGUiPgorICAgICAgICBJTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsCisgICAgICAgIDxzcGFu
IGlkPSJjb250YWluaW5nQmxvY2siPgorICAgICAgICAgICAgY29uIGEgcGFyaWF0dXIuCisgICAg
ICAgICAgICA8ZGl2IGlkPSJ0ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIGR1aXMgYXV0ZQorICAg
ICAgICA8L3NwYW4+CisgICAgICAgIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQuCisgICAg
PC9wPgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3Np
dGlvbmluZy9hYnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTIuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2Fic29sdXRlLWluLWlubGluZS1ydGwtMi5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9h
YnNvbHV0ZS1pbi1pbmxpbmUtcnRsLTIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0MiBA
QAorPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlPgorICAgICNvdXRzaWRlIHsKKyAgICAgICAgZGly
ZWN0aW9uOiBydGw7CisgICAgICAgIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsKKyAgICAg
ICAgb3V0bGluZTogMXB4IGRhc2hlZCByZWQ7CisgICAgICAgIHdpZHRoOiA2MDBweDsKKyAgICB9
CisgICAgI2NvbnRhaW5pbmdCbG9jayB7IAorICAgICAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAg
ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47
CisgICAgICAgIG1hcmdpbjogMTBweDsKKyAgICAgICAgcGFkZGluZzogMCAxMHB4OworICAgICAg
ICBib3JkZXI6IDFweCBzb2xpZCBncmV5OworICAgICAgICBib3JkZXItbGVmdDogMjBweCBzb2xp
ZCBvcmFuZ2U7CisgICAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCBibHVlOworICAgIH0K
KyAgICAjdGVzdCB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgYm90dG9t
OiAwOworICAgICAgICBsZWZ0OiAwOworICAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICAgaGVp
Z2h0OiA1MHB4OworICAgICAgICBvdXRsaW5lOiA1cHggc29saWQgYmxhY2s7CisgICAgfQorICA8
L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPHA+VGhlIGJsYWNrIG91dGxpbmUgYm94IHNo
b3VsZCBiZSBhIDUwcHggYnkgNTBweCBzcXVhcmUgd2l0aCBpdHMgYm90dG9tIGxlZnQgY29ybmVy
IGFuY2hvcmVkIHRvIHRoZSBsZWZ0IDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+b3Jhbmdl
PC9zcGFuPiBib3JkZXIgb24gdGhlIHRoaXJkIGxpbmUuPC9wPgorICAgIDxwIGlkPSJvdXRzaWRl
Ij4KKyAgICAgICAgSUxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LAorICAgICAgICA8c3BhbiBp
ZD0iY29udGFpbmluZ0Jsb2NrIj4KKyAgICAgICAgICAgIGNvbiBhIHBhcmlhdHVyLiBFeGNlcHRl
dXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHAgcXVp
IG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW1lcXVzCisgICAgICAgICAgICA8ZGl2IGlkPSJ0
ZXN0Ij48L2Rpdj4KKyAgICAgICAgICAgIElMT1JFTSBpcHN1bSBkb2wgc0R1aXMgYXV0ZSBpcnVy
ZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBk
b2xvcmUgZXUgZnVnaWF0IG51bGxhdAorICAgICAgICA8L3NwYW4+CisgICAgICAgIGR1aXMgYXV0
ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdC4KKyAgICA8
L3A+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAkocmV2aXNpb24g
MTQ3MTQpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAkod29ya2luZyBjb3B5KQpA
QCAtMTU1LDYgKzE1NSw5IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHBhaW50QmFja2dyb3VuZChH
cmFwaGljc0NvbnRleHQqLCBjb25zdCBDb2xvciYsIGNvbnN0IEJhY2tncm91bmRMYXllciosIGlu
dCBjbGlweSwgaW50IGNsaXBoLCBpbnQgX3R4LCBpbnQgX3R5LCBpbnQgdywgaW50IGgpOwogICAg
IHZvaWQgb3V0bGluZUJveChHcmFwaGljc0NvbnRleHQqLCBpbnQgX3R4LCBpbnQgX3R5LCBjb25z
dCBjaGFyICpjb2xvciA9ICJyZWQiKTsKIAorICAgIGludCBjb250YWluaW5nQmxvY2tXaWR0aEZv
clBvc2l0aW9uZWQoY29uc3QgUmVuZGVyT2JqZWN0KiBjb250YWluaW5nQmxvY2spIGNvbnN0Owor
ICAgIGludCBjb250YWluaW5nQmxvY2tIZWlnaHRGb3JQb3NpdGlvbmVkKGNvbnN0IFJlbmRlck9i
amVjdCogY29udGFpbmluZ0Jsb2NrKSBjb25zdDsKKwogICAgIHZvaWQgY2FsY0Fic29sdXRlSG9y
aXpvbnRhbCgpOwogICAgIHZvaWQgY2FsY0Fic29sdXRlVmVydGljYWwoKTsKICAgICB2b2lkIGNh
bGNBYnNvbHV0ZUhvcml6b250YWxWYWx1ZXMoTGVuZ3RoIHdpZHRoLCBjb25zdCBSZW5kZXJPYmpl
Y3QqIGNiLCBUZXh0RGlyZWN0aW9uIGNvbnRhaW5lckRpcmVjdGlvbiwKSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJveC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94LmNwcAkocmV2aXNpb24gMTQ3MTQpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzk4LDYgKzEzOTgsNDYgQEAgdm9pZCBSZW5k
ZXJCb3g6OnNldFN0YXRpY1koaW50IHN0YXRpY1kpCiAgICAgbV9zdGF0aWNZID0gc3RhdGljWTsK
IH0KIAoraW50IFJlbmRlckJveDo6Y29udGFpbmluZ0Jsb2NrV2lkdGhGb3JQb3NpdGlvbmVkKGNv
bnN0IFJlbmRlck9iamVjdCogY29udGFpbmluZ0Jsb2NrKSBjb25zdAoreworICAgIGlmIChjb250
YWluaW5nQmxvY2stPmlzSW5saW5lKCkpIHsKKyAgICAgICAgQVNTRVJUKGNvbnRhaW5pbmdCbG9j
ay0+aXNSZWxQb3NpdGlvbmVkKCkpOworICAgIAorICAgICAgICBjb25zdCBSZW5kZXJGbG93KiBm
bG93ID0gc3RhdGljX2Nhc3Q8Y29uc3QgUmVuZGVyRmxvdyo+KGNvbnRhaW5pbmdCbG9jayk7Cisg
ICAgICAgIElubGluZUZsb3dCb3gqIGZpcnN0ID0gZmxvdy0+Zmlyc3RMaW5lQm94KCk7CisgICAg
ICAgIElubGluZUZsb3dCb3gqIGxhc3QgPSBmbG93LT5sYXN0TGluZUJveCgpOworICAgICAgICAK
KyAgICAgICAgLy8gSWYgdGhlIGNvbnRhaW5pbmcgYmxvY2sgaXMgZW1wdHksIHJldHVybiBhIHdp
ZHRoIG9mIDAuCisgICAgICAgIGlmICghZmlyc3QgfHwgIWxhc3QpCisgICAgICAgICAgICByZXR1
cm4gMDsKKworICAgICAgICBpbnQgZnJvbUxlZnQ7CisgICAgICAgIGludCBmcm9tUmlnaHQ7Cisg
ICAgICAgIGlmIChjb250YWluaW5nQmxvY2stPnN0eWxlKCktPmRpcmVjdGlvbigpID09IExUUikg
eworICAgICAgICAgICAgZnJvbUxlZnQgPSBmaXJzdC0+eFBvcygpICsgZmlyc3QtPmJvcmRlckxl
ZnQoKTsKKyAgICAgICAgICAgIGZyb21SaWdodCA9IGxhc3QtPnhQb3MoKSArIGxhc3QtPndpZHRo
KCkgLSBsYXN0LT5ib3JkZXJSaWdodCgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
ZnJvbVJpZ2h0ID0gZmlyc3QtPnhQb3MoKSArIGZpcnN0LT53aWR0aCgpIC0gZmlyc3QtPmJvcmRl
clJpZ2h0KCk7CisgICAgICAgICAgICBmcm9tTGVmdCA9IGxhc3QtPnhQb3MoKSArIGxhc3QtPmJv
cmRlckxlZnQoKTsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiBtYXgoMCwgKGZyb21SaWdo
dCAtIGZyb21MZWZ0KSk7CisgICAgfQorCisgICAgaWYgKHVzZXNMaW5lV2lkdGgoKSAmJiBpc1Jl
bmRlckJsb2NrKCkpCisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBSZW5kZXJCbG9j
ayo+KGNvbnRhaW5pbmdCbG9jayktPmxpbmVXaWR0aChtX3kpICsgY29udGFpbmluZ0Jsb2NrLT5w
YWRkaW5nTGVmdCgpICsgY29udGFpbmluZ0Jsb2NrLT5wYWRkaW5nUmlnaHQoKTsKKyAgICByZXR1
cm4gY29udGFpbmluZ0Jsb2NrLT53aWR0aCgpIC0gY29udGFpbmluZ0Jsb2NrLT5ib3JkZXJMZWZ0
KCkgLSBjb250YWluaW5nQmxvY2stPmJvcmRlclJpZ2h0KCk7Cit9CisKK2ludCBSZW5kZXJCb3g6
OmNvbnRhaW5pbmdCbG9ja0hlaWdodEZvclBvc2l0aW9uZWQoY29uc3QgUmVuZGVyT2JqZWN0KiBj
b250YWluaW5nQmxvY2spIGNvbnN0Cit7CisgICAgLy8gRXZlbiBpbiBzdHJpY3QgbW9kZSAod2hl
cmUgd2UgZG9uJ3QgZ3JvdyB0aGUgcm9vdCB0byBmaWxsIHRoZSB2aWV3cG9ydCkgb3RoZXIgYnJv
d3NlcnMKKyAgICAvLyBwb3NpdGlvbiBhcyB0aG91Z2ggdGhlIHJvb3QgZmlsbHMgdGhlIHZpZXdw
b3J0LgorICAgIGlmIChjb250YWluaW5nQmxvY2stPmlzUm9vdCgpKQorICAgICAgICByZXR1cm4g
Y29udGFpbmluZ0Jsb2NrLT5hdmFpbGFibGVIZWlnaHQoKTsKKyAgICByZXR1cm4gY29udGFpbmlu
Z0Jsb2NrLT5oZWlnaHQoKSAtIGNvbnRhaW5pbmdCbG9jay0+Ym9yZGVyVG9wKCkgLSBjb250YWlu
aW5nQmxvY2stPmJvcmRlckJvdHRvbSgpOworfQorCiB2b2lkIFJlbmRlckJveDo6Y2FsY0Fic29s
dXRlSG9yaXpvbnRhbCgpCiB7CiAgICAgaWYgKGlzUmVwbGFjZWQoKSkgewpAQCAtMTQzNCwxMCAr
MTQ3NCw4IEBAIHZvaWQgUmVuZGVyQm94OjpjYWxjQWJzb2x1dGVIb3Jpem9udGFsKCkKICAgICAv
LyBXZSBkb24ndCB1c2UgY29udGFpbmluZ0Jsb2NrKCksIHNpbmNlIHdlIG1heSBiZSBwb3NpdGlv
bmVkIGJ5IGFuIGVuY2xvc2luZwogICAgIC8vIHJlbGF0aXZlIHBvc2l0aW9uZWQgaW5saW5lLgog
ICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29udGFpbmVyQmxvY2sgPSBjb250YWluZXIoKTsKLSAg
ICAKLSAgICAvLyBGSVhNRTogVGhpcyBpcyBpbmNvcnJlY3QgZm9yIGNhc2VzIHdoZXJlIHRoZSBj
b250YWluZXIgYmxvY2sgaXMgYSByZWxhdGl2ZWx5Ci0gICAgLy8gcG9zaXRpb25lZCBpbmxpbmUu
Ci0gICAgY29uc3QgaW50IGNvbnRhaW5lcldpZHRoID0gY29udGFpbmluZ0Jsb2NrV2lkdGgoKSAr
IGNvbnRhaW5lckJsb2NrLT5wYWRkaW5nTGVmdCgpICsgY29udGFpbmVyQmxvY2stPnBhZGRpbmdS
aWdodCgpOworCisgICAgY29uc3QgaW50IGNvbnRhaW5lcldpZHRoID0gY29udGFpbmluZ0Jsb2Nr
V2lkdGhGb3JQb3NpdGlvbmVkKGNvbnRhaW5lckJsb2NrKTsKIAogICAgIC8vIFRvIG1hdGNoIFdp
bklFLCBpbiBxdWlya3MgbW9kZSB1c2UgdGhlIHBhcmVudCdzICdkaXJlY3Rpb24nIHByb3BlcnR5
CiAgICAgLy8gaW5zdGVhZCBvZiB0aGUgdGhlIGNvbnRhaW5lciBibG9jaydzLgpAQCAtMTY5Niw2
ICsxNzM0LDIxIEBAIHZvaWQgUmVuZGVyQm94OjpjYWxjQWJzb2x1dGVIb3Jpem9udGFsVmEKICAg
ICB9CiAKICAgICAvLyBVc2UgY29tcHV0ZWQgdmFsdWVzIHRvIGNhbGN1bGF0ZSB0aGUgaG9yaXpv
bnRhbCBwb3NpdGlvbi4KKworICAgIC8vIEZJWE1FOiBUaGlzIGhhY2sgaXMgbmVlZGVkIHRvIGNh
bGN1bGF0ZSB0aGUgeFBvcyBmb3IgYSAncnRsJyByZWxhdGl2ZWx5IAorICAgIC8vIHBvc2l0aW9u
ZWQsIGlubGluZSBjb250YWluaW5nIGJsb2NrIGJlY2F1c2UgcmlnaHQgbm93LCBpdCBpcyB1c2lu
ZyB0aGUgeFBvcyAKKyAgICAvLyBvZiB0aGUgZmlyc3QgbGluZSBib3ggd2hlbiByZWFsbHkgaXQg
c2hvdWxkIHVzZSB0aGUgbGFzdCBsaW5lIGJveC4gIFdoZW4gCisgICAgLy8gdGhpcyBpcyBmaXhl
ZCBlbHNld2hlcmUsIHRoaXMgYmxvY2sgc2hvdWxkIGJlIHJlbW92ZWQuCisgICAgaWYgKGNvbnRh
aW5lckJsb2NrLT5pc0lubGluZSgpICYmIGNvbnRhaW5lckJsb2NrLT5zdHlsZSgpLT5kaXJlY3Rp
b24oKSA9PSBSVEwpIHsKKyAgICAgICAgY29uc3QgUmVuZGVyRmxvdyogZmxvdyA9IHN0YXRpY19j
YXN0PGNvbnN0IFJlbmRlckZsb3cqPihjb250YWluZXJCbG9jayk7CisgICAgICAgIElubGluZUZs
b3dCb3gqIGZpcnN0TGluZSA9IGZsb3ctPmZpcnN0TGluZUJveCgpOworICAgICAgICBJbmxpbmVG
bG93Qm94KiBsYXN0TGluZSA9IGZsb3ctPmxhc3RMaW5lQm94KCk7CisgICAgICAgIGlmIChmaXJz
dExpbmUgJiYgbGFzdExpbmUgJiYgZmlyc3RMaW5lICE9IGxhc3RMaW5lKSB7CisgICAgICAgICAg
ICB4UG9zID0gbGVmdFZhbHVlICsgbWFyZ2luTGVmdFZhbHVlICsgbGFzdExpbmUtPmJvcmRlckxl
ZnQoKSArIChsYXN0TGluZS0+eFBvcygpIC0gZmlyc3RMaW5lLT54UG9zKCkpOworICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCiAgICAgeFBvcyA9IGxlZnRWYWx1ZSArIG1h
cmdpbkxlZnRWYWx1ZSArIGNvbnRhaW5lckJsb2NrLT5ib3JkZXJMZWZ0KCk7CiB9CiAKQEAgLTE3
MTYsOSArMTc2OSw3IEBAIHZvaWQgUmVuZGVyQm94OjpjYWxjQWJzb2x1dGVWZXJ0aWNhbCgpCiAg
ICAgLy8gV2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdCbG9jaygpLCBzaW5jZSB3ZSBtYXkgYmUgcG9z
aXRpb25lZCBieSBhbiBlbmNsb3NpbmcgcmVscG9zaXRpb25lZCBpbmxpbmUuCiAgICAgY29uc3Qg
UmVuZGVyT2JqZWN0KiBjb250YWluZXJCbG9jayA9IGNvbnRhaW5lcigpOwogCi0gICAgLy8gRXZl
biBpbiBzdHJpY3QgbW9kZSAod2hlcmUgd2UgZG9uJ3QgZ3JvdyB0aGUgcm9vdCB0byBmaWxsIHRo
ZSB2aWV3cG9ydCkgb3RoZXIgYnJvd3NlcnMKLSAgICAvLyBwb3NpdGlvbiBhcyB0aG91Z2ggdGhl
IHJvb3QgZmlsbHMgdGhlIHZpZXdwb3J0LgotICAgIGNvbnN0IGludCBjb250YWluZXJIZWlnaHQg
PSBjb250YWluZXJCbG9jay0+aXNSb290KCkgPyBjb250YWluZXJCbG9jay0+YXZhaWxhYmxlSGVp
Z2h0KCkgOiAoY29udGFpbmVyQmxvY2stPmhlaWdodCgpIC0gY29udGFpbmVyQmxvY2stPmJvcmRl
clRvcCgpIC0gY29udGFpbmVyQmxvY2stPmJvcmRlckJvdHRvbSgpKTsKKyAgICBjb25zdCBpbnQg
Y29udGFpbmVySGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrSGVpZ2h0Rm9yUG9zaXRpb25lZChjb250
YWluZXJCbG9jayk7CiAgICAgCiAgICAgY29uc3QgaW50IGJvcmRlcnNQbHVzUGFkZGluZyA9IGJv
cmRlclRvcCgpICsgYm9yZGVyQm90dG9tKCkgKyBwYWRkaW5nVG9wKCkgKyBwYWRkaW5nQm90dG9t
KCk7CiAgICAgY29uc3QgTGVuZ3RoIG1hcmdpblRvcCA9IHN0eWxlKCktPm1hcmdpblRvcCgpOwpA
QCAtMTk0MiwxMiArMTk5MywxMSBAQCB2b2lkIFJlbmRlckJveDo6Y2FsY0Fic29sdXRlSG9yaXpv
bnRhbFJlCiAgICAgLy8gKGJsb2NrLXN0eWxlLWNvbW1lbnRzIGluIHRoaXMgZnVuY3Rpb24gY29y
cmVzcG9uZCB0byB0ZXh0IGZyb20gdGhlIHNwZWMgYW5kCiAgICAgLy8gdGhlIG51bWJlcnMgY29y
cmVzcG9uZCB0byBudW1iZXJzIGluIHNwZWMpCiAKLSAgICAvLyBXZSBkb24ndCB1c2UgY29udGFp
bmluZ0Jsb2NrKCksIHNpbmNlIHdlIG1heSBiZSBwb3NpdGlvbmVkIGJ5IGFuIGVuY2xvc2luZyBy
ZWxwb3NpdGlvbmVkIGlubGluZS4KKyAgICAvLyBXZSBkb24ndCB1c2UgY29udGFpbmluZ0Jsb2Nr
KCksIHNpbmNlIHdlIG1heSBiZSBwb3NpdGlvbmVkIGJ5IGFuIGVuY2xvc2luZworICAgIC8vIHJl
bGF0aXZlIHBvc2l0aW9uZWQgaW5saW5lLgogICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29udGFp
bmVyQmxvY2sgPSBjb250YWluZXIoKTsKIAotICAgIC8vIEZJWE1FOiBUaGlzIGlzIGluY29ycmVj
dCBmb3IgY2FzZXMgd2hlcmUgdGhlIGNvbnRhaW5lciBibG9jayBpcyBhIHJlbGF0aXZlbHkKLSAg
ICAvLyBwb3NpdGlvbmVkIGlubGluZS4KLSAgICBjb25zdCBpbnQgY29udGFpbmVyV2lkdGggPSBj
b250YWluaW5nQmxvY2tXaWR0aCgpICsgY29udGFpbmVyQmxvY2stPnBhZGRpbmdMZWZ0KCkgKyBj
b250YWluZXJCbG9jay0+cGFkZGluZ1JpZ2h0KCk7CisgICAgY29uc3QgaW50IGNvbnRhaW5lcldp
ZHRoID0gY29udGFpbmluZ0Jsb2NrV2lkdGhGb3JQb3NpdGlvbmVkKGNvbnRhaW5lckJsb2NrKTsK
ICAgICAKICAgICAvLyBUbyBtYXRjaCBXaW5JRSwgaW4gcXVpcmtzIG1vZGUgdXNlIHRoZSBwYXJl
bnQncyAnZGlyZWN0aW9uJyBwcm9wZXJ0eSAKICAgICAvLyBpbnN0ZWFkIG9mIHRoZSB0aGUgY29u
dGFpbmVyIGJsb2NrJ3MuCkBAIC0yMDkwLDggKzIxNDAsMjIgQEAgdm9pZCBSZW5kZXJCb3g6OmNh
bGNBYnNvbHV0ZUhvcml6b250YWxSZQogICAgIGlmICh0b3RhbFdpZHRoID4gY29udGFpbmVyV2lk
dGggJiYgKGNvbnRhaW5lckRpcmVjdGlvbiA9PSBSVEwpKQogICAgICAgICBsZWZ0VmFsdWUgPSBj
b250YWluZXJXaWR0aCAtICh0b3RhbFdpZHRoIC0gbGVmdFZhbHVlKTsKIAotCiAgICAgLy8gVXNl
IGNvbXB1dGVkIHZhbHVlcyB0byBjYWxjdWxhdGUgdGhlIGhvcml6b250YWwgcG9zaXRpb24uCisK
KyAgICAvLyBGSVhNRTogVGhpcyBoYWNrIGlzIG5lZWRlZCB0byBjYWxjdWxhdGUgdGhlIHhQb3Mg
Zm9yIGEgJ3J0bCcgcmVsYXRpdmVseSAKKyAgICAvLyBwb3NpdGlvbmVkLCBpbmxpbmUgY29udGFp
bmluZyBibG9jayBiZWNhdXNlIHJpZ2h0IG5vdywgaXQgaXMgdXNpbmcgdGhlIHhQb3MgCisgICAg
Ly8gb2YgdGhlIGZpcnN0IGxpbmUgYm94IHdoZW4gcmVhbGx5IGl0IHNob3VsZCB1c2UgdGhlIGxh
c3QgbGluZSBib3guICBXaGVuIAorICAgIC8vIHRoaXMgaXMgZml4ZWQgZWxzZXdoZXJlLCB0aGlz
IGJsb2NrIHNob3VsZCBiZSByZW1vdmVkLgorICAgIGlmIChjb250YWluZXJCbG9jay0+aXNJbmxp
bmUoKSAmJiBjb250YWluZXJCbG9jay0+c3R5bGUoKS0+ZGlyZWN0aW9uKCkgPT0gUlRMKSB7Cisg
ICAgICAgIGNvbnN0IFJlbmRlckZsb3cqIGZsb3cgPSBzdGF0aWNfY2FzdDxjb25zdCBSZW5kZXJG
bG93Kj4oY29udGFpbmVyQmxvY2spOworICAgICAgICBJbmxpbmVGbG93Qm94KiBmaXJzdExpbmUg
PSBmbG93LT5maXJzdExpbmVCb3goKTsKKyAgICAgICAgSW5saW5lRmxvd0JveCogbGFzdExpbmUg
PSBmbG93LT5sYXN0TGluZUJveCgpOworICAgICAgICBpZiAoZmlyc3RMaW5lICYmIGxhc3RMaW5l
ICYmIGZpcnN0TGluZSAhPSBsYXN0TGluZSkgeworICAgICAgICAgICAgbV94ID0gbGVmdFZhbHVl
ICsgbV9tYXJnaW5MZWZ0ICsgbGFzdExpbmUtPmJvcmRlckxlZnQoKSArIChsYXN0TGluZS0+eFBv
cygpIC0gZmlyc3RMaW5lLT54UG9zKCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisgICAgfQorCiAgICAgbV94ID0gbGVmdFZhbHVlICsgbV9tYXJnaW5MZWZ0ICsgY29udGFpbmVy
QmxvY2stPmJvcmRlckxlZnQoKTsKIH0KIApAQCAtMjEwNiw5ICsyMTcwLDcgQEAgdm9pZCBSZW5k
ZXJCb3g6OmNhbGNBYnNvbHV0ZVZlcnRpY2FsUmVwbAogICAgIC8vIFdlIGRvbid0IHVzZSBjb250
YWluaW5nQmxvY2soKSwgc2luY2Ugd2UgbWF5IGJlIHBvc2l0aW9uZWQgYnkgYW4gZW5jbG9zaW5n
IHJlbHBvc2l0aW9uZWQgaW5saW5lLgogICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29udGFpbmVy
QmxvY2sgPSBjb250YWluZXIoKTsKIAotICAgIC8vIEV2ZW4gaW4gc3RyaWN0IG1vZGUgKHdoZXJl
IHdlIGRvbid0IGdyb3cgdGhlIHJvb3QgdG8gZmlsbCB0aGUgdmlld3BvcnQpCi0gICAgLy8gb3Ro
ZXIgYnJvd3NlcnMgcG9zaXRpb24gYXMgdGhvdWdoIHRoZSByb290IGZpbGxzIHRoZSB2aWV3cG9y
dC4KLSAgICBjb25zdCBpbnQgY29udGFpbmVySGVpZ2h0ID0gY29udGFpbmVyQmxvY2stPmlzUm9v
dCgpID8gY29udGFpbmVyQmxvY2stPmF2YWlsYWJsZUhlaWdodCgpIDogKGNvbnRhaW5lckJsb2Nr
LT5oZWlnaHQoKSAtIGNvbnRhaW5lckJsb2NrLT5ib3JkZXJUb3AoKSAtIGNvbnRhaW5lckJsb2Nr
LT5ib3JkZXJCb3R0b20oKSk7CisgICAgY29uc3QgaW50IGNvbnRhaW5lckhlaWdodCA9IGNvbnRh
aW5pbmdCbG9ja0hlaWdodEZvclBvc2l0aW9uZWQoY29udGFpbmVyQmxvY2spOwogCiAgICAgLy8g
VmFyaWFibGVzIHRvIHNvbHZlLgogICAgIExlbmd0aCB0b3AgPSBzdHlsZSgpLT50b3AoKTsKSW5k
ZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShy
ZXZpc2lvbiAxNDcxNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjEgQEAKKzIwMDYtMDYtMDMgIFNhbSBXZWluaWcgIDxzYW0ud2VpbmlnQGdtYWlsLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAtIGZp
eCBmb3IgaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD05MjEz
CisgICAgICAgICAgQWJzb2x1dGVseSBwb3NpdGlvbmVkIG9iamVjdHMgd2l0aCByZWxhdGl2ZWx5
IHBvc2l0aW9uZWQgaW5saW5lIAorICAgICAgICAgIGNvbnRhaW5pbmcgYmxvY2tzIGFyZSByZW5k
ZXJlZCBpbmNvcnJlY3RseQorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbnRhaW5pbmdCbG9ja1dpZHRoRm9yUG9zaXRp
b25lZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbnRhaW5pbmdCbG9ja0hlaWdo
dEZvclBvc2l0aW9uZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpjYWxjQWJzb2x1
dGVIb3Jpem9udGFsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y2FsY0Fic29sdXRl
SG9yaXpvbnRhbFZhbHVlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNhbGNBYnNv
bHV0ZVZlcnRpY2FsKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y2FsY0Fic29sdXRl
SG9yaXpvbnRhbFJlcGxhY2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y2FsY0Fi
c29sdXRlVmVydGljYWxSZXBsYWNlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5o
OgorCiAyMDA2LTA2LTAzICBNaXR6IFBldHRlbCAgPG9wZW5kYXJ3aW4ub3JnQG1pdHpwZXR0ZWwu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEh5YXR0Lgo=
</data>
<flag name="review"
          id="2507"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>