<?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>46114</bug_id>
          
          <creation_ts>2010-09-20 12:39:10 -0700</creation_ts>
          <short_desc>REGRESSION: Two tables repaint tests failing on bots</short_desc>
          <delta_ts>2010-09-20 13:21:52 -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>Tables</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>
          
          
          <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>281749</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-20 12:39:10 -0700</bug_when>
    <thetext>This is a regression from setting the new table cell location in layoutRows prior to laying out.  In order to fix, I need to apply layout delta the same way block layout does.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281751</commentid>
    <comment_count>1</comment_count>
      <attachid>68124</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-20 12:41:16 -0700</bug_when>
    <thetext>Created attachment 68124
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281775</commentid>
    <comment_count>2</comment_count>
      <attachid>68128</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-20 13:18:26 -0700</bug_when>
    <thetext>Created attachment 68128
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>281780</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-09-20 13:21:52 -0700</bug_when>
    <thetext>Fixed in r67879.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68124</attachid>
            <date>2010-09-20 12:41:16 -0700</date>
            <delta_ts>2010-09-20 13:18:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>30663</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2Nzg3MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTAtMDktMjAgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NjExNCwgdHdvIHRhYmxlcyByZXBh
aW50IHRlc3RzIGZhaWxpbmcgb24gYm90cy4KKworICAgICAgICBQYXRjaCBsYXlvdXRSb3dzIHRv
IGFwcGx5IHRoZSBsYXlvdXQgZGVsdGEgd2hlbiBzZXR0aW5nIGEgbmV3IGNlbGwgbG9jYXRpb24g
cHJpb3IgdG8gbGF5aW5nIG91dCB0aGUgY2VsbC4KKyAgICAgICAgCisgICAgICAgIFRoZSBsYXlv
dXQgZGVsdGEgaXMgdGhlbiByZW1vdmVkIGFmdGVyIGxheW91dCBoYXMgaGFwcGVuZWQgd2hlbiB0
aGUgcmVwYWludCBjaGVjayBpcyBkb25lLiAgVGhpcyBjaGFuZ2UKKyAgICAgICAgbWFrZXMgY2Vs
bCBsYXlvdXQgbWF0Y2ggYmxvY2sgY2hpbGQgbGF5b3V0LCBhbmQgbm93IHRoZSBjZWxscyBoYXZl
IHRoZSBjb3JyZWN0IG5ldyBsb2NhdGlvbiB1cCBmcm9udAorICAgICAgICB3aGVuIGxheWluZyBv
dXQgKGEgbmVjZXNzaXR5IGZvciBwYWdpbmF0aW9uKS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUYWJsZVNlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGFibGVTZWN0
aW9uOjpsYXlvdXRSb3dzKToKKwogMjAxMC0wOS0yMCAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FA
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBXZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHJldmlzaW9uIDY3ODYw
KQorKysgV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNzMzLDcgKzczMyw3IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU0NvbXB1
dGVkU3R5bGVEZWMKICAgICBpZiAoIXN0eWxlKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIHBy
b3BlcnR5SUQgPSBDU1NQcm9wZXJ0eTo6cmVzb2x2ZURpcmVjdGlvbkF3YXJlUHJvcGVydHkocHJv
cGVydHlJRCwgc3R5bGUtPmRpcmVjdGlvbigpKTsKKyAgICBwcm9wZXJ0eUlEID0gQ1NTUHJvcGVy
dHk6OnJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KHByb3BlcnR5SUQsIHN0eWxlLT5kaXJl
Y3Rpb24oKSwgc3R5bGUtPmJsb2NrRmxvdygpKTsKIAogICAgIHN3aXRjaCAoc3RhdGljX2Nhc3Q8
Q1NTUHJvcGVydHlJRD4ocHJvcGVydHlJRCkpIHsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUlu
dmFsaWQ6CkBAIC0xNTA0LDEwICsxNTA0LDI4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU0Nv
bXB1dGVkU3R5bGVEZWMKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlclN0YXJ0
Q29sb3I6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFN0eWxlOgog
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyU3RhcnRXaWR0aDoKKyAgICAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyOgorICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0Qm9yZGVyQWZ0ZXJDb2xvcjoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dEJvcmRlckFmdGVyU3R5bGU6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJB
ZnRlcldpZHRoOgorICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQmVmb3JlOgor
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQmVmb3JlQ29sb3I6CisgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJCZWZvcmVTdHlsZToKKyAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdEJvcmRlckJlZm9yZVdpZHRoOgogICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0TWFyZ2luRW5kOgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2lu
U3RhcnQ6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5BZnRlcjoKKyAgICAg
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpbkJlZm9yZToKICAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdFBhZGRpbmdFbmQ6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQ
YWRkaW5nU3RhcnQ6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nQWZ0ZXI6
CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nQmVmb3JlOgorICAgICAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0TG9naWNhbFdpZHRoOgorICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0TG9naWNhbEhlaWdodDoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1p
bkxvZ2ljYWxXaWR0aDoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1pbkxvZ2ljYWxI
ZWlnaHQ6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXhMb2dpY2FsV2lkdGg6Cisg
ICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXhMb2dpY2FsSGVpZ2h0OgogICAgICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgICAgICBicmVhazsKIApJbmRleDogV2Vi
Q29yZS9jc3MvQ1NTUGFyc2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NQYXJz
ZXIuY3BwCShyZXZpc2lvbiA2Nzg2MCkKKysrIFdlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTc3Niw2ICs3NzYsOCBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1
ZShpbnQgcHJvcElkLCBiCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckxlZnRTdHlsZToKICAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyU3RhcnRTdHlsZToKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0Qm9yZGVyRW5kU3R5bGU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJv
cmRlckJlZm9yZVN0eWxlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlclN0
eWxlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5SdWxlU3R5bGU6CiAgICAgICAg
IGlmIChpZCA+PSBDU1NWYWx1ZU5vbmUgJiYgaWQgPD0gQ1NTVmFsdWVEb3VibGUpCiAgICAgICAg
ICAgICB2YWxpZFByaW1pdGl2ZSA9IHRydWU7CkBAIC04MjIsNiArODI0LDggQEAgYm9vbCBDU1NQ
YXJzZXI6OnBhcnNlVmFsdWUoaW50IHByb3BJZCwgYgogICAgIGNhc2UgQ1NTUHJvcGVydHlCb3Jk
ZXJMZWZ0Q29sb3I6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlclN0YXJ0Q29sb3I6
CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckVuZENvbG9yOgorICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCb3JkZXJCZWZvcmVDb2xvcjoKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0Qm9yZGVyQWZ0ZXJDb2xvcjoKICAgICBjYXNlIENTU1Byb3BlcnR5Q29sb3I6IC8vIDxjb2xv
cj4gfCBpbmhlcml0CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRMaW5lVGhyb3VnaENvbG9yOiAv
LyBDU1MzIHRleHQgZGVjb3JhdGlvbiBjb2xvcnMKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dFVu
ZGVybGluZUNvbG9yOgpAQCAtOTczLDYgKzk3Nyw4IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZh
bHVlKGludCBwcm9wSWQsIGIKICAgICBjYXNlIENTU1Byb3BlcnR5Qm9yZGVyTGVmdFdpZHRoOgog
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFdpZHRoOgogICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRCb3JkZXJFbmRXaWR0aDoKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
Qm9yZGVyQmVmb3JlV2lkdGg6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVy
V2lkdGg6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdENvbHVtblJ1bGVXaWR0aDoKICAgICAg
ICAgaWYgKGlkID09IENTU1ZhbHVlVGhpbiB8fCBpZCA9PSBDU1NWYWx1ZU1lZGl1bSB8fCBpZCA9
PSBDU1NWYWx1ZVRoaWNrKQogICAgICAgICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwpAQCAt
MTAwOCwxMSArMTAxNCwxNSBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShpbnQgcHJvcElk
LCBiCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVBhZGRpbmdMZWZ0OiAgICAgICAgIC8vLy8KICAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0UGFkZGluZ1N0YXJ0OgogICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRQYWRkaW5nRW5kOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nQmVmb3Jl
OgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nQWZ0ZXI6CiAgICAgICAgIHZhbGlk
UHJpbWl0aXZlID0gKCFpZCAmJiB2YWxpZFVuaXQodmFsdWUsIEZMZW5ndGggfCBGUGVyY2VudCB8
IEZOb25OZWcsIG1fc3RyaWN0KSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eU1heEhlaWdodDogICAgICAgICAgIC8vIDxsZW5ndGg+IHwgPHBlcmNlbnRhZ2U+IHwgbm9u
ZSB8IGluaGVyaXQKICAgICBjYXNlIENTU1Byb3BlcnR5TWF4V2lkdGg6ICAgICAgICAgICAgLy8g
PGxlbmd0aD4gfCA8cGVyY2VudGFnZT4gfCBub25lIHwgaW5oZXJpdAorICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRNYXhMb2dpY2FsV2lkdGg6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1h
eExvZ2ljYWxIZWlnaHQ6CiAgICAgICAgIGlmIChpZCA9PSBDU1NWYWx1ZU5vbmUgfHwgaWQgPT0g
Q1NTVmFsdWVJbnRyaW5zaWMgfHwgaWQgPT0gQ1NTVmFsdWVNaW5JbnRyaW5zaWMpIHsKICAgICAg
ICAgICAgIHZhbGlkUHJpbWl0aXZlID0gdHJ1ZTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMTAy
MCw2ICsxMDMwLDggQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoaW50IHByb3BJZCwgYgog
ICAgICAgICAvKiBub2JyZWFrICovCiAgICAgY2FzZSBDU1NQcm9wZXJ0eU1pbkhlaWdodDogICAg
ICAgICAgIC8vIDxsZW5ndGg+IHwgPHBlcmNlbnRhZ2U+IHwgaW5oZXJpdAogICAgIGNhc2UgQ1NT
UHJvcGVydHlNaW5XaWR0aDogICAgICAgICAgICAvLyA8bGVuZ3RoPiB8IDxwZXJjZW50YWdlPiB8
IGluaGVyaXQKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWluTG9naWNhbFdpZHRoOgorICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNaW5Mb2dpY2FsSGVpZ2h0OgogICAgICAgICBpZiAoaWQg
PT0gQ1NTVmFsdWVJbnRyaW5zaWMgfHwgaWQgPT0gQ1NTVmFsdWVNaW5JbnRyaW5zaWMpCiAgICAg
ICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IHRydWU7CiAgICAgICAgIGVsc2UKQEAgLTEwNTIsNiAr
MTA2NCw4IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKGludCBwcm9wSWQsIGIKIAogICAg
IGNhc2UgQ1NTUHJvcGVydHlIZWlnaHQ6ICAgICAgICAgICAgICAgLy8gPGxlbmd0aD4gfCA8cGVy
Y2VudGFnZT4gfCBhdXRvIHwgaW5oZXJpdAogICAgIGNhc2UgQ1NTUHJvcGVydHlXaWR0aDogICAg
ICAgICAgICAgICAgLy8gPGxlbmd0aD4gfCA8cGVyY2VudGFnZT4gfCBhdXRvIHwgaW5oZXJpdAor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRMb2dpY2FsV2lkdGg6ICAKKyAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0TG9naWNhbEhlaWdodDoKICAgICAgICAgaWYgKGlkID09IENTU1ZhbHVlQXV0
byB8fCBpZCA9PSBDU1NWYWx1ZUludHJpbnNpYyB8fCBpZCA9PSBDU1NWYWx1ZU1pbkludHJpbnNp
YykKICAgICAgICAgICAgIHZhbGlkUHJpbWl0aXZlID0gdHJ1ZTsKICAgICAgICAgZWxzZQpAQCAt
MTA2OSw2ICsxMDgzLDggQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoaW50IHByb3BJZCwg
YgogICAgIGNhc2UgQ1NTUHJvcGVydHlNYXJnaW5MZWZ0OiAgICAgICAgICAvLy8vCiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpblN0YXJ0OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRNYXJnaW5FbmQ6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpbkJlZm9yZToKKyAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luQWZ0ZXI6CiAgICAgICAgIGlmIChpZCA9PSBD
U1NWYWx1ZUF1dG8pCiAgICAgICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IHRydWU7CiAgICAgICAg
IGVsc2UKQEAgLTE2MzgsMTkgKzE2NTQsMjkgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUo
aW50IHByb3BJZCwgYgogICAgICAgICByZXR1cm4gcGFyc2VTaG9ydGhhbmQocHJvcElkLCBwcm9w
ZXJ0aWVzLCAzLCBpbXBvcnRhbnQpOwogICAgIH0KICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
Qm9yZGVyU3RhcnQ6Ci0gICAgICAgIC8vIFsgJy13ZWJraXQtYm9yZGVyLXN0YXJ0LXdpZHRoJyB8
fCAnYm9yZGVyLXN0eWxlJyB8fCA8Y29sb3I+IF0gfCBpbmhlcml0CiAgICAgewogICAgICAgICBj
b25zdCBpbnQgcHJvcGVydGllc1szXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFdp
ZHRoLCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlclN0YXJ0U3R5bGUsCiAgICAgICAgICAgICBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlclN0YXJ0Q29sb3IgfTsKICAgICAgICAgcmV0dXJuIHBhcnNlU2hv
cnRoYW5kKHByb3BJZCwgcHJvcGVydGllcywgMywgaW1wb3J0YW50KTsKICAgICB9CiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckVuZDoKLSAgICAgICAgLy8gWyAnLXdlYmtpdC1ib3Jk
ZXItZW5kLXdpZHRoJyB8fCAnYm9yZGVyLXN0eWxlJyB8fCA8Y29sb3I+IF0gfCBpbmhlcml0CiAg
ICAgewogICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1szXSA9IHsgQ1NTUHJvcGVydHlXZWJr
aXRCb3JkZXJFbmRXaWR0aCwgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJFbmRTdHlsZSwKICAgICAg
ICAgICAgIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRW5kQ29sb3IgfTsKICAgICAgICAgcmV0dXJu
IHBhcnNlU2hvcnRoYW5kKHByb3BJZCwgcHJvcGVydGllcywgMywgaW1wb3J0YW50KTsKICAgICB9
CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckJlZm9yZToKKyAgICB7CisgICAgICAg
IGNvbnN0IGludCBwcm9wZXJ0aWVzWzNdID0geyBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckJlZm9y
ZVdpZHRoLCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckJlZm9yZVN0eWxlLAorICAgICAgICAgICAg
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJCZWZvcmVDb2xvciB9OworICAgICAgICByZXR1cm4gcGFy
c2VTaG9ydGhhbmQocHJvcElkLCBwcm9wZXJ0aWVzLCAzLCBpbXBvcnRhbnQpOworICAgIH0KKyAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQWZ0ZXI6CisgICAgeworICAgICAgICBjb25z
dCBpbnQgcHJvcGVydGllc1szXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlcldpZHRo
LCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyU3R5bGUsCisgICAgICAgICAgICBDU1NQcm9w
ZXJ0eVdlYmtpdEJvcmRlckFmdGVyQ29sb3IgfTsKKyAgICAgICAgcmV0dXJuIHBhcnNlU2hvcnRo
YW5kKHByb3BJZCwgcHJvcGVydGllcywgMywgaW1wb3J0YW50KTsKKyAgICB9CiAgICAgY2FzZSBD
U1NQcm9wZXJ0eU91dGxpbmU6CiAgICAgICAgIC8vIFsgJ291dGxpbmUtY29sb3InIHx8ICdvdXRs
aW5lLXN0eWxlJyB8fCAnb3V0bGluZS13aWR0aCcgXSB8IGluaGVyaXQKICAgICB7CkluZGV4OiBX
ZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydHkuY3BwCShyZXZpc2lvbiA2Nzg2MCkKKysrIFdlYkNvcmUvY3NzL0NTU1Byb3BlcnR5
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogCiAjaW5jbHVkZSAiQ1NTUHJv
cGVydHlOYW1lcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAiUmVu
ZGVyU3R5bGVDb25zdGFudHMuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zOCwzNyAr
MzksMjQ3IEBAIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDU1NQcm9wZXJ0eSYgYSwgY28KICAgICBy
ZXR1cm4gYS5tX2lkID09IGIubV9pZCAmJiBhLm1faW1wb3J0YW50ID09IGIubV9pbXBvcnRhbnQg
JiYgYS5tX3ZhbHVlID09IGIubV92YWx1ZTsKIH0KIAotaW50IENTU1Byb3BlcnR5OjpyZXNvbHZl
RGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCwgVGV4dERpcmVjdGlvbiBkaXJl
Y3Rpb24pCitlbnVtIExvZ2ljYWxCb3hTaWRlIHsgQmVmb3JlU2lkZSwgRW5kU2lkZSwgQWZ0ZXJT
aWRlLCBTdGFydFNpZGUgfTsKK2VudW0gUGh5c2ljYWxCb3hTaWRlIHsgVG9wU2lkZSwgUmlnaHRT
aWRlLCBCb3R0b21TaWRlLCBMZWZ0U2lkZSB9OworCitzdGF0aWMgaW50IHJlc29sdmVUb1BoeXNp
Y2FsUHJvcGVydHkoVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24sIEVCbG9ja0Zsb3dEaXJlY3Rpb24g
YmxvY2tEaXJlY3Rpb24sIExvZ2ljYWxCb3hTaWRlIGxvZ2ljYWxTaWRlLCBjb25zdCBpbnQqIHBy
b3BlcnRpZXMpCiB7Ci0gICAgc3dpdGNoIChzdGF0aWNfY2FzdDxDU1NQcm9wZXJ0eUlEPihwcm9w
ZXJ0eUlEKSkgewotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5FbmQ6Ci0gICAgICAg
IHJldHVybiBkaXJlY3Rpb24gPT0gTFRSID8gQ1NTUHJvcGVydHlNYXJnaW5SaWdodCA6IENTU1By
b3BlcnR5TWFyZ2luTGVmdDsKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFyZ2luU3RhcnQ6
Ci0gICAgICAgIHJldHVybiBkaXJlY3Rpb24gPT0gTFRSID8gQ1NTUHJvcGVydHlNYXJnaW5MZWZ0
IDogQ1NTUHJvcGVydHlNYXJnaW5SaWdodDsKLQotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQ
YWRkaW5nRW5kOgotICAgICAgICByZXR1cm4gZGlyZWN0aW9uID09IExUUiA/IENTU1Byb3BlcnR5
UGFkZGluZ1JpZ2h0IDogQ1NTUHJvcGVydHlQYWRkaW5nTGVmdDsKLSAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0UGFkZGluZ1N0YXJ0OgotICAgICAgICByZXR1cm4gZGlyZWN0aW9uID09IExUUiA/
IENTU1Byb3BlcnR5UGFkZGluZ0xlZnQgOiBDU1NQcm9wZXJ0eVBhZGRpbmdSaWdodDsKLQotICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJFbmQ6Ci0gICAgICAgIHJldHVybiBkaXJlY3Rp
b24gPT0gTFRSID8gQ1NTUHJvcGVydHlCb3JkZXJSaWdodCA6IENTU1Byb3BlcnR5Qm9yZGVyTGVm
dDsKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRW5kQ29sb3I6Ci0gICAgICAgIHJl
dHVybiBkaXJlY3Rpb24gPT0gTFRSID8gQ1NTUHJvcGVydHlCb3JkZXJSaWdodENvbG9yIDogQ1NT
UHJvcGVydHlCb3JkZXJMZWZ0Q29sb3I7Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRl
ckVuZFN0eWxlOgotICAgICAgICByZXR1cm4gZGlyZWN0aW9uID09IExUUiA/IENTU1Byb3BlcnR5
Qm9yZGVyUmlnaHRTdHlsZSA6IENTU1Byb3BlcnR5Qm9yZGVyTGVmdFN0eWxlOwotICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJFbmRXaWR0aDoKLSAgICAgICAgcmV0dXJuIGRpcmVjdGlv
biA9PSBMVFIgPyBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0V2lkdGggOiBDU1NQcm9wZXJ0eUJvcmRl
ckxlZnRXaWR0aDsKLQotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydDoKLSAg
ICAgICAgcmV0dXJuIGRpcmVjdGlvbiA9PSBMVFIgPyBDU1NQcm9wZXJ0eUJvcmRlckxlZnQgOiBD
U1NQcm9wZXJ0eUJvcmRlclJpZ2h0OwotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJT
dGFydENvbG9yOgotICAgICAgICByZXR1cm4gZGlyZWN0aW9uID09IExUUiA/IENTU1Byb3BlcnR5
Qm9yZGVyTGVmdENvbG9yIDogQ1NTUHJvcGVydHlCb3JkZXJSaWdodENvbG9yOwotICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFN0eWxlOgotICAgICAgICByZXR1cm4gZGlyZWN0
aW9uID09IExUUiA/IENTU1Byb3BlcnR5Qm9yZGVyTGVmdFN0eWxlIDogQ1NTUHJvcGVydHlCb3Jk
ZXJSaWdodFN0eWxlOwotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFdpZHRo
OgotICAgICAgICByZXR1cm4gZGlyZWN0aW9uID09IExUUiA/IENTU1Byb3BlcnR5Qm9yZGVyTGVm
dFdpZHRoIDogQ1NTUHJvcGVydHlCb3JkZXJSaWdodFdpZHRoOworICAgIGlmIChkaXJlY3Rpb24g
PT0gTFRSKSB7CisgICAgICAgIGlmIChibG9ja0RpcmVjdGlvbiA9PSBUb3BUb0JvdHRvbUJsb2Nr
RmxvdykgeworICAgICAgICAgICAgLy8gVGhlIGNvbW1vbiBjYXNlLiBUaGUgbG9naWNhbCBhbmQg
cGh5c2ljYWwgYm94IHNpZGVzIG1hdGNoLgorICAgICAgICAgICAgLy8gTGVmdCA9IFN0YXJ0LCBS
aWdodCA9IEVuZCwgQmVmb3JlID0gVG9wLCBBZnRlciA9IEJvdHRvbQorICAgICAgICAgICAgcmV0
dXJuIHByb3BlcnRpZXNbbG9naWNhbFNpZGVdOworICAgICAgICB9CisgICAgICAgIAorICAgICAg
ICBpZiAoYmxvY2tEaXJlY3Rpb24gPT0gQm90dG9tVG9Ub3BCbG9ja0Zsb3cpIHsKKyAgICAgICAg
ICAgIC8vIFN0YXJ0ID0gTGVmdCwgRW5kID0gUmlnaHQsIEJlZm9yZSA9IEJvdHRvbSwgQWZ0ZXIg
PSBUb3AuCisgICAgICAgICAgICBzd2l0Y2ggKGxvZ2ljYWxTaWRlKSB7CisgICAgICAgICAgICBj
YXNlIFN0YXJ0U2lkZToKKyAgICAgICAgICAgICAgICByZXR1cm4gcHJvcGVydGllc1tMZWZ0U2lk
ZV07CisgICAgICAgICAgICBjYXNlIEVuZFNpZGU6CisgICAgICAgICAgICAgICAgcmV0dXJuIHBy
b3BlcnRpZXNbUmlnaHRTaWRlXTsKKyAgICAgICAgICAgIGNhc2UgQmVmb3JlU2lkZToKKyAgICAg
ICAgICAgICAgICByZXR1cm4gcHJvcGVydGllc1tCb3R0b21TaWRlXTsKKyAgICAgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbVG9wU2lkZV07CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgaWYgKGJsb2NrRGlyZWN0
aW9uID09IExlZnRUb1JpZ2h0QmxvY2tGbG93KSB7CisgICAgICAgICAgICAvLyBTdGFydCA9IFRv
cCwgRW5kID0gQm90dG9tLCBCZWZvcmUgPSBMZWZ0LCBBZnRlciA9IFJpZ2h0LgorICAgICAgICAg
ICAgc3dpdGNoIChsb2dpY2FsU2lkZSkgeworICAgICAgICAgICAgY2FzZSBTdGFydFNpZGU6Cisg
ICAgICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbVG9wU2lkZV07CisgICAgICAgICAgICBj
YXNlIEVuZFNpZGU6CisgICAgICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbQm90dG9tU2lk
ZV07CisgICAgICAgICAgICBjYXNlIEJlZm9yZVNpZGU6CisgICAgICAgICAgICAgICAgcmV0dXJu
IHByb3BlcnRpZXNbTGVmdFNpZGVdOworICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
ICAgICByZXR1cm4gcHJvcGVydGllc1tSaWdodFNpZGVdOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgICAgIAorICAgICAgICAvLyBTdGFydCA9IFRvcCwgRW5kID0gQm90dG9tLCBCZWZv
cmUgPSBSaWdodCwgQWZ0ZXIgPSBMZWZ0CisgICAgICAgIHN3aXRjaCAobG9naWNhbFNpZGUpIHsK
KyAgICAgICAgY2FzZSBTdGFydFNpZGU6CisgICAgICAgICAgICByZXR1cm4gcHJvcGVydGllc1tU
b3BTaWRlXTsKKyAgICAgICAgY2FzZSBFbmRTaWRlOgorICAgICAgICAgICAgcmV0dXJuIHByb3Bl
cnRpZXNbQm90dG9tU2lkZV07CisgICAgICAgIGNhc2UgQmVmb3JlU2lkZToKKyAgICAgICAgICAg
IHJldHVybiBwcm9wZXJ0aWVzW1JpZ2h0U2lkZV07CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICByZXR1cm4gcHJvcGVydGllc1tMZWZ0U2lkZV07CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICBpZiAoYmxvY2tEaXJlY3Rpb24gPT0gVG9wVG9Cb3R0b21CbG9ja0Zsb3cpIHsKKyAgICAgICAg
Ly8gU3RhcnQgPSBSaWdodCwgRW5kID0gTGVmdCwgQmVmb3JlID0gVG9wLCBBZnRlciA9IEJvdHRv
bQorICAgICAgICBzd2l0Y2ggKGxvZ2ljYWxTaWRlKSB7CisgICAgICAgIGNhc2UgU3RhcnRTaWRl
OgorICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbUmlnaHRTaWRlXTsKKyAgICAgICAgY2Fz
ZSBFbmRTaWRlOgorICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbTGVmdFNpZGVdOworICAg
ICAgICBjYXNlIEJlZm9yZVNpZGU6CisgICAgICAgICAgICByZXR1cm4gcHJvcGVydGllc1tUb3BT
aWRlXTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzW0Jv
dHRvbVNpZGVdOworICAgICAgICB9CisgICAgfQorICAgIAorICAgIGlmIChibG9ja0RpcmVjdGlv
biA9PSBCb3R0b21Ub1RvcEJsb2NrRmxvdykgeworICAgICAgICAvLyBTdGFydCA9IFJpZ2h0LCBF
bmQgPSBMZWZ0LCBCZWZvcmUgPSBCb3R0b20sIEFmdGVyID0gVG9wCisgICAgICAgIHN3aXRjaCAo
bG9naWNhbFNpZGUpIHsKKyAgICAgICAgY2FzZSBTdGFydFNpZGU6CisgICAgICAgICAgICByZXR1
cm4gcHJvcGVydGllc1tSaWdodFNpZGVdOworICAgICAgICBjYXNlIEVuZFNpZGU6CisgICAgICAg
ICAgICByZXR1cm4gcHJvcGVydGllc1tMZWZ0U2lkZV07CisgICAgICAgIGNhc2UgQmVmb3JlU2lk
ZToKKyAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzW0JvdHRvbVNpZGVdOworICAgICAgICBk
ZWZhdWx0OgorICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbVG9wU2lkZV07CisgICAgICAg
IH0KKyAgICB9CisgICAgCisgICAgaWYgKGJsb2NrRGlyZWN0aW9uID09IExlZnRUb1JpZ2h0Qmxv
Y2tGbG93KSB7CisgICAgICAgIC8vIFN0YXJ0ID0gQm90dG9tLCBFbmQgPSBUb3AsIEJlZm9yZSA9
IExlZnQsIEFmdGVyID0gUmlnaHQKKyAgICAgICAgc3dpdGNoIChsb2dpY2FsU2lkZSkgeworICAg
ICAgICBjYXNlIFN0YXJ0U2lkZToKKyAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzW0JvdHRv
bVNpZGVdOworICAgICAgICBjYXNlIEVuZFNpZGU6CisgICAgICAgICAgICByZXR1cm4gcHJvcGVy
dGllc1tUb3BTaWRlXTsKKyAgICAgICAgY2FzZSBCZWZvcmVTaWRlOgorICAgICAgICAgICAgcmV0
dXJuIHByb3BlcnRpZXNbTGVmdFNpZGVdOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
cmV0dXJuIHByb3BlcnRpZXNbUmlnaHRTaWRlXTsKKyAgICAgICAgfQorICAgIH0KKyAgICAKKyAg
ICAvLyBTdGFydCA9IEJvdHRvbSwgRW5kID0gVG9wLCBCZWZvcmUgPSBSaWdodCwgQWZ0ZXIgPSBM
ZWZ0CisgICAgc3dpdGNoIChsb2dpY2FsU2lkZSkgeworICAgIGNhc2UgU3RhcnRTaWRlOgorICAg
ICAgICByZXR1cm4gcHJvcGVydGllc1tCb3R0b21TaWRlXTsKKyAgICBjYXNlIEVuZFNpZGU6Cisg
ICAgICAgIHJldHVybiBwcm9wZXJ0aWVzW1RvcFNpZGVdOworICAgIGNhc2UgQmVmb3JlU2lkZToK
KyAgICAgICAgcmV0dXJuIHByb3BlcnRpZXNbUmlnaHRTaWRlXTsKKyAgICBkZWZhdWx0OgorICAg
ICAgICByZXR1cm4gcHJvcGVydGllc1tMZWZ0U2lkZV07CisgICAgfQorfQorCitlbnVtIExvZ2lj
YWxFeHRlbnQgeyBMb2dpY2FsV2lkdGgsIExvZ2ljYWxIZWlnaHQgfTsKIAorc3RhdGljIGludCBy
ZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KEVCbG9ja0Zsb3dEaXJlY3Rpb24gYmxvY2tEaXJlY3Rp
b24sIExvZ2ljYWxFeHRlbnQgbG9naWNhbFNpZGUsIGNvbnN0IGludCogcHJvcGVydGllcykKK3sK
KyAgICBpZiAoYmxvY2tEaXJlY3Rpb24gPT0gVG9wVG9Cb3R0b21CbG9ja0Zsb3cgfHwgYmxvY2tE
aXJlY3Rpb24gPT0gQm90dG9tVG9Ub3BCbG9ja0Zsb3cpCisgICAgICAgIHJldHVybiBwcm9wZXJ0
aWVzW2xvZ2ljYWxTaWRlXTsKKyAgICByZXR1cm4gbG9naWNhbFNpZGUgPT0gTG9naWNhbFdpZHRo
ID8gcHJvcGVydGllc1sxXSA6IHByb3BlcnRpZXNbMF07Cit9CisgICAgICAgIAoraW50IENTU1By
b3BlcnR5OjpyZXNvbHZlRGlyZWN0aW9uQXdhcmVQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCwgVGV4
dERpcmVjdGlvbiBkaXJlY3Rpb24sIEVCbG9ja0Zsb3dEaXJlY3Rpb24gYmxvY2tEaXJlY3Rpb24p
Cit7CisgICAgc3dpdGNoIChzdGF0aWNfY2FzdDxDU1NQcm9wZXJ0eUlEPihwcm9wZXJ0eUlEKSkg
eworICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5FbmQ6IHsKKyAgICAgICAgY29uc3Qg
aW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3BlcnR5TWFyZ2luVG9wLCBDU1NQcm9wZXJ0eU1h
cmdpblJpZ2h0LCBDU1NQcm9wZXJ0eU1hcmdpbkJvdHRvbSwgQ1NTUHJvcGVydHlNYXJnaW5MZWZ0
IH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwg
YmxvY2tEaXJlY3Rpb24sIEVuZFNpZGUsIHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0TWFyZ2luU3RhcnQ6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRp
ZXNbNF0gPSB7IENTU1Byb3BlcnR5TWFyZ2luVG9wLCBDU1NQcm9wZXJ0eU1hcmdpblJpZ2h0LCBD
U1NQcm9wZXJ0eU1hcmdpbkJvdHRvbSwgQ1NTUHJvcGVydHlNYXJnaW5MZWZ0IH07CisgICAgICAg
IHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJlY3Rp
b24sIFN0YXJ0U2lkZSwgcHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRNYXJnaW5CZWZvcmU6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbNF0gPSB7
IENTU1Byb3BlcnR5TWFyZ2luVG9wLCBDU1NQcm9wZXJ0eU1hcmdpblJpZ2h0LCBDU1NQcm9wZXJ0
eU1hcmdpbkJvdHRvbSwgQ1NTUHJvcGVydHlNYXJnaW5MZWZ0IH07CisgICAgICAgIHJldHVybiBy
ZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJlY3Rpb24sIEJlZm9y
ZVNpZGUsIHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWFy
Z2luQWZ0ZXI6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3Bl
cnR5TWFyZ2luVG9wLCBDU1NQcm9wZXJ0eU1hcmdpblJpZ2h0LCBDU1NQcm9wZXJ0eU1hcmdpbkJv
dHRvbSwgQ1NTUHJvcGVydHlNYXJnaW5MZWZ0IH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9Q
aHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJlY3Rpb24sIEFmdGVyU2lkZSwgcHJv
cGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nRW5kOiB7
CisgICAgICAgIGNvbnN0IGludCBwcm9wZXJ0aWVzWzRdID0geyBDU1NQcm9wZXJ0eVBhZGRpbmdU
b3AsIENTU1Byb3BlcnR5UGFkZGluZ1JpZ2h0LCBDU1NQcm9wZXJ0eVBhZGRpbmdCb3R0b20sIENT
U1Byb3BlcnR5UGFkZGluZ0xlZnQgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2Fs
UHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgRW5kU2lkZSwgcHJvcGVydGllcyk7
CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nU3RhcnQ6IHsKKyAgICAg
ICAgY29uc3QgaW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3BlcnR5UGFkZGluZ1RvcCwgQ1NT
UHJvcGVydHlQYWRkaW5nUmlnaHQsIENTU1Byb3BlcnR5UGFkZGluZ0JvdHRvbSwgQ1NTUHJvcGVy
dHlQYWRkaW5nTGVmdCB9OworICAgICAgICByZXR1cm4gcmVzb2x2ZVRvUGh5c2ljYWxQcm9wZXJ0
eShkaXJlY3Rpb24sIGJsb2NrRGlyZWN0aW9uLCBTdGFydFNpZGUsIHByb3BlcnRpZXMpOworICAg
IH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0UGFkZGluZ0JlZm9yZTogeworICAgICAgICBj
b25zdCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJvcGVydHlQYWRkaW5nVG9wLCBDU1NQcm9w
ZXJ0eVBhZGRpbmdSaWdodCwgQ1NTUHJvcGVydHlQYWRkaW5nQm90dG9tLCBDU1NQcm9wZXJ0eVBh
ZGRpbmdMZWZ0IH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRp
cmVjdGlvbiwgYmxvY2tEaXJlY3Rpb24sIEJlZm9yZVNpZGUsIHByb3BlcnRpZXMpOworICAgIH0K
KyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0UGFkZGluZ0FmdGVyOiB7CisgICAgICAgIGNvbnN0
IGludCBwcm9wZXJ0aWVzWzRdID0geyBDU1NQcm9wZXJ0eVBhZGRpbmdUb3AsIENTU1Byb3BlcnR5
UGFkZGluZ1JpZ2h0LCBDU1NQcm9wZXJ0eVBhZGRpbmdCb3R0b20sIENTU1Byb3BlcnR5UGFkZGlu
Z0xlZnQgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0
aW9uLCBibG9ja0RpcmVjdGlvbiwgQWZ0ZXJTaWRlLCBwcm9wZXJ0aWVzKTsKKyAgICB9CisgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckVuZDogeworICAgICAgICBjb25zdCBpbnQgcHJv
cGVydGllc1s0XSA9IHsgQ1NTUHJvcGVydHlCb3JkZXJUb3AsIENTU1Byb3BlcnR5Qm9yZGVyUmln
aHQsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tLCBDU1NQcm9wZXJ0eUJvcmRlckxlZnQgfTsKKyAg
ICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0Rp
cmVjdGlvbiwgRW5kU2lkZSwgcHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRCb3JkZXJTdGFydDogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1s0XSA9
IHsgQ1NTUHJvcGVydHlCb3JkZXJUb3AsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHQsIENTU1Byb3Bl
cnR5Qm9yZGVyQm90dG9tLCBDU1NQcm9wZXJ0eUJvcmRlckxlZnQgfTsKKyAgICAgICAgcmV0dXJu
IHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgU3Rh
cnRTaWRlLCBwcm9wZXJ0aWVzKTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJv
cmRlckJlZm9yZTogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJv
cGVydHlCb3JkZXJUb3AsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHQsIENTU1Byb3BlcnR5Qm9yZGVy
Qm90dG9tLCBDU1NQcm9wZXJ0eUJvcmRlckxlZnQgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVU
b1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgQmVmb3JlU2lkZSwg
cHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRl
cjogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJvcGVydHlCb3Jk
ZXJUb3AsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHQsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tLCBD
U1NQcm9wZXJ0eUJvcmRlckxlZnQgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2Fs
UHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgQWZ0ZXJTaWRlLCBwcm9wZXJ0aWVz
KTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckVuZENvbG9yOiB7Cisg
ICAgICAgIGNvbnN0IGludCBwcm9wZXJ0aWVzWzRdID0geyBDU1NQcm9wZXJ0eUJvcmRlclRvcENv
bG9yLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0Q29sb3IsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9t
Q29sb3IsIENTU1Byb3BlcnR5Qm9yZGVyTGVmdENvbG9yIH07CisgICAgICAgIHJldHVybiByZXNv
bHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJlY3Rpb24sIEVuZFNpZGUs
IHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyU3Rh
cnRDb2xvcjogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJvcGVy
dHlCb3JkZXJUb3BDb2xvciwgQ1NTUHJvcGVydHlCb3JkZXJSaWdodENvbG9yLCBDU1NQcm9wZXJ0
eUJvcmRlckJvdHRvbUNvbG9yLCBDU1NQcm9wZXJ0eUJvcmRlckxlZnRDb2xvciB9OworICAgICAg
ICByZXR1cm4gcmVzb2x2ZVRvUGh5c2ljYWxQcm9wZXJ0eShkaXJlY3Rpb24sIGJsb2NrRGlyZWN0
aW9uLCBTdGFydFNpZGUsIHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0Qm9yZGVyQmVmb3JlQ29sb3I6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNb
NF0gPSB7IENTU1Byb3BlcnR5Qm9yZGVyVG9wQ29sb3IsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRD
b2xvciwgQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21Db2xvciwgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0
Q29sb3IgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0
aW9uLCBibG9ja0RpcmVjdGlvbiwgQmVmb3JlU2lkZSwgcHJvcGVydGllcyk7CisgICAgfQorICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlckNvbG9yOiB7CisgICAgICAgIGNvbnN0
IGludCBwcm9wZXJ0aWVzWzRdID0geyBDU1NQcm9wZXJ0eUJvcmRlclRvcENvbG9yLCBDU1NQcm9w
ZXJ0eUJvcmRlclJpZ2h0Q29sb3IsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tQ29sb3IsIENTU1By
b3BlcnR5Qm9yZGVyTGVmdENvbG9yIH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNh
bFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJlY3Rpb24sIEFmdGVyU2lkZSwgcHJvcGVydGll
cyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJFbmRTdHlsZTogewor
ICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJvcGVydHlCb3JkZXJUb3BT
dHlsZSwgQ1NTUHJvcGVydHlCb3JkZXJSaWdodFN0eWxlLCBDU1NQcm9wZXJ0eUJvcmRlckJvdHRv
bVN0eWxlLCBDU1NQcm9wZXJ0eUJvcmRlckxlZnRTdHlsZSB9OworICAgICAgICByZXR1cm4gcmVz
b2x2ZVRvUGh5c2ljYWxQcm9wZXJ0eShkaXJlY3Rpb24sIGJsb2NrRGlyZWN0aW9uLCBFbmRTaWRl
LCBwcm9wZXJ0aWVzKTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlclN0
YXJ0U3R5bGU6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3Bl
cnR5Qm9yZGVyVG9wU3R5bGUsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRTdHlsZSwgQ1NTUHJvcGVy
dHlCb3JkZXJCb3R0b21TdHlsZSwgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0U3R5bGUgfTsKKyAgICAg
ICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVj
dGlvbiwgU3RhcnRTaWRlLCBwcm9wZXJ0aWVzKTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEJvcmRlckJlZm9yZVN0eWxlOiB7CisgICAgICAgIGNvbnN0IGludCBwcm9wZXJ0aWVz
WzRdID0geyBDU1NQcm9wZXJ0eUJvcmRlclRvcFN0eWxlLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0
U3R5bGUsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tU3R5bGUsIENTU1Byb3BlcnR5Qm9yZGVyTGVm
dFN0eWxlIH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVj
dGlvbiwgYmxvY2tEaXJlY3Rpb24sIEJlZm9yZVNpZGUsIHByb3BlcnRpZXMpOworICAgIH0KKyAg
ICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQWZ0ZXJTdHlsZTogeworICAgICAgICBjb25z
dCBpbnQgcHJvcGVydGllc1s0XSA9IHsgQ1NTUHJvcGVydHlCb3JkZXJUb3BTdHlsZSwgQ1NTUHJv
cGVydHlCb3JkZXJSaWdodFN0eWxlLCBDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVN0eWxlLCBDU1NQ
cm9wZXJ0eUJvcmRlckxlZnRTdHlsZSB9OworICAgICAgICByZXR1cm4gcmVzb2x2ZVRvUGh5c2lj
YWxQcm9wZXJ0eShkaXJlY3Rpb24sIGJsb2NrRGlyZWN0aW9uLCBBZnRlclNpZGUsIHByb3BlcnRp
ZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRW5kV2lkdGg6IHsK
KyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3BlcnR5Qm9yZGVyVG9w
V2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRXaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJCb3R0
b21XaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lkdGggfTsKKyAgICAgICAgcmV0dXJuIHJl
c29sdmVUb1BoeXNpY2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgRW5kU2lk
ZSwgcHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJT
dGFydFdpZHRoOiB7CisgICAgICAgIGNvbnN0IGludCBwcm9wZXJ0aWVzWzRdID0geyBDU1NQcm9w
ZXJ0eUJvcmRlclRvcFdpZHRoLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0V2lkdGgsIENTU1Byb3Bl
cnR5Qm9yZGVyQm90dG9tV2lkdGgsIENTU1Byb3BlcnR5Qm9yZGVyTGVmdFdpZHRoIH07CisgICAg
ICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGRpcmVjdGlvbiwgYmxvY2tEaXJl
Y3Rpb24sIFN0YXJ0U2lkZSwgcHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRCb3JkZXJCZWZvcmVXaWR0aDogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGll
c1s0XSA9IHsgQ1NTUHJvcGVydHlCb3JkZXJUb3BXaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJSaWdo
dFdpZHRoLCBDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVdpZHRoLCBDU1NQcm9wZXJ0eUJvcmRlckxl
ZnRXaWR0aCB9OworICAgICAgICByZXR1cm4gcmVzb2x2ZVRvUGh5c2ljYWxQcm9wZXJ0eShkaXJl
Y3Rpb24sIGJsb2NrRGlyZWN0aW9uLCBCZWZvcmVTaWRlLCBwcm9wZXJ0aWVzKTsKKyAgICB9Cisg
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyV2lkdGg6IHsKKyAgICAgICAgY29u
c3QgaW50IHByb3BlcnRpZXNbNF0gPSB7IENTU1Byb3BlcnR5Qm9yZGVyVG9wV2lkdGgsIENTU1By
b3BlcnR5Qm9yZGVyUmlnaHRXaWR0aCwgQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgQ1NT
UHJvcGVydHlCb3JkZXJMZWZ0V2lkdGggfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNp
Y2FsUHJvcGVydHkoZGlyZWN0aW9uLCBibG9ja0RpcmVjdGlvbiwgQWZ0ZXJTaWRlLCBwcm9wZXJ0
aWVzKTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdExvZ2ljYWxXaWR0aDogewor
ICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1syXSA9IHsgQ1NTUHJvcGVydHlXaWR0aCwgQ1NT
UHJvcGVydHlIZWlnaHQgfTsKKyAgICAgICAgcmV0dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVy
dHkoYmxvY2tEaXJlY3Rpb24sIExvZ2ljYWxXaWR0aCwgcHJvcGVydGllcyk7CisgICAgfQorICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRMb2dpY2FsSGVpZ2h0OiB7CisgICAgICAgIGNvbnN0IGlu
dCBwcm9wZXJ0aWVzWzJdID0geyBDU1NQcm9wZXJ0eVdpZHRoLCBDU1NQcm9wZXJ0eUhlaWdodCB9
OworICAgICAgICByZXR1cm4gcmVzb2x2ZVRvUGh5c2ljYWxQcm9wZXJ0eShibG9ja0RpcmVjdGlv
biwgTG9naWNhbEhlaWdodCwgcHJvcGVydGllcyk7CisgICAgfQorICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRNaW5Mb2dpY2FsV2lkdGg6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNb
Ml0gPSB7IENTU1Byb3BlcnR5TWluV2lkdGgsIENTU1Byb3BlcnR5TWluSGVpZ2h0IH07CisgICAg
ICAgIHJldHVybiByZXNvbHZlVG9QaHlzaWNhbFByb3BlcnR5KGJsb2NrRGlyZWN0aW9uLCBMb2dp
Y2FsV2lkdGgsIHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
TWluTG9naWNhbEhlaWdodDogeworICAgICAgICBjb25zdCBpbnQgcHJvcGVydGllc1syXSA9IHsg
Q1NTUHJvcGVydHlNaW5XaWR0aCwgQ1NTUHJvcGVydHlNaW5IZWlnaHQgfTsKKyAgICAgICAgcmV0
dXJuIHJlc29sdmVUb1BoeXNpY2FsUHJvcGVydHkoYmxvY2tEaXJlY3Rpb24sIExvZ2ljYWxIZWln
aHQsIHByb3BlcnRpZXMpOworICAgIH0KKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWF4TG9n
aWNhbFdpZHRoOiB7CisgICAgICAgIGNvbnN0IGludCBwcm9wZXJ0aWVzWzJdID0geyBDU1NQcm9w
ZXJ0eU1heFdpZHRoLCBDU1NQcm9wZXJ0eU1heEhlaWdodCB9OworICAgICAgICByZXR1cm4gcmVz
b2x2ZVRvUGh5c2ljYWxQcm9wZXJ0eShibG9ja0RpcmVjdGlvbiwgTG9naWNhbFdpZHRoLCBwcm9w
ZXJ0aWVzKTsKKyAgICB9CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1heExvZ2ljYWxIZWln
aHQ6IHsKKyAgICAgICAgY29uc3QgaW50IHByb3BlcnRpZXNbMl0gPSB7IENTU1Byb3BlcnR5TWF4
V2lkdGgsIENTU1Byb3BlcnR5TWF4SGVpZ2h0IH07CisgICAgICAgIHJldHVybiByZXNvbHZlVG9Q
aHlzaWNhbFByb3BlcnR5KGJsb2NrRGlyZWN0aW9uLCBMb2dpY2FsSGVpZ2h0LCBwcm9wZXJ0aWVz
KTsKKyAgICB9CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIHByb3BlcnR5SUQ7CiAgICAg
fQpJbmRleDogV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0eS5oCShyZXZpc2lvbiA2Nzg2MCkKKysrIFdlYkNvcmUvY3NzL0NTU1By
b3BlcnR5LmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUgQ1NTUHJv
cGVydHlfaAogCiAjaW5jbHVkZSAiQ1NTVmFsdWUuaCIKKyNpbmNsdWRlICJSZW5kZXJTdHlsZUNv
bnN0YW50cy5oIgogI2luY2x1ZGUgIlRleHREaXJlY3Rpb24uaCIKICNpbmNsdWRlIDx3dGYvUGFz
c1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTU5LDcgKzYwLDcgQEAgcHVi
bGljOgogICAgIAogICAgIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7CiAKLSAgICBzdGF0aWMgaW50
IHJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KGludCBwcm9wZXJ0eUlELCBUZXh0RGlyZWN0
aW9uKTsKKyAgICBzdGF0aWMgaW50IHJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KGludCBw
cm9wZXJ0eUlELCBUZXh0RGlyZWN0aW9uLCBFQmxvY2tGbG93RGlyZWN0aW9uKTsKIAogICAgIGZy
aWVuZCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ1NTUHJvcGVydHkmLCBjb25zdCBDU1NQcm9wZXJ0
eSYpOwogCkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4JKHJldmlzaW9uIDY3ODYwKQorKysg
V2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjAsOCAr
MjAsMTAgQEAgZm9udC1zdHlsZQogZm9udC12YXJpYW50CiBmb250LXdlaWdodAogdGV4dC1yZW5k
ZXJpbmcKKy13ZWJraXQtYmxvY2stZmxvdwogLXdlYmtpdC1mb250LXNtb290aGluZwogLXdlYmtp
dC10ZXh0LXNpemUtYWRqdXN0Cistd2Via2l0LXdyaXRpbmctbW9kZQogem9vbQogCiAjIGxpbmUg
aGVpZ2h0IG5lZWRzIHRvIGJlIHJpZ2h0IGFmdGVyIHRoZSBhYm92ZSBoaWdoLXByaW9yaXR5IHBy
b3BlcnRpZXMKQEAgLTE3Myw4ICsxNzUsMTQgQEAgei1pbmRleAogIyBhIHNpbmdsZSB2YWx1ZTog
LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGw7IGlzIGVxdWl2YWxlbnQgdG8gYmFja2dyb3VuZC1z
aXplOiBsIGw7CiAjIHdoZXJlYXMgYmFja2dyb3VuZC1zaXplOiBsOyBpcyBlcXVpdmFsZW50IHRv
IGJhY2tncm91bmQtc2l6ZTogbCBhdXRvOwogLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemUKLSMgQ1NT
IFRleHQgTGF5b3V0IE1vZHVsZSBMZXZlbCAzOiBWZXJ0aWNhbCB3cml0aW5nIHN1cHBvcnQKLS13
ZWJraXQtYmxvY2stZmxvdworLXdlYmtpdC1ib3JkZXItYWZ0ZXIKKy13ZWJraXQtYm9yZGVyLWFm
dGVyLWNvbG9yCistd2Via2l0LWJvcmRlci1hZnRlci1zdHlsZQorLXdlYmtpdC1ib3JkZXItYWZ0
ZXItd2lkdGgKKy13ZWJraXQtYm9yZGVyLWJlZm9yZQorLXdlYmtpdC1ib3JkZXItYmVmb3JlLWNv
bG9yCistd2Via2l0LWJvcmRlci1iZWZvcmUtc3R5bGUKKy13ZWJraXQtYm9yZGVyLWJlZm9yZS13
aWR0aAogLXdlYmtpdC1ib3JkZXItZW5kCiAtd2Via2l0LWJvcmRlci1lbmQtY29sb3IKIC13ZWJr
aXQtYm9yZGVyLWVuZC1zdHlsZQpAQCAtMjIyLDggKzIzMCwxMiBAQCB6LWluZGV4CiAtd2Via2l0
LWh5cGhlbnMKIC13ZWJraXQtbGluZS1icmVhawogLXdlYmtpdC1saW5lLWNsYW1wCistd2Via2l0
LWxvZ2ljYWwtd2lkdGgKKy13ZWJraXQtbG9naWNhbC1oZWlnaHQKIC13ZWJraXQtbWFyZ2luLWJv
dHRvbS1jb2xsYXBzZQogLXdlYmtpdC1tYXJnaW4tY29sbGFwc2UKKy13ZWJraXQtbWFyZ2luLWFm
dGVyCistd2Via2l0LW1hcmdpbi1iZWZvcmUKIC13ZWJraXQtbWFyZ2luLWVuZAogLXdlYmtpdC1t
YXJnaW4tc3RhcnQKIC13ZWJraXQtbWFyZ2luLXRvcC1jb2xsYXBzZQpAQCAtMjQ4LDcgKzI2MCwx
MyBAQCB6LWluZGV4CiAtd2Via2l0LW1hc2stcmVwZWF0LXkKIC13ZWJraXQtbWFzay1zaXplCiAt
d2Via2l0LW1hdGNoLW5lYXJlc3QtbWFpbC1ibG9ja3F1b3RlLWNvbG9yCistd2Via2l0LW1heC1s
b2dpY2FsLXdpZHRoCistd2Via2l0LW1heC1sb2dpY2FsLWhlaWdodAorLXdlYmtpdC1taW4tbG9n
aWNhbC13aWR0aAorLXdlYmtpdC1taW4tbG9naWNhbC1oZWlnaHQKIC13ZWJraXQtbmJzcC1tb2Rl
Cistd2Via2l0LXBhZGRpbmctYWZ0ZXIKKy13ZWJraXQtcGFkZGluZy1iZWZvcmUKIC13ZWJraXQt
cGFkZGluZy1lbmQKIC13ZWJraXQtcGFkZGluZy1zdGFydAogLXdlYmtpdC1wZXJzcGVjdGl2ZQpA
QCAtMjc3LDUgKzI5NSwzIEBAIHotaW5kZXgKIC13ZWJraXQtdXNlci1tb2RpZnkKIC13ZWJraXQt
dXNlci1zZWxlY3QKIC13ZWJraXQtdmFyaWFibGUtZGVjbGFyYXRpb24tYmxvY2sKLSMgQ1NTIFRl
eHQgTGF5b3V0IE1vZHVsZSBMZXZlbCAzOiBWZXJ0aWNhbCB3cml0aW5nIHN1cHBvcnQKLS13ZWJr
aXQtd3JpdGluZy1tb2RlCkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAkocmV2aXNpb24g
Njc4NjApCisrKyBXZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjkyMyw3ICsyOTIzLDcgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBseURlY2xh
cmF0aW9ucwogCiAgICAgICAgICAgICAgICAgaWYgKGFwcGx5Rmlyc3QpIHsKICAgICAgICAgICAg
ICAgICAgICAgQ09NUElMRV9BU1NFUlQoZmlyc3RDU1NQcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eUNv
bG9yLCBDU1NfY29sb3JfaXNfZmlyc3RfcHJvcGVydHkpOwotICAgICAgICAgICAgICAgICAgICBD
T01QSUxFX0FTU0VSVChDU1NQcm9wZXJ0eVpvb20gPT0gQ1NTUHJvcGVydHlDb2xvciArIDEyLCBD
U1Nfem9vbV9pc19lbmRfb2ZfZmlyc3RfcHJvcF9yYW5nZSk7CisgICAgICAgICAgICAgICAgICAg
IENPTVBJTEVfQVNTRVJUKENTU1Byb3BlcnR5Wm9vbSA9PSBDU1NQcm9wZXJ0eUNvbG9yICsgMTQs
IENTU196b29tX2lzX2VuZF9vZl9maXJzdF9wcm9wX3JhbmdlKTsKICAgICAgICAgICAgICAgICAg
ICAgQ09NUElMRV9BU1NFUlQoQ1NTUHJvcGVydHlMaW5lSGVpZ2h0ID09IENTU1Byb3BlcnR5Wm9v
bSArIDEsIENTU19saW5lX2hlaWdodF9pc19hZnRlcl96b29tKTsKIAogICAgICAgICAgICAgICAg
ICAgICAvLyBnaXZlIHNwZWNpYWwgcHJpb3JpdHkgdG8gZm9udC14eHgsIGNvbG9yIHByb3BlcnRp
ZXMsIGV0YwpAQCAtMzExMSw3ICszMTExLDcgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBs
eVByb3BlcnR5KGludAogICAgIGJvb2wgaXNJbmhlcml0ID0gbV9wYXJlbnROb2RlICYmIHZhbHVl
VHlwZSA9PSBDU1NWYWx1ZTo6Q1NTX0lOSEVSSVQ7CiAgICAgYm9vbCBpc0luaXRpYWwgPSB2YWx1
ZVR5cGUgPT0gQ1NTVmFsdWU6OkNTU19JTklUSUFMIHx8ICghbV9wYXJlbnROb2RlICYmIHZhbHVl
VHlwZSA9PSBDU1NWYWx1ZTo6Q1NTX0lOSEVSSVQpOwogICAgIAotICAgIGlkID0gQ1NTUHJvcGVy
dHk6OnJlc29sdmVEaXJlY3Rpb25Bd2FyZVByb3BlcnR5KGlkLCBtX3N0eWxlLT5kaXJlY3Rpb24o
KSk7CisgICAgaWQgPSBDU1NQcm9wZXJ0eTo6cmVzb2x2ZURpcmVjdGlvbkF3YXJlUHJvcGVydHko
aWQsIG1fc3R5bGUtPmRpcmVjdGlvbigpLCBtX3N0eWxlLT5ibG9ja0Zsb3coKSk7CiAKICAgICBp
ZiAobV9jaGVja2VyLm1fbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgJiYgIWlzVmFsaWRWaXNpdGVk
TGlua1Byb3BlcnR5KGlkKSkgewogICAgICAgICAvLyBMaW1pdCB0aGUgcHJvcGVydGllcyB0aGF0
IGNhbiBiZSBhcHBsaWVkIHRvIG9ubHkgdGhlIG9uZXMgaG9ub3JlZCBieSA6dmlzaXRlZC4KQEAg
LTU0NzQsMTAgKzU0NzQsMjggQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBseVByb3BlcnR5
KGludAogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydENvbG9yOgogICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJTdGFydFN0eWxlOgogICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRCb3JkZXJTdGFydFdpZHRoOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3Jk
ZXJCZWZvcmU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckJlZm9yZUNvbG9yOgor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJCZWZvcmVTdHlsZToKKyAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0Qm9yZGVyQmVmb3JlV2lkdGg6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEJvcmRlckFmdGVyOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlckNv
bG9yOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlclN0eWxlOgorICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlcldpZHRoOgogICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRNYXJnaW5FbmQ6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1hcmdpblN0YXJ0
OgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRNYXJnaW5CZWZvcmU6CisgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdE1hcmdpbkFmdGVyOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRk
aW5nRW5kOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRQYWRkaW5nU3RhcnQ6CisgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdFBhZGRpbmdCZWZvcmU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdFBhZGRpbmdBZnRlcjoKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TG9naWNhbFdpZHRo
OgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRMb2dpY2FsSGVpZ2h0OgorICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRNaW5Mb2dpY2FsV2lkdGg6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dE1pbkxvZ2ljYWxIZWlnaHQ6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdE1heExvZ2ljYWxX
aWR0aDoKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWF4TG9naWNhbEhlaWdodDoKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgIGJyZWFrOwogCkluZGV4OiBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAJKHJldmlzaW9uIDY3ODYwKQorKysgV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NjA0LDMxICs2MDQsMzQgQEAgaW50IFJlbmRlclRhYmxlU2VjdGlvbjo6bGF5b3V0Um93cyhpbnQg
dAogICAgICAgICAgICAgY2VsbC0+c2V0SW50cmluc2ljUGFkZGluZ0JvdHRvbShiZSk7CiAgICAg
ICAgICAgICAKICAgICAgICAgICAgIEludFJlY3Qgb2xkQ2VsbFJlY3QoY2VsbC0+eCgpLCBjZWxs
LT55KCkgLCBjZWxsLT53aWR0aCgpLCBjZWxsLT5oZWlnaHQoKSk7Ci0gICAgICAgIAorICAgICAg
ICAgICAgCiAgICAgICAgICAgICBpZiAoc3R5bGUoKS0+ZGlyZWN0aW9uKCkgPT0gUlRMKQogICAg
ICAgICAgICAgICAgIGNlbGwtPnNldExvY2F0aW9uKHRhYmxlKCktPmNvbHVtblBvc2l0aW9ucygp
W25FZmZDb2xzXSAtIHRhYmxlKCktPmNvbHVtblBvc2l0aW9ucygpW3RhYmxlKCktPmNvbFRvRWZm
Q29sKGNlbGwtPmNvbCgpICsgY2VsbC0+Y29sU3BhbigpKV0gKyBoc3BhY2luZywgbV9yb3dQb3Nb
cmluZHhdKTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBjZWxsLT5zZXRMb2Nh
dGlvbih0YWJsZSgpLT5jb2x1bW5Qb3NpdGlvbnMoKVtjXSArIGhzcGFjaW5nLCBtX3Jvd1Bvc1ty
aW5keF0pOworICAgICAgICAgICAgdmlldygpLT5hZGRMYXlvdXREZWx0YShJbnRTaXplKG9sZENl
bGxSZWN0LngoKSAtIGNlbGwtPngoKSwgb2xkQ2VsbFJlY3QueSgpIC0gY2VsbC0+eSgpKSk7CiAK
ICAgICAgICAgICAgIGlmICh0ZSAhPSBvbGRUZSB8fCBiZSAhPSBvbGRCZSkKICAgICAgICAgICAg
ICAgICBjZWxsLT5zZXROZWVkc0xheW91dCh0cnVlLCBmYWxzZSk7CiAgICAgICAgICAgICAKICAg
ICAgICAgICAgIGlmICghY2VsbC0+bmVlZHNMYXlvdXQoKSAmJiB2aWV3KCktPmxheW91dFN0YXRl
KCktPm1fcGFnZUhlaWdodCAmJiB2aWV3KCktPmxheW91dFN0YXRlKCktPnBhZ2VZKGNlbGwtPnko
KSkgIT0gY2VsbC0+cGFnZVkoKSkKICAgICAgICAgICAgICAgICBjZWxsLT5zZXRDaGlsZE5lZWRz
TGF5b3V0KHRydWUsIGZhbHNlKTsKLSAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgIAogICAg
ICAgICAgICAgY2VsbC0+bGF5b3V0SWZOZWVkZWQoKTsKICAgICAgICAgICAgIAogICAgICAgICAg
ICAgaWYgKHZpZXcoKS0+bGF5b3V0U3RhdGUoKS0+bV9wYWdlSGVpZ2h0ICYmIGNlbGwtPmhlaWdo
dCgpICE9IHJIZWlnaHQpCiAgICAgICAgICAgICAgICAgY2VsbC0+c2V0SGVpZ2h0KHJIZWlnaHQp
OyAvLyBGSVhNRTogUGFnaW5hdGlvbiBtaWdodCBoYXZlIG1hZGUgdXMgY2hhbmdlIHNpemUuICBG
b3Igbm93IGp1c3Qgc2hyaW5rIG9yIGdyb3cgdGhlIGNlbGwgdG8gZml0IHdpdGhvdXQgZG9pbmcg
YSByZWxheW91dC4KLQotICAgICAgICAgICAgaWYgKCh0ZSAhPSBvbGRUZSB8fCBiZSA+IG9sZEJl
KSAmJiAhdGFibGUoKS0+c2VsZk5lZWRzTGF5b3V0KCkgJiYgY2VsbC0+Y2hlY2tGb3JSZXBhaW50
RHVyaW5nTGF5b3V0KCkpCi0gICAgICAgICAgICAgICAgY2VsbC0+cmVwYWludCgpOwotCi0gICAg
ICAgICAgICAvLyBJZiB0aGUgY2VsbCBtb3ZlZCwgd2UgaGF2ZSB0byByZXBhaW50IGl0IGFzIHdl
bGwgYXMgYW55IGZsb2F0aW5nL3Bvc2l0aW9uZWQKLSAgICAgICAgICAgIC8vIGRlc2NlbmRhbnRz
LiAgQW4gZXhjZXB0aW9uIGlzIGlmIHdlIG5lZWQgYSBsYXlvdXQuICBJbiB0aGlzIGNhc2UsIHdl
IGtub3cgd2UncmUgZ29pbmcgdG8KLSAgICAgICAgICAgIC8vIHJlcGFpbnQgb3Vyc2VsdmVzIChh
bmQgdGhlIGNlbGwpIGFueXdheS4KLSAgICAgICAgICAgIGlmICghdGFibGUoKS0+c2VsZk5lZWRz
TGF5b3V0KCkgJiYgY2VsbC0+Y2hlY2tGb3JSZXBhaW50RHVyaW5nTGF5b3V0KCkpCi0gICAgICAg
ICAgICAgICAgY2VsbC0+cmVwYWludER1cmluZ0xheW91dElmTW92ZWQob2xkQ2VsbFJlY3QpOwor
ICAgICAgICAKKyAgICAgICAgICAgIEludFNpemUgY2hpbGRPZmZzZXQoY2VsbC0+eCgpIC0gb2xk
Q2VsbFJlY3QueCgpLCBjZWxsLT55KCkgLSBvbGRDZWxsUmVjdC55KCkpOworICAgICAgICAgICAg
aWYgKGNoaWxkT2Zmc2V0LndpZHRoKCkgfHwgY2hpbGRPZmZzZXQuaGVpZ2h0KCkpIHsKKyAgICAg
ICAgICAgICAgICB2aWV3KCktPmFkZExheW91dERlbHRhKGNoaWxkT2Zmc2V0KTsKKworICAgICAg
ICAgICAgICAgIC8vIElmIHRoZSBjaGlsZCBtb3ZlZCwgd2UgaGF2ZSB0byByZXBhaW50IGl0IGFz
IHdlbGwgYXMgYW55IGZsb2F0aW5nL3Bvc2l0aW9uZWQKKyAgICAgICAgICAgICAgICAvLyBkZXNj
ZW5kYW50cy4gIEFuIGV4Y2VwdGlvbiBpcyBpZiB3ZSBuZWVkIGEgbGF5b3V0LiAgSW4gdGhpcyBj
YXNlLCB3ZSBrbm93IHdlJ3JlIGdvaW5nIHRvCisgICAgICAgICAgICAgICAgLy8gcmVwYWludCBv
dXJzZWx2ZXMgKGFuZCB0aGUgY2hpbGQpIGFueXdheS4KKyAgICAgICAgICAgICAgICBpZiAoIXRh
YmxlKCktPnNlbGZOZWVkc0xheW91dCgpICYmIGNlbGwtPmNoZWNrRm9yUmVwYWludER1cmluZ0xh
eW91dCgpKQorICAgICAgICAgICAgICAgICAgICBjZWxsLT5yZXBhaW50RHVyaW5nTGF5b3V0SWZN
b3ZlZChvbGRDZWxsUmVjdCk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68128</attachid>
            <date>2010-09-20 13:18:26 -0700</date>
            <delta_ts>2010-09-20 13:20:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>3762</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2Nzg3MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTAtMDktMjAgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NjExNCwgdHdvIHRhYmxlcyByZXBh
aW50IHRlc3RzIGZhaWxpbmcgb24gYm90cy4KKworICAgICAgICBQYXRjaCBsYXlvdXRSb3dzIHRv
IGFwcGx5IHRoZSBsYXlvdXQgZGVsdGEgd2hlbiBzZXR0aW5nIGEgbmV3IGNlbGwgbG9jYXRpb24g
cHJpb3IgdG8gbGF5aW5nIG91dCB0aGUgY2VsbC4KKyAgICAgICAgCisgICAgICAgIFRoZSBsYXlv
dXQgZGVsdGEgaXMgdGhlbiByZW1vdmVkIGFmdGVyIGxheW91dCBoYXMgaGFwcGVuZWQgd2hlbiB0
aGUgcmVwYWludCBjaGVjayBpcyBkb25lLiAgVGhpcyBjaGFuZ2UKKyAgICAgICAgbWFrZXMgY2Vs
bCBsYXlvdXQgbWF0Y2ggYmxvY2sgY2hpbGQgbGF5b3V0LCBhbmQgbm93IHRoZSBjZWxscyBoYXZl
IHRoZSBjb3JyZWN0IG5ldyBsb2NhdGlvbiB1cCBmcm9udAorICAgICAgICB3aGVuIGxheWluZyBv
dXQgKGEgbmVjZXNzaXR5IGZvciBwYWdpbmF0aW9uKS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUYWJsZVNlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGFibGVTZWN0
aW9uOjpsYXlvdXRSb3dzKToKKwogMjAxMC0wOS0yMCAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FA
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAJKHJldmlzaW9uIDY3ODYwKQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjA0LDMxICs2MDQsMzQgQEAgaW50IFJlbmRlclRhYmxlU2VjdGlvbjo6bGF5b3V0Um93cyhp
bnQgdAogICAgICAgICAgICAgY2VsbC0+c2V0SW50cmluc2ljUGFkZGluZ0JvdHRvbShiZSk7CiAg
ICAgICAgICAgICAKICAgICAgICAgICAgIEludFJlY3Qgb2xkQ2VsbFJlY3QoY2VsbC0+eCgpLCBj
ZWxsLT55KCkgLCBjZWxsLT53aWR0aCgpLCBjZWxsLT5oZWlnaHQoKSk7Ci0gICAgICAgIAorICAg
ICAgICAgICAgCiAgICAgICAgICAgICBpZiAoc3R5bGUoKS0+ZGlyZWN0aW9uKCkgPT0gUlRMKQog
ICAgICAgICAgICAgICAgIGNlbGwtPnNldExvY2F0aW9uKHRhYmxlKCktPmNvbHVtblBvc2l0aW9u
cygpW25FZmZDb2xzXSAtIHRhYmxlKCktPmNvbHVtblBvc2l0aW9ucygpW3RhYmxlKCktPmNvbFRv
RWZmQ29sKGNlbGwtPmNvbCgpICsgY2VsbC0+Y29sU3BhbigpKV0gKyBoc3BhY2luZywgbV9yb3dQ
b3NbcmluZHhdKTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBjZWxsLT5zZXRM
b2NhdGlvbih0YWJsZSgpLT5jb2x1bW5Qb3NpdGlvbnMoKVtjXSArIGhzcGFjaW5nLCBtX3Jvd1Bv
c1tyaW5keF0pOworICAgICAgICAgICAgdmlldygpLT5hZGRMYXlvdXREZWx0YShJbnRTaXplKG9s
ZENlbGxSZWN0LngoKSAtIGNlbGwtPngoKSwgb2xkQ2VsbFJlY3QueSgpIC0gY2VsbC0+eSgpKSk7
CiAKICAgICAgICAgICAgIGlmICh0ZSAhPSBvbGRUZSB8fCBiZSAhPSBvbGRCZSkKICAgICAgICAg
ICAgICAgICBjZWxsLT5zZXROZWVkc0xheW91dCh0cnVlLCBmYWxzZSk7CiAgICAgICAgICAgICAK
ICAgICAgICAgICAgIGlmICghY2VsbC0+bmVlZHNMYXlvdXQoKSAmJiB2aWV3KCktPmxheW91dFN0
YXRlKCktPm1fcGFnZUhlaWdodCAmJiB2aWV3KCktPmxheW91dFN0YXRlKCktPnBhZ2VZKGNlbGwt
PnkoKSkgIT0gY2VsbC0+cGFnZVkoKSkKICAgICAgICAgICAgICAgICBjZWxsLT5zZXRDaGlsZE5l
ZWRzTGF5b3V0KHRydWUsIGZhbHNlKTsKLSAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgIAog
ICAgICAgICAgICAgY2VsbC0+bGF5b3V0SWZOZWVkZWQoKTsKICAgICAgICAgICAgIAogICAgICAg
ICAgICAgaWYgKHZpZXcoKS0+bGF5b3V0U3RhdGUoKS0+bV9wYWdlSGVpZ2h0ICYmIGNlbGwtPmhl
aWdodCgpICE9IHJIZWlnaHQpCiAgICAgICAgICAgICAgICAgY2VsbC0+c2V0SGVpZ2h0KHJIZWln
aHQpOyAvLyBGSVhNRTogUGFnaW5hdGlvbiBtaWdodCBoYXZlIG1hZGUgdXMgY2hhbmdlIHNpemUu
ICBGb3Igbm93IGp1c3Qgc2hyaW5rIG9yIGdyb3cgdGhlIGNlbGwgdG8gZml0IHdpdGhvdXQgZG9p
bmcgYSByZWxheW91dC4KLQotICAgICAgICAgICAgaWYgKCh0ZSAhPSBvbGRUZSB8fCBiZSA+IG9s
ZEJlKSAmJiAhdGFibGUoKS0+c2VsZk5lZWRzTGF5b3V0KCkgJiYgY2VsbC0+Y2hlY2tGb3JSZXBh
aW50RHVyaW5nTGF5b3V0KCkpCi0gICAgICAgICAgICAgICAgY2VsbC0+cmVwYWludCgpOwotCi0g
ICAgICAgICAgICAvLyBJZiB0aGUgY2VsbCBtb3ZlZCwgd2UgaGF2ZSB0byByZXBhaW50IGl0IGFz
IHdlbGwgYXMgYW55IGZsb2F0aW5nL3Bvc2l0aW9uZWQKLSAgICAgICAgICAgIC8vIGRlc2NlbmRh
bnRzLiAgQW4gZXhjZXB0aW9uIGlzIGlmIHdlIG5lZWQgYSBsYXlvdXQuICBJbiB0aGlzIGNhc2Us
IHdlIGtub3cgd2UncmUgZ29pbmcgdG8KLSAgICAgICAgICAgIC8vIHJlcGFpbnQgb3Vyc2VsdmVz
IChhbmQgdGhlIGNlbGwpIGFueXdheS4KLSAgICAgICAgICAgIGlmICghdGFibGUoKS0+c2VsZk5l
ZWRzTGF5b3V0KCkgJiYgY2VsbC0+Y2hlY2tGb3JSZXBhaW50RHVyaW5nTGF5b3V0KCkpCi0gICAg
ICAgICAgICAgICAgY2VsbC0+cmVwYWludER1cmluZ0xheW91dElmTW92ZWQob2xkQ2VsbFJlY3Qp
OworICAgICAgICAKKyAgICAgICAgICAgIEludFNpemUgY2hpbGRPZmZzZXQoY2VsbC0+eCgpIC0g
b2xkQ2VsbFJlY3QueCgpLCBjZWxsLT55KCkgLSBvbGRDZWxsUmVjdC55KCkpOworICAgICAgICAg
ICAgaWYgKGNoaWxkT2Zmc2V0LndpZHRoKCkgfHwgY2hpbGRPZmZzZXQuaGVpZ2h0KCkpIHsKKyAg
ICAgICAgICAgICAgICB2aWV3KCktPmFkZExheW91dERlbHRhKGNoaWxkT2Zmc2V0KTsKKworICAg
ICAgICAgICAgICAgIC8vIElmIHRoZSBjaGlsZCBtb3ZlZCwgd2UgaGF2ZSB0byByZXBhaW50IGl0
IGFzIHdlbGwgYXMgYW55IGZsb2F0aW5nL3Bvc2l0aW9uZWQKKyAgICAgICAgICAgICAgICAvLyBk
ZXNjZW5kYW50cy4gIEFuIGV4Y2VwdGlvbiBpcyBpZiB3ZSBuZWVkIGEgbGF5b3V0LiAgSW4gdGhp
cyBjYXNlLCB3ZSBrbm93IHdlJ3JlIGdvaW5nIHRvCisgICAgICAgICAgICAgICAgLy8gcmVwYWlu
dCBvdXJzZWx2ZXMgKGFuZCB0aGUgY2hpbGQpIGFueXdheS4KKyAgICAgICAgICAgICAgICBpZiAo
IXRhYmxlKCktPnNlbGZOZWVkc0xheW91dCgpICYmIGNlbGwtPmNoZWNrRm9yUmVwYWludER1cmlu
Z0xheW91dCgpKQorICAgICAgICAgICAgICAgICAgICBjZWxsLT5yZXBhaW50RHVyaW5nTGF5b3V0
SWZNb3ZlZChvbGRDZWxsUmVjdCk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAK
</data>
<flag name="review"
          id="57589"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>