<?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>46753</bug_id>
          
          <creation_ts>2010-09-28 14:03:12 -0700</creation_ts>
          <short_desc>Add -webkit-margin-before-collapse and -webkit-margin-after-collapse</short_desc>
          <delta_ts>2010-09-28 14:17:08 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>46123</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>286515</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-28 14:03:12 -0700</bug_when>
    <thetext>Right now we have two properties named margin-top-collapse and margin-after-collapse.  They are proprietary and only used by Safari RSS.

I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones.  This way we have some names that are directionally independent.

Note that these properties aren&apos;t like other directional properties.  They are about what to do with the before side and after side of your block&apos;s margins when collapsing with adjacent blocks.  The meaning of before/after depend on the block-flow directionality of the containing block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>286516</commentid>
    <comment_count>1</comment_count>
      <attachid>69100</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-28 14:05:04 -0700</bug_when>
    <thetext>Created attachment 69100
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>286524</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-28 14:17:03 -0700</bug_when>
    <thetext>Fixed in r68561.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69100</attachid>
            <date>2010-09-28 14:05:04 -0700</date>
            <delta_ts>2010-09-28 14:07:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>27129</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODU1OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDYgQEAKKzIwMTAtMDktMjggIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJpZ2h0
IG5vdyB3ZSBoYXZlIHR3byBwcm9wZXJ0aWVzIG5hbWVkIG1hcmdpbi10b3AtY29sbGFwc2UgYW5k
IG1hcmdpbi1hZnRlci1jb2xsYXBzZS4gIFRoZXkgYXJlIHByb3ByaWV0YXJ5IGFuZCBvbmx5IHVz
ZWQgYnkgU2FmYXJpIFJTUy4KKworICAgICAgICBJIGFtIGFkZGluZyBtYXJnaW4tYmVmb3JlLWNv
bGxhcHNlIGFuZCBtYXJnaW4tYWZ0ZXItY29sbGFwc2UgYW5kIGp1c3QgYWxpYXNpbmcgdGhlIG9s
ZCBwcm9wZXJ0aWVzIHRvIHRoZSBuZXcgb25lcy4KKyAgICAgICAgVGhpcyB3YXkgd2UgaGF2ZSBz
b21lIG5hbWVzIHRoYXQgYXJlIGRpcmVjdGlvbmFsbHkgaW5kZXBlbmRlbnQuCisKKyAgICAgICAg
Tm90ZSB0aGF0IHRoZXNlIHByb3BlcnRpZXMgYXJlbid0IGxpa2Ugb3RoZXIgZGlyZWN0aW9uYWwg
cHJvcGVydGllcy4gIFRoZXkgYXJlIGFib3V0IHdoYXQgdG8gZG8gd2l0aCB0aGUgYmVmb3JlIHNp
ZGUgYW5kIGFmdGVyIHNpZGUgb2YKKyAgICAgICAgeW91ciBibG9jaydzIG1hcmdpbnMgd2hlbiBj
b2xsYXBzaW5nIHdpdGggYWRqYWNlbnQgYmxvY2tzLiAgVGhlIG1lYW5pbmcgb2YgYmVmb3JlL2Fm
dGVyIGRlcGVuZCBvbiB0aGUgYmxvY2stZmxvdyBkaXJlY3Rpb25hbGl0eQorICAgICAgICBvZiB0
aGUgY29udGFpbmluZyBibG9jay4KKworICAgICAgICBDb21wdXRlZCBzdHlsZSB0ZXN0cyBhbGwg
Y2hhbmdlZCBhbmQgdGhlIHJlbW92ZS1zaG9ydGhhbmQuaHRtbCB0ZXN0IGNvdmVycyBtYW5pcHVs
YXRpb24gb2YgdGhlIHNob3J0aGFuZC4KKworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uOjpnZXRQcm9wZXJ0eUNTU1ZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VWYWx1ZSk6CisgICAgICAgICog
Y3NzL0NTU1Byb3BlcnR5TG9uZ2hhbmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aW5pdFNob3J0
aGFuZE1hcCk6CisgICAgICAgICogY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW46CisgICAgICAgICog
Y3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxl
Y3Rvcjo6YXBwbHlQcm9wZXJ0eSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjpNYXJnaW5JbmZvOjpNYXJnaW5JbmZv
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjppc1NlbGZDb2xsYXBzaW5nQmxvY2sp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNvbGxhcHNlTWFyZ2lucyk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6bGF5b3V0QmxvY2tDaGlsZCk6CisgICAgICAgICog
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clN0eWxlOjpkaWZmKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkluaGVyaXRlZEZsYWdzOjptYXJnaW5CZWZvcmVDb2xsYXBzZSk6
CisgICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6bWFyZ2luQWZ0ZXJDb2xsYXBzZSk6
CisgICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6c2V0TWFyZ2luQmVmb3JlQ29sbGFw
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OnNldE1hcmdpbkFmdGVyQ29s
bGFwc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5oZXJpdGVkRmxhZ3M6OmluaXRpYWxNYXJnaW5C
ZWZvcmVDb2xsYXBzZSk6CisgICAgICAgIChXZWJDb3JlOjpJbmhlcml0ZWRGbGFnczo6aW5pdGlh
bE1hcmdpbkFmdGVyQ29sbGFwc2UpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFyZU5vbklu
aGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSk6CisgICAgICAgICogcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDoKKwogMjAxMC0wOS0yOCAg
TWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgpJbmRleDogV2ViQ29yZS9jc3MvQ1NTQ29tcHV0
ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NDb21w
dXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCShyZXZpc2lvbiA2ODE3NCkKKysrIFdlYkNvcmUvY3Nz
L0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5Miw4
ICsxOTIsOCBAQCBzdGF0aWMgY29uc3QgaW50IGNvbXB1dGVkUHJvcGVydGllc1tdID0gCiAgICAg
Q1NTUHJvcGVydHlXZWJraXRIaWdobGlnaHQsCiAgICAgQ1NTUHJvcGVydHlXZWJraXRMaW5lQnJl
YWssCiAgICAgQ1NTUHJvcGVydHlXZWJraXRMaW5lQ2xhbXAsCi0gICAgQ1NTUHJvcGVydHlXZWJr
aXRNYXJnaW5Cb3R0b21Db2xsYXBzZSwKLSAgICBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpblRvcENv
bGxhcHNlLAorICAgIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luQmVmb3JlQ29sbGFwc2UsCisgICAg
Q1NTUHJvcGVydHlXZWJraXRNYXJnaW5BZnRlckNvbGxhcHNlLAogICAgIENTU1Byb3BlcnR5V2Vi
a2l0TWFycXVlZURpcmVjdGlvbiwKICAgICBDU1NQcm9wZXJ0eVdlYmtpdE1hcnF1ZWVJbmNyZW1l
bnQsCiAgICAgQ1NTUHJvcGVydHlXZWJraXRNYXJxdWVlUmVwZXRpdGlvbiwKQEAgLTEzNjIsMTAg
KzEzNjIsMTAgQEAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTQ29tcHV0ZWRTdHlsZURlYwogICAg
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Rm9udFNpemVEZWx0YToKICAgICAgICAgICAgIC8v
IE5vdCBhIHJlYWwgc3R5bGUgcHJvcGVydHkgLS0gdXNlZCBieSB0aGUgZWRpdGluZyBlbmdpbmUg
LS0gc28gaGFzIG5vIGNvbXB1dGVkIHZhbHVlLgogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5Cb3R0b21Db2xsYXBzZToKLSAgICAgICAgICAg
IHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHN0eWxlLT5tYXJnaW5Cb3R0b21Db2xs
YXBzZSgpKTsKLSAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpblRvcENvbGxhcHNl
OgotICAgICAgICAgICAgcmV0dXJuIENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUoc3R5bGUtPm1h
cmdpblRvcENvbGxhcHNlKCkpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2lu
QWZ0ZXJDb2xsYXBzZToKKyAgICAgICAgICAgIHJldHVybiBDU1NQcmltaXRpdmVWYWx1ZTo6Y3Jl
YXRlKHN0eWxlLT5tYXJnaW5BZnRlckNvbGxhcHNlKCkpOworICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0TWFyZ2luQmVmb3JlQ29sbGFwc2U6CisgICAgICAgICAgICByZXR1cm4gQ1NTUHJp
bWl0aXZlVmFsdWU6OmNyZWF0ZShzdHlsZS0+bWFyZ2luQmVmb3JlQ29sbGFwc2UoKSk7CiAgICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQZXJzcGVjdGl2ZToKICAgICAgICAgICAgIGlmICgh
c3R5bGUtPmhhc1BlcnNwZWN0aXZlKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIENTU1ByaW1p
dGl2ZVZhbHVlOjpjcmVhdGVJZGVudGlmaWVyKENTU1ZhbHVlTm9uZSk7CkluZGV4OiBXZWJDb3Jl
L2Nzcy9DU1NQYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAJKHJldmlzaW9uIDY4MTc0KQorKysgV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTQzMyw4ICsxNDMzLDggQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUo
aW50IHByb3BJZCwgYgogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNYXJnaW5Db2xsYXBzZTogewotICAgICAgICBjb25zdCBpbnQgcHJvcGVy
dGllc1syXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5Ub3BDb2xsYXBzZSwKLSAgICAgICAg
ICAgIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luQm90dG9tQ29sbGFwc2UgfTsKKyAgICAgICAgY29u
c3QgaW50IHByb3BlcnRpZXNbMl0gPSB7IENTU1Byb3BlcnR5V2Via2l0TWFyZ2luQmVmb3JlQ29s
bGFwc2UsCisgICAgICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpbkFmdGVyQ29sbGFwc2Ug
fTsKICAgICAgICAgaWYgKG51bSA9PSAxKSB7CiAgICAgICAgICAgICBTaG9ydGhhbmRTY29wZSBz
Y29wZSh0aGlzLCBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpbkNvbGxhcHNlKTsKICAgICAgICAgICAg
IGlmICghcGFyc2VWYWx1ZShwcm9wZXJ0aWVzWzBdLCBpbXBvcnRhbnQpKQpAQCAtMTQ1MSw2ICsx
NDUxLDggQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoaW50IHByb3BJZCwgYgogICAgICAg
ICB9CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdE1hcmdpbkJlZm9yZUNvbGxhcHNlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJn
aW5BZnRlckNvbGxhcHNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5Ub3BDb2xs
YXBzZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luQm90dG9tQ29sbGFwc2U6CiAg
ICAgICAgIGlmIChpZCA9PSBDU1NWYWx1ZUNvbGxhcHNlIHx8IGlkID09IENTU1ZhbHVlU2VwYXJh
dGUgfHwgaWQgPT0gQ1NTVmFsdWVEaXNjYXJkKQpJbmRleDogV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dHlMb25naGFuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlMb25n
aGFuZC5jcHAJKHJldmlzaW9uIDY4MTc0KQorKysgV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlMb25n
aGFuZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4LDcgKzk4LDcgQEAgc3RhdGljIHZvaWQgaW5p
dFNob3J0aGFuZE1hcChTaG9ydGhhbmRNYQogICAgIH07CiAgICAgU0VUX1NIT1JUSEFORF9NQVBf
RU5UUlkoc2hvcnRoYW5kTWFwLCBDU1NQcm9wZXJ0eU1hcmdpbiwgbWFyZ2luUHJvcGVydGllcyk7
CiAKLSAgICBzdGF0aWMgY29uc3QgaW50IG1hcmdpbkNvbGxhcHNlUHJvcGVydGllc1tdID0geyBD
U1NQcm9wZXJ0eVdlYmtpdE1hcmdpblRvcENvbGxhcHNlLCBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdp
bkJvdHRvbUNvbGxhcHNlIH07CisgICAgc3RhdGljIGNvbnN0IGludCBtYXJnaW5Db2xsYXBzZVBy
b3BlcnRpZXNbXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5CZWZvcmVDb2xsYXBzZSwgQ1NT
UHJvcGVydHlXZWJraXRNYXJnaW5BZnRlckNvbGxhcHNlIH07CiAgICAgU0VUX1NIT1JUSEFORF9N
QVBfRU5UUlkoc2hvcnRoYW5kTWFwLCBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpbkNvbGxhcHNlLCBt
YXJnaW5Db2xsYXBzZVByb3BlcnRpZXMpOwogCiAgICAgc3RhdGljIGNvbnN0IGludCBtYXJxdWVl
UHJvcGVydGllc1tdID0gewpJbmRleDogV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCShyZXZpc2lvbiA2
ODE3NCkKKysrIFdlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4JKHdvcmtpbmcgY29weSkK
QEAgLTIzMiwxMyArMjMyLDE1IEBAIHotaW5kZXgKIC13ZWJraXQtbGluZS1jbGFtcAogLXdlYmtp
dC1sb2dpY2FsLXdpZHRoCiAtd2Via2l0LWxvZ2ljYWwtaGVpZ2h0Cistd2Via2l0LW1hcmdpbi1h
ZnRlci1jb2xsYXBzZQorLXdlYmtpdC1tYXJnaW4tYmVmb3JlLWNvbGxhcHNlCiAtd2Via2l0LW1h
cmdpbi1ib3R0b20tY29sbGFwc2UKKy13ZWJraXQtbWFyZ2luLXRvcC1jb2xsYXBzZQogLXdlYmtp
dC1tYXJnaW4tY29sbGFwc2UKIC13ZWJraXQtbWFyZ2luLWFmdGVyCiAtd2Via2l0LW1hcmdpbi1i
ZWZvcmUKIC13ZWJraXQtbWFyZ2luLWVuZAogLXdlYmtpdC1tYXJnaW4tc3RhcnQKLS13ZWJraXQt
bWFyZ2luLXRvcC1jb2xsYXBzZQogLXdlYmtpdC1tYXJxdWVlCiAtd2Via2l0LW1hcnF1ZWUtZGly
ZWN0aW9uCiAtd2Via2l0LW1hcnF1ZWUtaW5jcmVtZW50CkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NT
dHlsZVNlbGVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcAkocmV2aXNpb24gNjgyMjcpCisrKyBXZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTE1OCwyMSArNTE1OCwyMyBAQCB2b2lkIENTU1N0eWxl
U2VsZWN0b3I6OmFwcGx5UHJvcGVydHkoaW50CiAgICAgfQogICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRNYXJnaW5Db2xsYXBzZTogewogICAgICAgICBpZiAoaXNJbmhlcml0KSB7Ci0gICAgICAg
ICAgICBtX3N0eWxlLT5zZXRNYXJnaW5Ub3BDb2xsYXBzZShtX3BhcmVudFN0eWxlLT5tYXJnaW5U
b3BDb2xsYXBzZSgpKTsKLSAgICAgICAgICAgIG1fc3R5bGUtPnNldE1hcmdpbkJvdHRvbUNvbGxh
cHNlKG1fcGFyZW50U3R5bGUtPm1hcmdpbkJvdHRvbUNvbGxhcHNlKCkpOworICAgICAgICAgICAg
bV9zdHlsZS0+c2V0TWFyZ2luQmVmb3JlQ29sbGFwc2UobV9wYXJlbnRTdHlsZS0+bWFyZ2luQmVm
b3JlQ29sbGFwc2UoKSk7CisgICAgICAgICAgICBtX3N0eWxlLT5zZXRNYXJnaW5BZnRlckNvbGxh
cHNlKG1fcGFyZW50U3R5bGUtPm1hcmdpbkFmdGVyQ29sbGFwc2UoKSk7CiAgICAgICAgIH0KICAg
ICAgICAgZWxzZSBpZiAoaXNJbml0aWFsKSB7Ci0gICAgICAgICAgICBtX3N0eWxlLT5zZXRNYXJn
aW5Ub3BDb2xsYXBzZShNQ09MTEFQU0UpOwotICAgICAgICAgICAgbV9zdHlsZS0+c2V0TWFyZ2lu
Qm90dG9tQ29sbGFwc2UoTUNPTExBUFNFKTsKKyAgICAgICAgICAgIG1fc3R5bGUtPnNldE1hcmdp
bkJlZm9yZUNvbGxhcHNlKE1DT0xMQVBTRSk7CisgICAgICAgICAgICBtX3N0eWxlLT5zZXRNYXJn
aW5BZnRlckNvbGxhcHNlKE1DT0xMQVBTRSk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5CZWZvcmVDb2xsYXBzZToK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luVG9wQ29sbGFwc2U6Ci0gICAgICAgIEhB
TkRMRV9JTkhFUklUX0FORF9JTklUSUFMX0FORF9QUklNSVRJVkUobWFyZ2luVG9wQ29sbGFwc2Us
IE1hcmdpblRvcENvbGxhcHNlKQorICAgICAgICBIQU5ETEVfSU5IRVJJVF9BTkRfSU5JVElBTF9B
TkRfUFJJTUlUSVZFKG1hcmdpbkJlZm9yZUNvbGxhcHNlLCBNYXJnaW5CZWZvcmVDb2xsYXBzZSkK
ICAgICAgICAgcmV0dXJuOworICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5BZnRlckNv
bGxhcHNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5Cb3R0b21Db2xsYXBzZToK
LSAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUxfQU5EX1BSSU1JVElWRShtYXJnaW5C
b3R0b21Db2xsYXBzZSwgTWFyZ2luQm90dG9tQ29sbGFwc2UpCisgICAgICAgIEhBTkRMRV9JTkhF
UklUX0FORF9JTklUSUFMX0FORF9QUklNSVRJVkUobWFyZ2luQWZ0ZXJDb2xsYXBzZSwgTWFyZ2lu
QWZ0ZXJDb2xsYXBzZSkKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRMaW5lQ2xhbXA6IHsKICAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUwobGluZUNs
YW1wLCBMaW5lQ2xhbXApCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCShyZXZpc2lv
biA2ODU1NikKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtOTIsMTcgKzkyLDE3IEBAIFJlbmRlckJsb2NrOjpNYXJnaW5JbmZvOjpNYXJnaW5J
bmZvKFJlbmQKICAgICAgICAgJiYgIWJsb2NrLT5pc0Zsb2F0aW5nKCkgJiYgIWJsb2NrLT5pc1Rh
YmxlQ2VsbCgpICYmICFibG9jay0+aGFzT3ZlcmZsb3dDbGlwKCkgJiYgIWJsb2NrLT5pc0lubGlu
ZUJsb2NrT3JJbmxpbmVUYWJsZSgpCiAgICAgICAgICYmICFibG9jay0+aXNCbG9ja0Zsb3dSb290
KCk7CiAKLSAgICBtX2NhbkNvbGxhcHNlTWFyZ2luQmVmb3JlV2l0aENoaWxkcmVuID0gbV9jYW5D
b2xsYXBzZVdpdGhDaGlsZHJlbiAmJiAoYmVmb3JlQm9yZGVyUGFkZGluZyA9PSAwKSAmJiBibG9j
ay0+c3R5bGUoKS0+bWFyZ2luVG9wQ29sbGFwc2UoKSAhPSBNU0VQQVJBVEU7CisgICAgbV9jYW5D
b2xsYXBzZU1hcmdpbkJlZm9yZVdpdGhDaGlsZHJlbiA9IG1fY2FuQ29sbGFwc2VXaXRoQ2hpbGRy
ZW4gJiYgKGJlZm9yZUJvcmRlclBhZGRpbmcgPT0gMCkgJiYgYmxvY2stPnN0eWxlKCktPm1hcmdp
bkJlZm9yZUNvbGxhcHNlKCkgIT0gTVNFUEFSQVRFOwogCiAgICAgLy8gSWYgYW55IGhlaWdodCBv
dGhlciB0aGFuIGF1dG8gaXMgc3BlY2lmaWVkIGluIENTUywgdGhlbiB3ZSBkb24ndCBjb2xsYXBz
ZSBvdXIgYm90dG9tCiAgICAgLy8gbWFyZ2lucyB3aXRoIG91ciBjaGlsZHJlbidzIG1hcmdpbnMu
ICBUbyBkbyBvdGhlcndpc2Ugd291bGQgYmUgdG8gcmlzayBvZGQgdmlzdWFsCiAgICAgLy8gZWZm
ZWN0cyB3aGVuIHRoZSBjaGlsZHJlbiBvdmVyZmxvdyBvdXQgb2YgdGhlIHBhcmVudCBibG9jayBh
bmQgeWV0IHN0aWxsIGNvbGxhcHNlCiAgICAgLy8gd2l0aCBpdC4gIFdlIGFsc28gZG9uJ3QgY29s
bGFwc2UgaWYgd2UgaGF2ZSBhbnkgYm90dG9tIGJvcmRlci9wYWRkaW5nLgogICAgIG1fY2FuQ29s
bGFwc2VNYXJnaW5BZnRlcldpdGhDaGlsZHJlbiA9IG1fY2FuQ29sbGFwc2VXaXRoQ2hpbGRyZW4g
JiYgKGFmdGVyQm9yZGVyUGFkZGluZyA9PSAwKSAmJgotICAgICAgICAoYmxvY2stPnN0eWxlKCkt
PmxvZ2ljYWxIZWlnaHQoKS5pc0F1dG8oKSAmJiBibG9jay0+c3R5bGUoKS0+bG9naWNhbEhlaWdo
dCgpLnZhbHVlKCkgPT0gMCkgJiYgYmxvY2stPnN0eWxlKCktPm1hcmdpbkJvdHRvbUNvbGxhcHNl
KCkgIT0gTVNFUEFSQVRFOworICAgICAgICAoYmxvY2stPnN0eWxlKCktPmxvZ2ljYWxIZWlnaHQo
KS5pc0F1dG8oKSAmJiBibG9jay0+c3R5bGUoKS0+bG9naWNhbEhlaWdodCgpLnZhbHVlKCkgPT0g
MCkgJiYgYmxvY2stPnN0eWxlKCktPm1hcmdpbkFmdGVyQ29sbGFwc2UoKSAhPSBNU0VQQVJBVEU7
CiAgICAgCi0gICAgbV9xdWlya0NvbnRhaW5lciA9IGJsb2NrLT5pc1RhYmxlQ2VsbCgpIHx8IGJs
b2NrLT5pc0JvZHkoKSB8fCBibG9jay0+c3R5bGUoKS0+bWFyZ2luVG9wQ29sbGFwc2UoKSA9PSBN
RElTQ0FSRCB8fCAKLSAgICAgICAgYmxvY2stPnN0eWxlKCktPm1hcmdpbkJvdHRvbUNvbGxhcHNl
KCkgPT0gTURJU0NBUkQ7CisgICAgbV9xdWlya0NvbnRhaW5lciA9IGJsb2NrLT5pc1RhYmxlQ2Vs
bCgpIHx8IGJsb2NrLT5pc0JvZHkoKSB8fCBibG9jay0+c3R5bGUoKS0+bWFyZ2luQmVmb3JlQ29s
bGFwc2UoKSA9PSBNRElTQ0FSRCB8fCAKKyAgICAgICAgYmxvY2stPnN0eWxlKCktPm1hcmdpbkFm
dGVyQ29sbGFwc2UoKSA9PSBNRElTQ0FSRDsKIAogICAgIG1fcG9zTWFyZ2luID0gbV9jYW5Db2xs
YXBzZU1hcmdpbkJlZm9yZVdpdGhDaGlsZHJlbiA/IGJsb2NrLT5tYXhUb3BNYXJnaW4odHJ1ZSkg
OiAwOwogICAgIG1fbmVnTWFyZ2luID0gbV9jYW5Db2xsYXBzZU1hcmdpbkFmdGVyV2l0aENoaWxk
cmVuID8gYmxvY2stPm1heFRvcE1hcmdpbihmYWxzZSkgOiAwOwpAQCAtMTAyMiw3ICsxMDIyLDcg
QEAgYm9vbCBSZW5kZXJCbG9jazo6aXNTZWxmQ29sbGFwc2luZ0Jsb2NrKAogICAgIGlmIChoZWln
aHQoKSA+IDAKICAgICAgICAgfHwgaXNUYWJsZSgpIHx8IGJvcmRlckFuZFBhZGRpbmdIZWlnaHQo
KQogICAgICAgICB8fCBzdHlsZSgpLT5taW5IZWlnaHQoKS5pc1Bvc2l0aXZlKCkKLSAgICAgICAg
fHwgc3R5bGUoKS0+bWFyZ2luVG9wQ29sbGFwc2UoKSA9PSBNU0VQQVJBVEUgfHwgc3R5bGUoKS0+
bWFyZ2luQm90dG9tQ29sbGFwc2UoKSA9PSBNU0VQQVJBVEUpCisgICAgICAgIHx8IHN0eWxlKCkt
Pm1hcmdpbkJlZm9yZUNvbGxhcHNlKCkgPT0gTVNFUEFSQVRFIHx8IHN0eWxlKCktPm1hcmdpbkFm
dGVyQ29sbGFwc2UoKSA9PSBNU0VQQVJBVEUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAg
IGJvb2wgaGFzQXV0b0hlaWdodCA9IHN0eWxlKCktPmhlaWdodCgpLmlzQXV0bygpOwpAQCAtMTQ3
OSw3ICsxNDc5LDcgQEAgaW50IFJlbmRlckJsb2NrOjpjb2xsYXBzZU1hcmdpbnMoUmVuZGVyQgog
ICAgIAogICAgIC8vIFNlZSBpZiB0aGUgdG9wIG1hcmdpbiBpcyBxdWlya3kuIFdlIG9ubHkgY2Fy
ZSBpZiB0aGlzIGNoaWxkIGhhcwogICAgIC8vIG1hcmdpbnMgdGhhdCB3aWxsIGNvbGxhcHNlIHdp
dGggdXMuCi0gICAgYm9vbCB0b3BRdWlyayA9IGNoaWxkLT5pc1RvcE1hcmdpblF1aXJrKCkgfHwg
c3R5bGUoKS0+bWFyZ2luVG9wQ29sbGFwc2UoKSA9PSBNRElTQ0FSRDsKKyAgICBib29sIHRvcFF1
aXJrID0gY2hpbGQtPmlzVG9wTWFyZ2luUXVpcmsoKSB8fCBzdHlsZSgpLT5tYXJnaW5CZWZvcmVD
b2xsYXBzZSgpID09IE1ESVNDQVJEOwogCiAgICAgaWYgKG1hcmdpbkluZm8uY2FuQ29sbGFwc2VX
aXRoTWFyZ2luQmVmb3JlKCkpIHsKICAgICAgICAgLy8gVGhpcyBjaGlsZCBpcyBjb2xsYXBzaW5n
IHdpdGggdGhlIHRvcCBvZiB0aGUKQEAgLTE1MzIsNyArMTUzMiw3IEBAIGludCBSZW5kZXJCbG9j
azo6Y29sbGFwc2VNYXJnaW5zKFJlbmRlckIKICAgICAgICAgICAgIHlwb3MgPSBoZWlnaHQoKSAr
IGNvbGxhcHNlZFRvcFBvcyAtIGNvbGxhcHNlZFRvcE5lZzsKICAgICB9CiAgICAgZWxzZSB7Ci0g
ICAgICAgIGlmIChjaGlsZC0+c3R5bGUoKS0+bWFyZ2luVG9wQ29sbGFwc2UoKSA9PSBNU0VQQVJB
VEUpIHsKKyAgICAgICAgaWYgKGNoaWxkLT5zdHlsZSgpLT5tYXJnaW5CZWZvcmVDb2xsYXBzZSgp
ID09IE1TRVBBUkFURSkgewogICAgICAgICAgICAgc2V0TG9naWNhbEhlaWdodChoZWlnaHQoKSAr
IG1hcmdpbkluZm8ubWFyZ2luKCkgKyBjaGlsZC0+bWFyZ2luVG9wKCkpOwogICAgICAgICAgICAg
eXBvcyA9IGhlaWdodCgpOwogICAgICAgICB9CkBAIC0xNTQ5LDcgKzE1NDksNyBAQCBpbnQgUmVu
ZGVyQmxvY2s6OmNvbGxhcHNlTWFyZ2lucyhSZW5kZXJCCiAgICAgICAgIG1hcmdpbkluZm8uc2V0
TmVnTWFyZ2luKGNoaWxkLT5tYXhCb3R0b21NYXJnaW4oZmFsc2UpKTsKIAogICAgICAgICBpZiAo
bWFyZ2luSW5mby5tYXJnaW4oKSkKLSAgICAgICAgICAgIG1hcmdpbkluZm8uc2V0TWFyZ2luQWZ0
ZXJRdWlyayhjaGlsZC0+aXNCb3R0b21NYXJnaW5RdWlyaygpIHx8IHN0eWxlKCktPm1hcmdpbkJv
dHRvbUNvbGxhcHNlKCkgPT0gTURJU0NBUkQpOworICAgICAgICAgICAgbWFyZ2luSW5mby5zZXRN
YXJnaW5BZnRlclF1aXJrKGNoaWxkLT5pc0JvdHRvbU1hcmdpblF1aXJrKCkgfHwgc3R5bGUoKS0+
bWFyZ2luQWZ0ZXJDb2xsYXBzZSgpID09IE1ESVNDQVJEKTsKICAgICB9CiAgICAgCiAgICAgLy8g
SWYgbWFyZ2lucyB3b3VsZCBwdWxsIHVzIHBhc3QgdGhlIHRvcCBvZiB0aGUgbmV4dCBwYWdlLCB0
aGVuIHdlIG5lZWQgdG8gcHVsbCBiYWNrIGFuZCBwcmV0ZW5kIGxpa2UgdGhlIG1hcmdpbnMKQEAg
LTE4MTAsNyArMTgxMCw3IEBAIHZvaWQgUmVuZGVyQmxvY2s6OmxheW91dEJsb2NrQ2hpbGQoUmVu
ZGUKICAgICBjaGlsZC0+Y29tcHV0ZUJsb2NrRGlyZWN0aW9uTWFyZ2lucyh0aGlzKTsKIAogICAg
IC8vIERvIG5vdCBhbGxvdyBhIGNvbGxhcHNlIGlmIHRoZSBtYXJnaW4gdG9wIGNvbGxhcHNlIHN0
eWxlIGlzIHNldCB0byBTRVBBUkFURS4KLSAgICBpZiAoY2hpbGQtPnN0eWxlKCktPm1hcmdpblRv
cENvbGxhcHNlKCkgPT0gTVNFUEFSQVRFKSB7CisgICAgaWYgKGNoaWxkLT5zdHlsZSgpLT5tYXJn
aW5CZWZvcmVDb2xsYXBzZSgpID09IE1TRVBBUkFURSkgewogICAgICAgICBtYXJnaW5JbmZvLnNl
dEF0QmVmb3JlU2lkZU9mQmxvY2soZmFsc2UpOwogICAgICAgICBtYXJnaW5JbmZvLmNsZWFyTWFy
Z2luKCk7CiAgICAgfQpAQCAtMTkzNCw3ICsxOTM0LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6bGF5
b3V0QmxvY2tDaGlsZChSZW5kZQogCiAgICAgLy8gVXBkYXRlIG91ciBoZWlnaHQgbm93IHRoYXQg
dGhlIGNoaWxkIGhhcyBiZWVuIHBsYWNlZCBpbiB0aGUgY29ycmVjdCBwb3NpdGlvbi4KICAgICBz
ZXRMb2dpY2FsSGVpZ2h0KGhlaWdodCgpICsgY2hpbGQtPmhlaWdodCgpKTsKLSAgICBpZiAoY2hp
bGQtPnN0eWxlKCktPm1hcmdpbkJvdHRvbUNvbGxhcHNlKCkgPT0gTVNFUEFSQVRFKSB7CisgICAg
aWYgKGNoaWxkLT5zdHlsZSgpLT5tYXJnaW5BZnRlckNvbGxhcHNlKCkgPT0gTVNFUEFSQVRFKSB7
CiAgICAgICAgIHNldExvZ2ljYWxIZWlnaHQoaGVpZ2h0KCkgKyBjaGlsZC0+bWFyZ2luQm90dG9t
KCkpOwogICAgICAgICBtYXJnaW5JbmZvLmNsZWFyTWFyZ2luKCk7CiAgICAgfQpJbmRleDogV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAkocmV2aXNpb24gNjg0MjcpCisrKyBX
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTMyMyw4ICszMjMsOCBAQCBTdHlsZURpZmZlcmVuY2UgUmVuZGVyU3R5bGU6OmRpZmYoY29uc3Qg
CiAKICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEuZ2V0KCkgIT0gb3RoZXItPnJhcmVOb25J
bmhlcml0ZWREYXRhLmdldCgpKSB7CiAgICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+
bV9hcHBlYXJhbmNlICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9hcHBlYXJhbmNl
IHx8Ci0gICAgICAgICAgICByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bWFyZ2luVG9wQ29sbGFwc2Ug
IT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tYXJnaW5Ub3BDb2xsYXBzZSB8fAotICAg
ICAgICAgICAgcmFyZU5vbkluaGVyaXRlZERhdGEtPm1hcmdpbkJvdHRvbUNvbGxhcHNlICE9IG90
aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bWFyZ2luQm90dG9tQ29sbGFwc2UgfHwKKyAgICAg
ICAgICAgIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tYXJnaW5CZWZvcmVDb2xsYXBzZSAhPSBvdGhl
ci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1hcmdpbkJlZm9yZUNvbGxhcHNlIHx8CisgICAgICAg
ICAgICByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bWFyZ2luQWZ0ZXJDb2xsYXBzZSAhPSBvdGhlci0+
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1hcmdpbkFmdGVyQ29sbGFwc2UgfHwKICAgICAgICAgICAg
IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5saW5lQ2xhbXAgIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0
ZWREYXRhLT5saW5lQ2xhbXAgfHwKICAgICAgICAgICAgIHJhcmVOb25Jbmhlcml0ZWREYXRhLT50
ZXh0T3ZlcmZsb3cgIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT50ZXh0T3ZlcmZsb3cp
CiAgICAgICAgICAgICByZXR1cm4gU3R5bGVEaWZmZXJlbmNlTGF5b3V0OwpJbmRleDogV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCShyZXZpc2lvbiA2ODQyNykKKysrIFdlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTY2NSw4ICs2
NjUsOCBAQCBwdWJsaWM6CiAgICAgRVVzZXJEcmFnIHVzZXJEcmFnKCkgY29uc3QgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8RVVzZXJEcmFnPihyYXJlTm9uSW5oZXJpdGVkRGF0YS0+dXNlckRyYWcpOyB9
CiAgICAgRVVzZXJTZWxlY3QgdXNlclNlbGVjdCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0
PEVVc2VyU2VsZWN0PihyYXJlSW5oZXJpdGVkRGF0YS0+dXNlclNlbGVjdCk7IH0KICAgICBib29s
IHRleHRPdmVyZmxvdygpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT50ZXh0
T3ZlcmZsb3c7IH0KLSAgICBFTWFyZ2luQ29sbGFwc2UgbWFyZ2luVG9wQ29sbGFwc2UoKSBjb25z
dCB7IHJldHVybiBzdGF0aWNfY2FzdDxFTWFyZ2luQ29sbGFwc2U+KHJhcmVOb25Jbmhlcml0ZWRE
YXRhLT5tYXJnaW5Ub3BDb2xsYXBzZSk7IH0KLSAgICBFTWFyZ2luQ29sbGFwc2UgbWFyZ2luQm90
dG9tQ29sbGFwc2UoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFTWFyZ2luQ29sbGFwc2U+
KHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tYXJnaW5Cb3R0b21Db2xsYXBzZSk7IH0KKyAgICBFTWFy
Z2luQ29sbGFwc2UgbWFyZ2luQmVmb3JlQ29sbGFwc2UoKSBjb25zdCB7IHJldHVybiBzdGF0aWNf
Y2FzdDxFTWFyZ2luQ29sbGFwc2U+KHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tYXJnaW5CZWZvcmVD
b2xsYXBzZSk7IH0KKyAgICBFTWFyZ2luQ29sbGFwc2UgbWFyZ2luQWZ0ZXJDb2xsYXBzZSgpIGNv
bnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEVNYXJnaW5Db2xsYXBzZT4ocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1hcmdpbkFmdGVyQ29sbGFwc2UpOyB9CiAgICAgRVdvcmRCcmVhayB3b3JkQnJlYWso
KSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFV29yZEJyZWFrPihyYXJlSW5oZXJpdGVkRGF0
YS0+d29yZEJyZWFrKTsgfQogICAgIEVXb3JkV3JhcCB3b3JkV3JhcCgpIGNvbnN0IHsgcmV0dXJu
IHN0YXRpY19jYXN0PEVXb3JkV3JhcD4ocmFyZUluaGVyaXRlZERhdGEtPndvcmRXcmFwKTsgfQog
ICAgIEVOQlNQTW9kZSBuYnNwTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEVOQlNQ
TW9kZT4ocmFyZUluaGVyaXRlZERhdGEtPm5ic3BNb2RlKTsgfQpAQCAtMTAwNSw4ICsxMDA1LDgg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNlckRyYWcoRVVzZXJEcmFnIGQpIHsgU0VUX1ZBUihy
YXJlTm9uSW5oZXJpdGVkRGF0YSwgdXNlckRyYWcsIGQpOyB9CiAgICAgdm9pZCBzZXRVc2VyU2Vs
ZWN0KEVVc2VyU2VsZWN0IHMpIHsgU0VUX1ZBUihyYXJlSW5oZXJpdGVkRGF0YSwgdXNlclNlbGVj
dCwgcyk7IH0KICAgICB2b2lkIHNldFRleHRPdmVyZmxvdyhib29sIGIpIHsgU0VUX1ZBUihyYXJl
Tm9uSW5oZXJpdGVkRGF0YSwgdGV4dE92ZXJmbG93LCBiKTsgfQotICAgIHZvaWQgc2V0TWFyZ2lu
VG9wQ29sbGFwc2UoRU1hcmdpbkNvbGxhcHNlIGMpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVk
RGF0YSwgbWFyZ2luVG9wQ29sbGFwc2UsIGMpOyB9Ci0gICAgdm9pZCBzZXRNYXJnaW5Cb3R0b21D
b2xsYXBzZShFTWFyZ2luQ29sbGFwc2UgYykgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRh
LCBtYXJnaW5Cb3R0b21Db2xsYXBzZSwgYyk7IH0KKyAgICB2b2lkIHNldE1hcmdpbkJlZm9yZUNv
bGxhcHNlKEVNYXJnaW5Db2xsYXBzZSBjKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEs
IG1hcmdpbkJlZm9yZUNvbGxhcHNlLCBjKTsgfQorICAgIHZvaWQgc2V0TWFyZ2luQWZ0ZXJDb2xs
YXBzZShFTWFyZ2luQ29sbGFwc2UgYykgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBt
YXJnaW5BZnRlckNvbGxhcHNlLCBjKTsgfQogICAgIHZvaWQgc2V0V29yZEJyZWFrKEVXb3JkQnJl
YWsgYikgeyBTRVRfVkFSKHJhcmVJbmhlcml0ZWREYXRhLCB3b3JkQnJlYWssIGIpOyB9CiAgICAg
dm9pZCBzZXRXb3JkV3JhcChFV29yZFdyYXAgYikgeyBTRVRfVkFSKHJhcmVJbmhlcml0ZWREYXRh
LCB3b3JkV3JhcCwgYik7IH0KICAgICB2b2lkIHNldE5CU1BNb2RlKEVOQlNQTW9kZSBiKSB7IFNF
VF9WQVIocmFyZUluaGVyaXRlZERhdGEsIG5ic3BNb2RlLCBiKTsgfQpAQCAtMTIxOCw4ICsxMjE4
LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBFVXNlckRyYWcgaW5pdGlhbFVzZXJEcmFnKCkgeyBy
ZXR1cm4gRFJBR19BVVRPOyB9CiAgICAgc3RhdGljIEVVc2VyU2VsZWN0IGluaXRpYWxVc2VyU2Vs
ZWN0KCkgeyByZXR1cm4gU0VMRUNUX1RFWFQ7IH0KICAgICBzdGF0aWMgYm9vbCBpbml0aWFsVGV4
dE92ZXJmbG93KCkgeyByZXR1cm4gZmFsc2U7IH0KLSAgICBzdGF0aWMgRU1hcmdpbkNvbGxhcHNl
IGluaXRpYWxNYXJnaW5Ub3BDb2xsYXBzZSgpIHsgcmV0dXJuIE1DT0xMQVBTRTsgfQotICAgIHN0
YXRpYyBFTWFyZ2luQ29sbGFwc2UgaW5pdGlhbE1hcmdpbkJvdHRvbUNvbGxhcHNlKCkgeyByZXR1
cm4gTUNPTExBUFNFOyB9CisgICAgc3RhdGljIEVNYXJnaW5Db2xsYXBzZSBpbml0aWFsTWFyZ2lu
QmVmb3JlQ29sbGFwc2UoKSB7IHJldHVybiBNQ09MTEFQU0U7IH0KKyAgICBzdGF0aWMgRU1hcmdp
bkNvbGxhcHNlIGluaXRpYWxNYXJnaW5BZnRlckNvbGxhcHNlKCkgeyByZXR1cm4gTUNPTExBUFNF
OyB9CiAgICAgc3RhdGljIEVXb3JkQnJlYWsgaW5pdGlhbFdvcmRCcmVhaygpIHsgcmV0dXJuIE5v
cm1hbFdvcmRCcmVhazsgfQogICAgIHN0YXRpYyBFV29yZFdyYXAgaW5pdGlhbFdvcmRXcmFwKCkg
eyByZXR1cm4gTm9ybWFsV29yZFdyYXA7IH0KICAgICBzdGF0aWMgRU5CU1BNb2RlIGluaXRpYWxO
QlNQTW9kZSgpIHsgcmV0dXJuIE5CTk9STUFMOyB9CkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAkocmV2aXNpb24g
NjgxNzQpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWRE
YXRhLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzcsOCArMzcsOCBAQCBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhOjpTdHlsZVJhcmVOb25JCiAgICAgLCBtX2NvdW50ZXJEaXJlY3RpdmVzKDApCiAg
ICAgLCB1c2VyRHJhZyhSZW5kZXJTdHlsZTo6aW5pdGlhbFVzZXJEcmFnKCkpCiAgICAgLCB0ZXh0
T3ZlcmZsb3coUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0T3ZlcmZsb3coKSkKLSAgICAsIG1hcmdp
blRvcENvbGxhcHNlKE1DT0xMQVBTRSkKLSAgICAsIG1hcmdpbkJvdHRvbUNvbGxhcHNlKE1DT0xM
QVBTRSkKKyAgICAsIG1hcmdpbkJlZm9yZUNvbGxhcHNlKE1DT0xMQVBTRSkKKyAgICAsIG1hcmdp
bkFmdGVyQ29sbGFwc2UoTUNPTExBUFNFKQogICAgICwgbWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVv
dGVDb2xvcihSZW5kZXJTdHlsZTo6aW5pdGlhbE1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29s
b3IoKSkKICAgICAsIG1fYXBwZWFyYW5jZShSZW5kZXJTdHlsZTo6aW5pdGlhbEFwcGVhcmFuY2Uo
KSkKICAgICAsIG1fYm9yZGVyRml0KFJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyRml0KCkpCkBA
IC03Myw4ICs3Myw4IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkkK
ICAgICAsIG1fY291bnRlckRpcmVjdGl2ZXMoMCkKICAgICAsIHVzZXJEcmFnKG8udXNlckRyYWcp
CiAgICAgLCB0ZXh0T3ZlcmZsb3coby50ZXh0T3ZlcmZsb3cpCi0gICAgLCBtYXJnaW5Ub3BDb2xs
YXBzZShvLm1hcmdpblRvcENvbGxhcHNlKQotICAgICwgbWFyZ2luQm90dG9tQ29sbGFwc2Uoby5t
YXJnaW5Cb3R0b21Db2xsYXBzZSkKKyAgICAsIG1hcmdpbkJlZm9yZUNvbGxhcHNlKG8ubWFyZ2lu
QmVmb3JlQ29sbGFwc2UpCisgICAgLCBtYXJnaW5BZnRlckNvbGxhcHNlKG8ubWFyZ2luQWZ0ZXJD
b2xsYXBzZSkKICAgICAsIG1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3Ioby5tYXRjaE5l
YXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yKQogICAgICwgbV9hcHBlYXJhbmNlKG8ubV9hcHBlYXJh
bmNlKQogICAgICwgbV9ib3JkZXJGaXQoby5tX2JvcmRlckZpdCkKQEAgLTExOCw4ICsxMTgsOCBA
QCBib29sIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yCiAgICAgICAgICYmIG1f
Y291bnRlckRpcmVjdGl2ZXMgPT0gby5tX2NvdW50ZXJEaXJlY3RpdmVzCiAgICAgICAgICYmIHVz
ZXJEcmFnID09IG8udXNlckRyYWcKICAgICAgICAgJiYgdGV4dE92ZXJmbG93ID09IG8udGV4dE92
ZXJmbG93Ci0gICAgICAgICYmIG1hcmdpblRvcENvbGxhcHNlID09IG8ubWFyZ2luVG9wQ29sbGFw
c2UKLSAgICAgICAgJiYgbWFyZ2luQm90dG9tQ29sbGFwc2UgPT0gby5tYXJnaW5Cb3R0b21Db2xs
YXBzZQorICAgICAgICAmJiBtYXJnaW5CZWZvcmVDb2xsYXBzZSA9PSBvLm1hcmdpbkJlZm9yZUNv
bGxhcHNlCisgICAgICAgICYmIG1hcmdpbkFmdGVyQ29sbGFwc2UgPT0gby5tYXJnaW5BZnRlckNv
bGxhcHNlCiAgICAgICAgICYmIG1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3IgPT0gby5t
YXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yCiAgICAgICAgICYmIG1fYXBwZWFyYW5jZSA9
PSBvLm1fYXBwZWFyYW5jZQogICAgICAgICAmJiBtX2JvcmRlckZpdCA9PSBvLm1fYm9yZGVyRml0
CkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRh
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5o
ZXJpdGVkRGF0YS5oCShyZXZpc2lvbiA2ODE3NCkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtOTgsOCArOTgs
OCBAQCBwdWJsaWM6CiAKICAgICB1bnNpZ25lZCB1c2VyRHJhZyA6IDI7IC8vIEVVc2VyRHJhZwog
ICAgIGJvb2wgdGV4dE92ZXJmbG93IDogMTsgLy8gV2hldGhlciBvciBub3QgbGluZXMgdGhhdCBz
cGlsbCBvdXQgc2hvdWxkIGJlIHRydW5jYXRlZCB3aXRoICIuLi4iCi0gICAgdW5zaWduZWQgbWFy
Z2luVG9wQ29sbGFwc2UgOiAyOyAvLyBFTWFyZ2luQ29sbGFwc2UKLSAgICB1bnNpZ25lZCBtYXJn
aW5Cb3R0b21Db2xsYXBzZSA6IDI7IC8vIEVNYXJnaW5Db2xsYXBzZQorICAgIHVuc2lnbmVkIG1h
cmdpbkJlZm9yZUNvbGxhcHNlIDogMjsgLy8gRU1hcmdpbkNvbGxhcHNlCisgICAgdW5zaWduZWQg
bWFyZ2luQWZ0ZXJDb2xsYXBzZSA6IDI7IC8vIEVNYXJnaW5Db2xsYXBzZQogICAgIHVuc2lnbmVk
IG1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3IgOiAxOyAvLyBFTWF0Y2hOZWFyZXN0TWFp
bEJsb2NrcXVvdGVDb2xvciwgRklYTUU6IFRoaXMgcHJvcGVydHkgbmVlZHMgdG8gYmUgZWxpbWlu
YXRlZC4gSXQgc2hvdWxkIG5ldmVyIGhhdmUgYmVlbiBhZGRlZC4KICAgICB1bnNpZ25lZCBtX2Fw
cGVhcmFuY2UgOiA2OyAvLyBFQXBwZWFyYW5jZQogICAgIHVuc2lnbmVkIG1fYm9yZGVyRml0IDog
MTsgLy8gRUJvcmRlckZpdApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjg1NTgpCisrKyBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMyBAQAorMjAxMC0wOS0yOCAg
RGF2aWQgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgUmlnaHQgbm93IHdlIGhhdmUgdHdvIHByb3BlcnRpZXMg
bmFtZWQgbWFyZ2luLXRvcC1jb2xsYXBzZSBhbmQgbWFyZ2luLWFmdGVyLWNvbGxhcHNlLiAgVGhl
eSBhcmUgcHJvcHJpZXRhcnkgYW5kIG9ubHkgdXNlZCBieSBTYWZhcmkgUlNTLgorCisgICAgICAg
IEkgYW0gYWRkaW5nIG1hcmdpbi1iZWZvcmUtY29sbGFwc2UgYW5kIG1hcmdpbi1hZnRlci1jb2xs
YXBzZSBhbmQganVzdCBhbGlhc2luZyB0aGUgb2xkIHByb3BlcnRpZXMgdG8gdGhlIG5ldyBvbmVz
LgorICAgICAgICBUaGlzIHdheSB3ZSBoYXZlIHNvbWUgbmFtZXMgdGhhdCBhcmUgZGlyZWN0aW9u
YWxseSBpbmRlcGVuZGVudC4KKworICAgICAgICBOb3RlIHRoYXQgdGhlc2UgcHJvcGVydGllcyBh
cmVuJ3QgbGlrZSBvdGhlciBkaXJlY3Rpb25hbCBwcm9wZXJ0aWVzLiAgVGhleSBhcmUgYWJvdXQg
d2hhdCB0byBkbyB3aXRoIHRoZSBiZWZvcmUgc2lkZSBhbmQgYWZ0ZXIgc2lkZSBvZgorICAgICAg
ICB5b3VyIGJsb2NrJ3MgbWFyZ2lucyB3aGVuIGNvbGxhcHNpbmcgd2l0aCBhZGphY2VudCBibG9j
a3MuICBUaGUgbWVhbmluZyBvZiBiZWZvcmUvYWZ0ZXIgZGVwZW5kIG9uIHRoZSBibG9jay1mbG93
IGRpcmVjdGlvbmFsaXR5CisgICAgICAgIG9mIHRoZSBjb250YWluaW5nIGJsb2NrLgorCisgICAg
ICAgIENvbXB1dGVkIHN0eWxlIHRlc3RzIGFsbCBjaGFuZ2VkIGFuZCB0aGUgcmVtb3ZlLXNob3J0
aGFuZC5odG1sIHRlc3QgY292ZXJzIG1hbmlwdWxhdGlvbiBvZiB0aGUgc2hvcnRoYW5kLgorCisg
ICAgICAgICogZmFzdC9jc3MvcmVtb3ZlLXNob3J0aGFuZC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQtc3R5bGUt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2Nzcy9nZXRDb21wdXRl
ZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHN2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHlsZS1iYXNpYy1leHBlY3RlZC50eHQ6CisKIDIw
MTAtMDktMjggIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IEd1c3Rhdm8gTm9yb25oYSBTaWx2YS4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvY3NzL3JlbW92ZS1zaG9ydGhhbmQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvY3NzL3JlbW92ZS1zaG9ydGhhbmQtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA2ODE3NCkKKysrIExheW91dFRlc3RzL2Zhc3QvY3NzL3JlbW92ZS1zaG9ydGhhbmQtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xOSw3ICsxOSw3IEBAIFJlbW92aW5nIC13ZWJraXQt
Y29sdW1ucyByZW1vdmVzIC13ZWJraXQKIFJlbW92aW5nIC13ZWJraXQtY29sdW1uLXJ1bGUgcmVt
b3ZlcyAtd2Via2l0LWNvbHVtbi1ydWxlLXdpZHRoLCAtd2Via2l0LWNvbHVtbi1ydWxlLXN0eWxl
LCAtd2Via2l0LWNvbHVtbi1ydWxlLWNvbG9yLgogUmVtb3ZpbmcgbGlzdC1zdHlsZSByZW1vdmVz
IGxpc3Qtc3R5bGUtdHlwZSwgbGlzdC1zdHlsZS1wb3NpdGlvbiwgbGlzdC1zdHlsZS1pbWFnZS4K
IFJlbW92aW5nIG1hcmdpbiByZW1vdmVzIG1hcmdpbi10b3AsIG1hcmdpbi1yaWdodCwgbWFyZ2lu
LWJvdHRvbSwgbWFyZ2luLWxlZnQuCi1SZW1vdmluZyAtd2Via2l0LW1hcmdpbi1jb2xsYXBzZSBy
ZW1vdmVzIC13ZWJraXQtbWFyZ2luLXRvcC1jb2xsYXBzZSwgLXdlYmtpdC1tYXJnaW4tYm90dG9t
LWNvbGxhcHNlLgorUmVtb3ZpbmcgLXdlYmtpdC1tYXJnaW4tY29sbGFwc2UgcmVtb3ZlcyAtd2Vi
a2l0LW1hcmdpbi1iZWZvcmUtY29sbGFwc2UsIC13ZWJraXQtbWFyZ2luLWFmdGVyLWNvbGxhcHNl
LgogUmVtb3ZpbmcgLXdlYmtpdC1tYXJxdWVlIHJlbW92ZXMgLXdlYmtpdC1tYXJxdWVlLWRpcmVj
dGlvbiwgLXdlYmtpdC1tYXJxdWVlLWluY3JlbWVudCwgLXdlYmtpdC1tYXJxdWVlLXJlcGV0aXRp
b24sIC13ZWJraXQtbWFycXVlZS1zdHlsZSwgLXdlYmtpdC1tYXJxdWVlLXNwZWVkLgogUmVtb3Zp
bmcgLXdlYmtpdC1tYXNrIHJlbW92ZXMgLXdlYmtpdC1tYXNrLWltYWdlLCAtd2Via2l0LW1hc2st
cmVwZWF0LXgsIC13ZWJraXQtbWFzay1yZXBlYXQteSwgLXdlYmtpdC1tYXNrLWF0dGFjaG1lbnQs
IC13ZWJraXQtbWFzay1wb3NpdGlvbi14LCAtd2Via2l0LW1hc2stcG9zaXRpb24teSwgLXdlYmtp
dC1tYXNrLW9yaWdpbiwgLXdlYmtpdC1tYXNrLWNsaXAuCiBSZW1vdmluZyAtd2Via2l0LW1hc2st
cG9zaXRpb24gcmVtb3ZlcyAtd2Via2l0LW1hc2stcG9zaXRpb24teCwgLXdlYmtpdC1tYXNrLXBv
c2l0aW9uLXkuCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvZ2V0Q29t
cHV0ZWRTdHlsZS9jb21wdXRlZC1zdHlsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL2dldENvbXB1dGVkU3R5bGUvY29tcHV0ZWQt
c3R5bGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2ODE3NCkKKysrIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0eWxlL2NvbXB1dGVkLXN0eWxlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTM5LDggKzEzOSw4IEBAIHpvb206IDE7CiAtd2Via2l0
LWhpZ2hsaWdodDogbm9uZTsKIC13ZWJraXQtbGluZS1icmVhazogbm9ybWFsOwogLXdlYmtpdC1s
aW5lLWNsYW1wOiBub25lOwotLXdlYmtpdC1tYXJnaW4tYm90dG9tLWNvbGxhcHNlOiBjb2xsYXBz
ZTsKLS13ZWJraXQtbWFyZ2luLXRvcC1jb2xsYXBzZTogY29sbGFwc2U7Cistd2Via2l0LW1hcmdp
bi1iZWZvcmUtY29sbGFwc2U6IGNvbGxhcHNlOworLXdlYmtpdC1tYXJnaW4tYWZ0ZXItY29sbGFw
c2U6IGNvbGxhcHNlOwogLXdlYmtpdC1tYXJxdWVlLWRpcmVjdGlvbjogYXV0bzsKIC13ZWJraXQt
bWFycXVlZS1pbmNyZW1lbnQ6IDZweDsKIC13ZWJraXQtbWFycXVlZS1yZXBldGl0aW9uOiBpbmZp
bml0ZTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9nZXRDb21wdXRl
ZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9nZXRDb21wdXRlZFN0
eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA2ODE3NCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9nZXRDb21wdXRl
ZFN0eWxlL2NvbXB1dGVkLXN0eWxlLXdpdGhvdXQtcmVuZGVyZXItZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzgsOCArMTM4LDggQEAgQ29tcHV0ZWQgc3R5bGUgb2YgYW4gZWxlbWVu
dCB3aG9zZSBwYXJlbgogICAgIC13ZWJraXQtaGlnaGxpZ2h0OiBub25lCiAgICAgLXdlYmtpdC1s
aW5lLWJyZWFrOiBub3JtYWwKICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IG5vbmUKLSAgICAtd2Vi
a2l0LW1hcmdpbi1ib3R0b20tY29sbGFwc2U6IGNvbGxhcHNlCi0gICAgLXdlYmtpdC1tYXJnaW4t
dG9wLWNvbGxhcHNlOiBjb2xsYXBzZQorICAgIC13ZWJraXQtbWFyZ2luLWJlZm9yZS1jb2xsYXBz
ZTogY29sbGFwc2UKKyAgICAtd2Via2l0LW1hcmdpbi1hZnRlci1jb2xsYXBzZTogY29sbGFwc2UK
ICAgICAtd2Via2l0LW1hcnF1ZWUtZGlyZWN0aW9uOiBhdXRvCiAgICAgLXdlYmtpdC1tYXJxdWVl
LWluY3JlbWVudDogNnB4CiAgICAgLXdlYmtpdC1tYXJxdWVlLXJlcGV0aXRpb246IGluZmluaXRl
CkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvY3NzL2dldENvbXB1dGVkU3R5bGUtYmFzaWMtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9jc3MvZ2V0Q29tcHV0ZWRTdHls
ZS1iYXNpYy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDY4MTc0KQorKysgTGF5b3V0VGVzdHMvc3Zn
L2Nzcy9nZXRDb21wdXRlZFN0eWxlLWJhc2ljLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMjc2LDEwICsyNzYsMTAgQEAgcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0
LWxpbgogcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1ZSgtd2Via2l0LWxpbmUtYnJlYWsp
IDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5VmFs
dWUoLXdlYmtpdC1saW5lLWNsYW1wKSA6IG5vbmUKIHJlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NT
VmFsdWUoLXdlYmtpdC1saW5lLWNsYW1wKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCi1y
ZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtbWFyZ2luLWJvdHRvbS1jb2xsYXBz
ZSkgOiBjb2xsYXBzZQotcmVjdDogc3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1ZSgtd2Via2l0LW1h
cmdpbi1ib3R0b20tY29sbGFwc2UpIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KLXJlY3Q6
IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1tYXJnaW4tdG9wLWNvbGxhcHNlKSA6IGNv
bGxhcHNlCi1yZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtbWFyZ2luLXRv
cC1jb2xsYXBzZSkgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQorcmVjdDogc3R5bGUuZ2V0
UHJvcGVydHlWYWx1ZSgtd2Via2l0LW1hcmdpbi1iZWZvcmUtY29sbGFwc2UpIDogY29sbGFwc2UK
K3JlY3Q6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1tYXJnaW4tYmVmb3JlLWNv
bGxhcHNlKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCityZWN0OiBzdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKC13ZWJraXQtbWFyZ2luLWFmdGVyLWNvbGxhcHNlKSA6IGNvbGxhcHNlCityZWN0
OiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJraXQtbWFyZ2luLWFmdGVyLWNvbGxhcHNl
KSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZh
bHVlKC13ZWJraXQtbWFycXVlZS1kaXJlY3Rpb24pIDogYXV0bwogcmVjdDogc3R5bGUuZ2V0UHJv
cGVydHlDU1NWYWx1ZSgtd2Via2l0LW1hcnF1ZWUtZGlyZWN0aW9uKSA6IFtvYmplY3QgQ1NTUHJp
bWl0aXZlVmFsdWVdCiByZWN0OiBzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKC13ZWJraXQtbWFycXVl
ZS1pbmNyZW1lbnQpIDogNnB4CkBAIC02OTgsMTAgKzY5OCwxMCBAQCBnOiBzdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKC13ZWJraXQtbGluZS1iCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13
ZWJraXQtbGluZS1icmVhaykgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQogZzogc3R5bGUu
Z2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LWxpbmUtY2xhbXApIDogbm9uZQogZzogc3R5bGUuZ2V0
UHJvcGVydHlDU1NWYWx1ZSgtd2Via2l0LWxpbmUtY2xhbXApIDogW29iamVjdCBDU1NQcmltaXRp
dmVWYWx1ZV0KLWc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1tYXJnaW4tYm90dG9t
LWNvbGxhcHNlKSA6IGNvbGxhcHNlCi1nOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJr
aXQtbWFyZ2luLWJvdHRvbS1jb2xsYXBzZSkgOiBbb2JqZWN0IENTU1ByaW1pdGl2ZVZhbHVlXQot
Zzogc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgtd2Via2l0LW1hcmdpbi10b3AtY29sbGFwc2UpIDog
Y29sbGFwc2UKLWc6IHN0eWxlLmdldFByb3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1tYXJnaW4tdG9w
LWNvbGxhcHNlKSA6IFtvYmplY3QgQ1NTUHJpbWl0aXZlVmFsdWVdCitnOiBzdHlsZS5nZXRQcm9w
ZXJ0eVZhbHVlKC13ZWJraXQtbWFyZ2luLWJlZm9yZS1jb2xsYXBzZSkgOiBjb2xsYXBzZQorZzog
c3R5bGUuZ2V0UHJvcGVydHlDU1NWYWx1ZSgtd2Via2l0LW1hcmdpbi1iZWZvcmUtY29sbGFwc2Up
IDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KK2c6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUo
LXdlYmtpdC1tYXJnaW4tYWZ0ZXItY29sbGFwc2UpIDogY29sbGFwc2UKK2c6IHN0eWxlLmdldFBy
b3BlcnR5Q1NTVmFsdWUoLXdlYmtpdC1tYXJnaW4tYWZ0ZXItY29sbGFwc2UpIDogW29iamVjdCBD
U1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1tYXJx
dWVlLWRpcmVjdGlvbikgOiBhdXRvCiBnOiBzdHlsZS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKC13ZWJr
aXQtbWFycXVlZS1kaXJlY3Rpb24pIDogW29iamVjdCBDU1NQcmltaXRpdmVWYWx1ZV0KIGc6IHN0
eWxlLmdldFByb3BlcnR5VmFsdWUoLXdlYmtpdC1tYXJxdWVlLWluY3JlbWVudCkgOiA2cHgK
</data>
<flag name="review"
          id="58732"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>