<?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>48496</bug_id>
          
          <creation_ts>2010-10-27 20:10:22 -0700</creation_ts>
          <short_desc>Add WebKit2 API for window feature getter/setters</short_desc>
          <delta_ts>2010-10-28 11:22:04 -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>WebKit2</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="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>300830</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-10-27 20:10:22 -0700</bug_when>
    <thetext>Add WebKit2 API for window feature getter/setters</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300834</commentid>
    <comment_count>1</comment_count>
      <attachid>72133</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-10-27 20:12:00 -0700</bug_when>
    <thetext>Created attachment 72133
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300835</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-10-27 20:13:32 -0700</bug_when>
    <thetext>Attachment 72133 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKit2/UIProcess/API/C/WKPage.h:172:  Extra space between WKPageGetToolbarsAreVisibleCallback and toolbarsAreVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:173:  Extra space between WKPageSetToolbarsAreVisibleCallback and setToolbarsAreVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:174:  Extra space between WKPageGetMenuBarIsVisibleCallback and menuBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:175:  Extra space between WKPageSetMenuBarIsVisibleCallback and setMenuBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:176:  Extra space between WKPageGetStatusBarIsVisibleCallback and statusBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:177:  Extra space between WKPageSetStatusBarIsVisibleCallback and setStatusBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:178:  Extra space between WKPageGetIsResizableCallback and isResizable  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:179:  Extra space between WKPageSetIsResizableCallback and setIsResizable  [whitespace/declaration] [3]
Total errors found: 8 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300838</commentid>
    <comment_count>3</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-10-27 20:22:03 -0700</bug_when>
    <thetext>Attachment 72133 did not build on qt:
Build output: http://queues.webkit.org/results/4838052</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301032</commentid>
    <comment_count>4</comment_count>
      <attachid>72133</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2010-10-28 06:33:32 -0700</bug_when>
    <thetext>Comment on attachment 72133
Patch

There&apos;s a mixture of naming styles here, e.g.:

WebChromeClient: setMenubarVisible/menubarVisible
WebUIClient: setMenuBarIsVisible/menuBarIsVisible
MiniBrowser/TestController: setMenuBarVisible/getMenuBarVisible

The AppKit conventions that we generally try to match are none of the above -- those conventions would specify: setMenuBarVisible (or setMenubarVisible) / isMenuBarVisible (or isMenubarVisible).

I don&apos;t care whether the B in Menubar is capitalized or not, but we should try to match existing style in WebKit if there are precedents. Of the other styles, I would pick the AppKit style, but if there&apos;s some reason to use a different style then we should use it consistently.

The content all seems fine but I think we need to get the names more consistent so I&apos;m giving this an r-.


 In WebChromeClient you&apos; MiniBrowser you&apos;re using getMenuBarVisible/setMenuBarVisible (etc.) whereas in WebUIClient you&apos;re using getMenuBarIsVisible/setMenuBarIsVisible</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301171</commentid>
    <comment_count>5</comment_count>
      <attachid>72210</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-10-28 11:07:02 -0700</bug_when>
    <thetext>Created attachment 72210
Updated.

This fixes the tools to match the names in WebKit2, but does not change ChromeClient, as that is WebCore internal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301174</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-10-28 11:09:40 -0700</bug_when>
    <thetext>Attachment 72210 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKit2/UIProcess/API/C/WKPage.h:172:  Extra space between WKPageGetToolbarsAreVisibleCallback and toolbarsAreVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:173:  Extra space between WKPageSetToolbarsAreVisibleCallback and setToolbarsAreVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:174:  Extra space between WKPageGetMenuBarIsVisibleCallback and menuBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:175:  Extra space between WKPageSetMenuBarIsVisibleCallback and setMenuBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:176:  Extra space between WKPageGetStatusBarIsVisibleCallback and statusBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:177:  Extra space between WKPageSetStatusBarIsVisibleCallback and setStatusBarIsVisible  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:178:  Extra space between WKPageGetIsResizableCallback and isResizable  [whitespace/declaration] [3]
WebKit2/UIProcess/API/C/WKPage.h:179:  Extra space between WKPageSetIsResizableCallback and setIsResizable  [whitespace/declaration] [3]
Total errors found: 8 in 13 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301176</commentid>
    <comment_count>7</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-10-28 11:22:04 -0700</bug_when>
    <thetext>Landed in r70790.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72133</attachid>
            <date>2010-10-27 20:12:00 -0700</date>
            <delta_ts>2010-10-28 11:07:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>change.diff</filename>
            <type>text/plain</type>
            <size>19284</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3MDczOSkKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDMgQEAKKzIwMTAtMTAtMjcgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgV2Vi
S2l0MiBBUEkgZm9yIHdpbmRvdyBmZWF0dXJlIGdldHRlci9zZXR0ZXJzCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84NTkwMzczPgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDg0OTYKKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpzZXRUb29sYmFyc0FyZVZpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmdldFRvb2xiYXJzQXJlVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2VQcm94eTo6c2V0TWVudUJhcklzVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6Z2V0TWVudUJhcklzVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c2V0U3RhdHVzQmFySXNWaXNpYmxlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjpnZXRTdGF0dXNCYXJJc1Zpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnNldElzUmVzaXphYmxlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpnZXRJ
c1Jlc2l6YWJsZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlVJQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVUlDbGllbnQ6OnRvb2xi
YXJzQXJlVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRUb29sYmFy
c0FyZVZpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJVSUNsaWVudDo6bWVudUJhcklzVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRNZW51QmFySXNWaXNpYmxl
KToKKyAgICAgICAgKFdlYktpdDo6V2ViVUlDbGllbnQ6OnN0YXR1c0JhcklzVmlzaWJsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRTdGF0dXNCYXJJc1Zpc2libGUpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVSUNsaWVudDo6aXNSZXNpemFibGUpOgorICAgICAgICAoV2ViS2l0
OjpXZWJVSUNsaWVudDo6c2V0SXNSZXNpemFibGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJV
SUNsaWVudC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFy
c1Zpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2V0U3RhdHVzYmFyVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJs
ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUpOgorICAgICAgICBQ
bHVtYiB0aHJvdWdoIHRoZSBjYWxscy4KKwogMjAxMC0xMC0yNyAgTWFyayBSb3dlICA8bXJvd2VA
YXBwbGUuY29tPgogCiAgICAgICAgIEJ1aWxkIGZpeC4KSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NDEsNiArOTQxLDQ2IEBAIHZvaWQgV2ViUGFn
ZVByb3h5Ojptb3VzZURpZE1vdmVPdmVyRWxlbWUKICAgICBtX3VpQ2xpZW50Lm1vdXNlRGlkTW92
ZU92ZXJFbGVtZW50KHRoaXMsIG1vZGlmaWVycywgdXNlckRhdGEuZ2V0KCkpOwogfQogCit2b2lk
IFdlYlBhZ2VQcm94eTo6c2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJvb2wgdG9vbGJhcnNBcmVWaXNp
YmxlKQoreworICAgIG1fdWlDbGllbnQuc2V0VG9vbGJhcnNBcmVWaXNpYmxlKHRoaXMsIHRvb2xi
YXJzQXJlVmlzaWJsZSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRUb29sYmFyc0FyZVZp
c2libGUoYm9vbCYgdG9vbGJhcnNBcmVWaXNpYmxlKQoreworICAgIHRvb2xiYXJzQXJlVmlzaWJs
ZSA9IG1fdWlDbGllbnQudG9vbGJhcnNBcmVWaXNpYmxlKHRoaXMpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6c2V0TWVudUJhcklzVmlzaWJsZShib29sIG1lbnVCYXJJc1Zpc2libGUpCit7Cisg
ICAgbV91aUNsaWVudC5zZXRNZW51QmFySXNWaXNpYmxlKHRoaXMsIG1lbnVCYXJJc1Zpc2libGUp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0TWVudUJhcklzVmlzaWJsZShib29sJiBtZW51
QmFySXNWaXNpYmxlKQoreworICAgIG1lbnVCYXJJc1Zpc2libGUgPSBtX3VpQ2xpZW50Lm1lbnVC
YXJJc1Zpc2libGUodGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTdGF0dXNCYXJJ
c1Zpc2libGUoYm9vbCBzdGF0dXNCYXJJc1Zpc2libGUpCit7CisgICAgbV91aUNsaWVudC5zZXRT
dGF0dXNCYXJJc1Zpc2libGUodGhpcywgc3RhdHVzQmFySXNWaXNpYmxlKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmdldFN0YXR1c0JhcklzVmlzaWJsZShib29sJiBzdGF0dXNCYXJJc1Zpc2li
bGUpCit7CisgICAgc3RhdHVzQmFySXNWaXNpYmxlID0gbV91aUNsaWVudC5zdGF0dXNCYXJJc1Zp
c2libGUodGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRJc1Jlc2l6YWJsZShib29s
IGlzUmVzaXphYmxlKQoreworICAgIG1fdWlDbGllbnQuc2V0SXNSZXNpemFibGUodGhpcywgaXNS
ZXNpemFibGUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0SXNSZXNpemFibGUoYm9vbCYg
aXNSZXNpemFibGUpCit7CisgICAgaXNSZXNpemFibGUgPSBtX3VpQ2xpZW50LmlzUmVzaXphYmxl
KHRoaXMpOworfQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0V2luZG93RnJhbWUoY29uc3QgRmxv
YXRSZWN0JiBuZXdXaW5kb3dGcmFtZSkKIHsKICAgICBtX3VpQ2xpZW50LnNldFdpbmRvd0ZyYW1l
KHRoaXMsIG1fcGFnZUNsaWVudC0+Y29udmVydFRvRGV2aWNlU3BhY2UobmV3V2luZG93RnJhbWUp
KTsKSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCShyZXZpc2lvbiA3MDczNykKKysrIFdl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNzUsNiAr
Mjc1LDE0IEBAIHByaXZhdGU6CiAgICAgdm9pZCBydW5KYXZhU2NyaXB0UHJvbXB0KHVpbnQ2NF90
IGZyYW1lSUQsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIFN0cmluZyYgcmVzdWx0KTsK
ICAgICB2b2lkIHNldFN0YXR1c1RleHQoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBtb3VzZURp
ZE1vdmVPdmVyRWxlbWVudCh1aW50MzJfdCBtb2RpZmllcnMsIENvcmVJUEM6OkFyZ3VtZW50RGVj
b2RlciopOworICAgIHZvaWQgc2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJvb2wgdG9vbGJhcnNBcmVW
aXNpYmxlKTsKKyAgICB2b2lkIGdldFRvb2xiYXJzQXJlVmlzaWJsZShib29sJiB0b29sYmFyc0Fy
ZVZpc2libGUpOworICAgIHZvaWQgc2V0TWVudUJhcklzVmlzaWJsZShib29sIG1lbnVCYXJJc1Zp
c2libGUpOworICAgIHZvaWQgZ2V0TWVudUJhcklzVmlzaWJsZShib29sJiBtZW51QmFySXNWaXNp
YmxlKTsKKyAgICB2b2lkIHNldFN0YXR1c0JhcklzVmlzaWJsZShib29sIHN0YXR1c0JhcklzVmlz
aWJsZSk7CisgICAgdm9pZCBnZXRTdGF0dXNCYXJJc1Zpc2libGUoYm9vbCYgc3RhdHVzQmFySXNW
aXNpYmxlKTsKKyAgICB2b2lkIHNldElzUmVzaXphYmxlKGJvb2wgaXNSZXNpemFibGUpOworICAg
IHZvaWQgZ2V0SXNSZXNpemFibGUoYm9vbCYgaXNSZXNpemFibGUpOwogICAgIHZvaWQgc2V0V2lu
ZG93RnJhbWUoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0Jik7CiAgICAgdm9pZCBnZXRXaW5kb3dG
cmFtZShXZWJDb3JlOjpGbG9hdFJlY3QmKTsKICAgICB2b2lkIGNhblJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbChib29sJiBjYW5SdW4pOwpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbgkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM2LDYgKzM2LDE0
IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgU2V0U3RhdHVzVGV4dChXVEY6OlN0
cmluZyBzdGF0dXNUZXh0KQogICAgIFNldFRvb2xUaXAoV1RGOjpTdHJpbmcgdG9vbFRpcCkKICAg
ICBUYWtlRm9jdXMoYm9vbCBkaXJlY3Rpb24pCisgICAgU2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJv
b2wgdG9vbGJhcnNBcmVWaXNpYmxlKQorICAgIEdldFRvb2xiYXJzQXJlVmlzaWJsZSgpIC0+IChi
b29sIHRvb2xiYXJzQXJlVmlzaWJsZSkKKyAgICBTZXRNZW51QmFySXNWaXNpYmxlKGJvb2wgbWVu
dUJhcklzVmlzaWJsZSk7CisgICAgR2V0TWVudUJhcklzVmlzaWJsZSgpIC0+IChib29sIG1lbnVC
YXJJc1Zpc2libGUpOworICAgIFNldFN0YXR1c0JhcklzVmlzaWJsZShib29sIHN0YXR1c0Jhcklz
VmlzaWJsZSkKKyAgICBHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSAtPiAoYm9vbCBzdGF0dXNCYXJJ
c1Zpc2libGUpCisgICAgU2V0SXNSZXNpemFibGUoYm9vbCBpc1Jlc2l6YWJsZSkKKyAgICBHZXRJ
c1Jlc2l6YWJsZSgpIC0+IChib29sIGlzUmVzaXphYmxlKQogICAgIFNldFdpbmRvd0ZyYW1lKFdl
YkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dGcmFtZSkKICAgICBHZXRXaW5kb3dGcmFtZSgpIC0+IChX
ZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93RnJhbWUpCiAgICAgQ2FuUnVuQmVmb3JlVW5sb2FkQ29u
ZmlybVBhbmVsKCkgLT4gKGJvb2wgY2FuUnVuKQpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
VUlDbGllbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50
LmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJVSUNsaWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OCw2ICsxNDgsNjIgQEAgdm9pZCBXZWJVSUNsaWVudDo6
ZGlkTm90SGFuZGxlS2V5RXZlbnQoVwogICAgIG1fcGFnZVVJQ2xpZW50LmRpZE5vdEhhbmRsZUtl
eUV2ZW50KHRvQVBJKHBhZ2UpLCBldmVudC5uYXRpdmVFdmVudCgpLCBtX3BhZ2VVSUNsaWVudC5j
bGllbnRJbmZvKTsKIH0KIAorYm9vbCBXZWJVSUNsaWVudDo6dG9vbGJhcnNBcmVWaXNpYmxlKFdl
YlBhZ2VQcm94eSogcGFnZSkKK3sKKyAgICBpZiAoIW1fcGFnZVVJQ2xpZW50LnRvb2xiYXJzQXJl
VmlzaWJsZSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fcGFnZVVJQ2xpZW50
LnRvb2xiYXJzQXJlVmlzaWJsZSh0b0FQSShwYWdlKSwgbV9wYWdlVUlDbGllbnQuY2xpZW50SW5m
byk7CisKK30KK3ZvaWQgV2ViVUlDbGllbnQ6OnNldFRvb2xiYXJzQXJlVmlzaWJsZShXZWJQYWdl
UHJveHkqIHBhZ2UsIGJvb2wgdmlzaWJsZSkKK3sKKyAgICBpZiAoIW1fcGFnZVVJQ2xpZW50LnNl
dFRvb2xiYXJzQXJlVmlzaWJsZSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fcGFnZVVJQ2xpZW50
LnNldFRvb2xiYXJzQXJlVmlzaWJsZSh0b0FQSShwYWdlKSwgdmlzaWJsZSwgbV9wYWdlVUlDbGll
bnQuY2xpZW50SW5mbyk7Cit9CisKK2Jvb2wgV2ViVUlDbGllbnQ6Om1lbnVCYXJJc1Zpc2libGUo
V2ViUGFnZVByb3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQubWVudUJhcklz
VmlzaWJsZSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fcGFnZVVJQ2xpZW50
Lm1lbnVCYXJJc1Zpc2libGUodG9BUEkocGFnZSksIG1fcGFnZVVJQ2xpZW50LmNsaWVudEluZm8p
OworfQorCit2b2lkIFdlYlVJQ2xpZW50OjpzZXRNZW51QmFySXNWaXNpYmxlKFdlYlBhZ2VQcm94
eSogcGFnZSwgYm9vbCB2aXNpYmxlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc2V0TWVu
dUJhcklzVmlzaWJsZSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fcGFnZVVJQ2xpZW50LnNldE1l
bnVCYXJJc1Zpc2libGUodG9BUEkocGFnZSksIHZpc2libGUsIG1fcGFnZVVJQ2xpZW50LmNsaWVu
dEluZm8pOworfQorCitib29sIFdlYlVJQ2xpZW50OjpzdGF0dXNCYXJJc1Zpc2libGUoV2ViUGFn
ZVByb3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc3RhdHVzQmFySXNWaXNp
YmxlKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9wYWdlVUlDbGllbnQuc3Rh
dHVzQmFySXNWaXNpYmxlKHRvQVBJKHBhZ2UpLCBtX3BhZ2VVSUNsaWVudC5jbGllbnRJbmZvKTsK
K30KKwordm9pZCBXZWJVSUNsaWVudDo6c2V0U3RhdHVzQmFySXNWaXNpYmxlKFdlYlBhZ2VQcm94
eSogcGFnZSwgYm9vbCB2aXNpYmxlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc2V0U3Rh
dHVzQmFySXNWaXNpYmxlKQorICAgICAgICByZXR1cm47CisgICAgbV9wYWdlVUlDbGllbnQuc2V0
U3RhdHVzQmFySXNWaXNpYmxlKHRvQVBJKHBhZ2UpLCB2aXNpYmxlLCBtX3BhZ2VVSUNsaWVudC5j
bGllbnRJbmZvKTsKK30KKworYm9vbCBXZWJVSUNsaWVudDo6aXNSZXNpemFibGUoV2ViUGFnZVBy
b3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuaXNSZXNpemFibGUpCisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBtX3BhZ2VVSUNsaWVudC5pc1Jlc2l6YWJsZSh0
b0FQSShwYWdlKSwgbV9wYWdlVUlDbGllbnQuY2xpZW50SW5mbyk7Cit9CisKK3ZvaWQgV2ViVUlD
bGllbnQ6OnNldElzUmVzaXphYmxlKFdlYlBhZ2VQcm94eSogcGFnZSwgYm9vbCByZXNpemFibGUp
Cit7CisgICAgaWYgKCFtX3BhZ2VVSUNsaWVudC5zZXRJc1Jlc2l6YWJsZSkKKyAgICAgICAgcmV0
dXJuOworICAgIG1fcGFnZVVJQ2xpZW50LnNldElzUmVzaXphYmxlKHRvQVBJKHBhZ2UpLCByZXNp
emFibGUsIG1fcGFnZVVJQ2xpZW50LmNsaWVudEluZm8pOworfQorCiB2b2lkIFdlYlVJQ2xpZW50
OjpzZXRXaW5kb3dGcmFtZShXZWJQYWdlUHJveHkqIHBhZ2UsIGNvbnN0IEZsb2F0UmVjdCYgZnJh
bWUpCiB7CiAgICAgaWYgKCFtX3BhZ2VVSUNsaWVudC5zZXRXaW5kb3dGcmFtZSkKSW5kZXg6IFdl
YktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViVUlDbGllbnQuaAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vz
cy9XZWJVSUNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01OSw5ICs1OSwxNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRTdGF0dXNUZXh0KFdlYlBhZ2VQcm94eSosIGNvbnN0IFN0cmluZyYpOwog
ICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoV2ViUGFnZVByb3h5KiwgV2ViRXZlbnQ6
Ok1vZGlmaWVycywgQVBJT2JqZWN0Kik7CiAKLSAgICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQo
V2ViUGFnZVByb3h5KiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkZyYW1lUHJveHkqKTsK
ICAgICB2b2lkIGRpZE5vdEhhbmRsZUtleUV2ZW50KFdlYlBhZ2VQcm94eSosIGNvbnN0IE5hdGl2
ZVdlYktleWJvYXJkRXZlbnQmKTsKIAorICAgIGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKFdlYlBh
Z2VQcm94eSopOworICAgIHZvaWQgc2V0VG9vbGJhcnNBcmVWaXNpYmxlKFdlYlBhZ2VQcm94eSos
IGJvb2wpOworICAgIGJvb2wgbWVudUJhcklzVmlzaWJsZShXZWJQYWdlUHJveHkqKTsKKyAgICB2
b2lkIHNldE1lbnVCYXJJc1Zpc2libGUoV2ViUGFnZVByb3h5KiwgYm9vbCk7CisgICAgYm9vbCBz
dGF0dXNCYXJJc1Zpc2libGUoV2ViUGFnZVByb3h5Kik7CisgICAgdm9pZCBzZXRTdGF0dXNCYXJJ
c1Zpc2libGUoV2ViUGFnZVByb3h5KiwgYm9vbCk7CisgICAgYm9vbCBpc1Jlc2l6YWJsZShXZWJQ
YWdlUHJveHkqKTsKKyAgICB2b2lkIHNldElzUmVzaXphYmxlKFdlYlBhZ2VQcm94eSosIGJvb2wp
OworCiAgICAgdm9pZCBzZXRXaW5kb3dGcmFtZShXZWJQYWdlUHJveHkqLCBjb25zdCBXZWJDb3Jl
OjpGbG9hdFJlY3QmKTsKICAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93RnJhbWUoV2ViUGFn
ZVByb3h5Kik7CiAKSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCShyZXZpc2lvbiA3MDcz
NykKKysrIFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xNDIsNiArMTQyLDE0IEBAIHR5cGVkZWYgV0tTdHJpbmdSZWYgKCpXS1BhZ2VSdW5KYXZhU2Ny
aXAKIHR5cGVkZWYgdm9pZCAoKldLUGFnZVNldFN0YXR1c1RleHRDYWxsYmFjaykoV0tQYWdlUmVm
IHBhZ2UsIFdLU3RyaW5nUmVmIHRleHQsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRl
ZiB2b2lkICgqV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxsYmFjaykoV0tQYWdlUmVm
IHBhZ2UsIFdLRXZlbnRNb2RpZmllcnMgbW9kaWZpZXJzLCBXS1R5cGVSZWYgdXNlckRhdGEsIGNv
bnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tQYWdlRGlkTm90SGFuZGxl
S2V5RXZlbnRDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdLTmF0aXZlRXZlbnRQdHIgZXZlbnQs
IGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRlZiBib29sICgqV0tQYWdlR2V0VG9vbGJh
cnNBcmVWaXNpYmxlQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBjb25zdCB2b2lkICpjbGllbnRJ
bmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLUGFnZVNldFRvb2xiYXJzQXJlVmlzaWJsZUNhbGxiYWNr
KShXS1BhZ2VSZWYgcGFnZSwgYm9vbCB0b29sYmFyc1Zpc2libGUsIGNvbnN0IHZvaWQgKmNsaWVu
dEluZm8pOwordHlwZWRlZiBib29sICgqV0tQYWdlR2V0TWVudUJhcklzVmlzaWJsZUNhbGxiYWNr
KShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQg
KCpXS1BhZ2VTZXRNZW51QmFySXNWaXNpYmxlQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBib29s
IG1lbnVCYXJWaXNpYmxlLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5cGVkZWYgYm9vbCAo
KldLUGFnZUdldFN0YXR1c0JhcklzVmlzaWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29u
c3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRTdGF0dXNCYXJJ
c1Zpc2libGVDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgc3RhdHVzQmFyVmlzaWJsZSwg
Y29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIGJvb2wgKCpXS1BhZ2VHZXRJc1Jlc2l6
YWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0
eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRJc1Jlc2l6YWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFn
ZSwgYm9vbCByZXNpemFibGUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiBXS1Jl
Y3QgKCpXS1BhZ2VHZXRXaW5kb3dGcmFtZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qg
dm9pZCAqY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRXaW5kb3dGcmFtZUNh
bGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tSZWN0IGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJ
bmZvKTsKIHR5cGVkZWYgYm9vbCAoKldLUGFnZVJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbENh
bGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tGcmFtZVJlZiBm
cmFtZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CkBAIC0xNjEsNiArMTY5LDE0IEBAIHN0cnVj
dCBXS1BhZ2VVSUNsaWVudCB7CiAgICAgV0tQYWdlU2V0U3RhdHVzVGV4dENhbGxiYWNrICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTdGF0dXNUZXh0OwogICAgIFdL
UGFnZU1vdXNlRGlkTW92ZU92ZXJFbGVtZW50Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQ7CiAgICAgV0tQYWdlRGlkTm90SGFuZGxl
S2V5RXZlbnRDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWROb3RI
YW5kbGVLZXlFdmVudDsKKyAgICBXS1BhZ2VHZXRUb29sYmFyc0FyZVZpc2libGVDYWxsYmFjayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvb2xiYXJzQXJlVmlzaWJsZTsKKyAgICBX
S1BhZ2VTZXRUb29sYmFyc0FyZVZpc2libGVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNldFRvb2xiYXJzQXJlVmlzaWJsZTsKKyAgICBXS1BhZ2VHZXRNZW51QmFySXNW
aXNpYmxlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbnVCYXJJ
c1Zpc2libGU7CisgICAgV0tQYWdlU2V0TWVudUJhcklzVmlzaWJsZUNhbGxiYWNrICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRNZW51QmFySXNWaXNpYmxlOworICAgIFdLUGFn
ZUdldFN0YXR1c0JhcklzVmlzaWJsZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3RhdHVzQmFySXNWaXNpYmxlOworICAgIFdLUGFnZVNldFN0YXR1c0JhcklzVmlzaWJs
ZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U3RhdHVzQmFySXNW
aXNpYmxlOworICAgIFdLUGFnZUdldElzUmVzaXphYmxlQ2FsbGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaXNSZXNpemFibGU7CisgICAgV0tQYWdlU2V0SXNSZXNp
emFibGVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRJ
c1Jlc2l6YWJsZTsKICAgICBXS1BhZ2VHZXRXaW5kb3dGcmFtZUNhbGxiYWNrICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFdpbmRvd0ZyYW1lOwogICAgIFdLUGFnZVNl
dFdpbmRvd0ZyYW1lQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2V0V2luZG93RnJhbWU7CiAgICAgV0tQYWdlUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVs
Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICBydW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWw7CkluZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTQ4LDI2ICsxNDgsMzYgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnJ1bk1vZGFsKCkKICAg
ICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbGJh
cnNWaXNpYmxlKGJvb2wpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbGJhcnNWaXNpYmxl
KGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAg
V2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNldFRvb2xiYXJzQXJlVmlzaWJsZSh0b29sYmFyc0FyZVZpc2libGUpLCBtX3BhZ2Ut
PnBhZ2VJRCgpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlzaWJsZSgp
CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICBib29sIHRv
b2xiYXJzQXJlVmlzaWJsZSA9IHRydWU7CisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaGFyZWQoKS5j
b25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJz
QXJlVmlzaWJsZSgpLAorICAgICAgICAgICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9v
bGJhcnNBcmVWaXNpYmxlOjpSZXBseSh0b29sYmFyc0FyZVZpc2libGUpLAorICAgICAgICAgICAg
bV9wYWdlLT5wYWdlSUQoKSwgQ29yZUlQQzo6Q29ubmVjdGlvbjo6Tm9UaW1lb3V0KSkKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gdG9vbGJhcnNBcmVWaXNpYmxlOwogfQogCi12
b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0U3RhdHVzYmFyVmlzaWJsZShib29sKQordm9pZCBXZWJD
aHJvbWVDbGllbnQ6OnNldFN0YXR1c2JhclZpc2libGUoYm9vbCBzdGF0dXNCYXJJc1Zpc2libGUp
CiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25u
ZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0U3RhdHVzQmFySXNWaXNp
YmxlKHN0YXR1c0JhcklzVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpOwogfQogCiBib29sIFdl
YkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJsZSgpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQo
KTsKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICBib29sIHN0YXR1c0JhcklzVmlzaWJsZSA9IHRydWU7
CisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJsZSgpLAorICAgICAgICAg
ICAgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0U3RhdHVzQmFySXNWaXNpYmxlOjpSZXBseShz
dGF0dXNCYXJJc1Zpc2libGUpLAorICAgICAgICAgICAgbV9wYWdlLT5wYWdlSUQoKSwgQ29yZUlQ
Qzo6Q29ubmVjdGlvbjo6Tm9UaW1lb3V0KSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBy
ZXR1cm4gc3RhdHVzQmFySXNWaXNpYmxlOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0
U2Nyb2xsYmFyc1Zpc2libGUoYm9vbCkKQEAgLTE4MSwyMCArMTkxLDI1IEBAIGJvb2wgV2ViQ2hy
b21lQ2xpZW50OjpzY3JvbGxiYXJzVmlzaWJsZSgKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9p
ZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1lbnViYXJWaXNpYmxlKGJvb2wpCit2b2lkIFdlYkNocm9t
ZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUoYm9vbCBtZW51QmFyVmlzaWJsZSkKIHsKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRNZW51QmFySXNWaXNpYmxlKG1lbnVCYXJW
aXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpt
ZW51YmFyVmlzaWJsZSgpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gdHJ1
ZTsKKyAgICBib29sIG1lbnVCYXJJc1Zpc2libGUgPSB0cnVlOworICAgIGlmICghV2ViUHJvY2Vz
czo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpHZXRNZW51QmFySXNWaXNpYmxlKCksCisgICAgICAgICAgICBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpHZXRNZW51QmFySXNWaXNpYmxlOjpSZXBseShtZW51QmFySXNWaXNpYmxlKSwKKyAgICAg
ICAgICAgIG1fcGFnZS0+cGFnZUlEKCksIENvcmVJUEM6OkNvbm5lY3Rpb246Ok5vVGltZW91dCkp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIG1lbnVCYXJJc1Zpc2libGU7CiB9
CiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCkKK3ZvaWQgV2ViQ2hy
b21lQ2xpZW50OjpzZXRSZXNpemFibGUoYm9vbCByZXNpemFibGUpCiB7Ci0gICAgbm90SW1wbGVt
ZW50ZWQoKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0SXNSZXNpemFibGUocmVzaXphYmxlKSwgbV9wYWdlLT5w
YWdlSUQoKSk7CiB9CiAKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjphZGRNZXNzYWdlVG9Db25zb2xl
KE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgdW5zaWduZWQgaW50IGxpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQp
CkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nCShyZXZpc2lvbiA3MDczOSkKKysrIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEwLTEwLTI3ICBTYW0gV2VpbmlnICA8c2Ft
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIFdlYktpdDIgQVBJIGZvciB3aW5kb3cgZmVhdHVyZSBnZXR0ZXIvc2V0dGVycwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vODU5MDM3Mz4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ4NDk2CisKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9t
YWMvQnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubToKKyAgICAgICAgKC1bQnJvd3NlcldpbmRvd0Nv
bnRyb2xsZXIgYXdha2VGcm9tTmliXSk6CisgICAgICAgICogTWluaUJyb3dzZXIvd2luL0Jyb3dz
ZXJWaWV3LmNwcDoKKyAgICAgICAgKEJyb3dzZXJWaWV3OjpjcmVhdGUpOgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpjcmVhdGVP
dGhlclBhZ2UpOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6aW5pdGlhbGl6ZSk6CisK
IDIwMTAtMTAtMjcgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IE9qYW4gVmFmYWkuCkluZGV4OiBXZWJLaXRUb29scy9NaW5pQnJvd3Nlci9tYWMv
QnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9NaW5p
QnJvd3Nlci9tYWMvQnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubQkocmV2aXNpb24gNzA3MzcpCisr
KyBXZWJLaXRUb29scy9NaW5pQnJvd3Nlci9tYWMvQnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubQko
d29ya2luZyBjb3B5KQpAQCAtNTg1LDYgKzU4NSwxNCBAQCAtICh2b2lkKWF3YWtlRnJvbU5pYgog
ICAgICAgICBzZXRTdGF0dXNUZXh0LAogICAgICAgICBtb3VzZURpZE1vdmVPdmVyRWxlbWVudCwK
ICAgICAgICAgMCwgICAgICAgICAgLyogZGlkTm90SGFuZGxlS2V5RXZlbnQgKi8KKyAgICAgICAg
MCwgICAgICAgICAgLyogZ2V0VG9vbGJhcnNWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAg
IC8qIHNldFRvb2xiYXJzVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBnZXRNZW51
QmFyVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBzZXRNZW51QmFyVmlzaWJsZSAq
LworICAgICAgICAwLCAgICAgICAgICAvKiBnZXRTdGF0dXNCYXJWaXNpYmxlICovCisgICAgICAg
IDAsICAgICAgICAgIC8qIHNldFN0YXR1c0JhclZpc2libGUgKi8KKyAgICAgICAgMCwgICAgICAg
ICAgLyogZ2V0SXNSZXNpemFibGUgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogc2V0SXNSZXNp
emFibGUgKi8KICAgICAgICAgZ2V0V2luZG93RnJhbWUsCiAgICAgICAgIHNldFdpbmRvd0ZyYW1l
LAogICAgICAgICBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwsCkluZGV4OiBXZWJLaXRUb29s
cy9NaW5pQnJvd3Nlci93aW4vQnJvd3NlclZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRv
b2xzL01pbmlCcm93c2VyL3dpbi9Ccm93c2VyVmlldy5jcHAJKHJldmlzaW9uIDcwNzM3KQorKysg
V2ViS2l0VG9vbHMvTWluaUJyb3dzZXIvd2luL0Jyb3dzZXJWaWV3LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTA1LDcgKzEwNSwyMCBAQCB2b2lkIEJyb3dzZXJWaWV3OjpjcmVhdGUoUkVDVCB3ZWJW
aWV3UmVjCiAgICAgICAgIHJ1bkphdmFTY3JpcHRQcm9tcHQsCiAgICAgICAgIHNldFN0YXR1c1Rl
eHQsCiAgICAgICAgIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50LAotICAgICAgICAwICAgICAgICAg
ICAgICAgLyogZGlkTm90SGFuZGxlS2V5RXZlbnQgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyog
ZGlkTm90SGFuZGxlS2V5RXZlbnQgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogZ2V0VG9vbGJh
cnNWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAgIC8qIHNldFRvb2xiYXJzVmlzaWJsZSAq
LworICAgICAgICAwLCAgICAgICAgICAvKiBnZXRNZW51QmFyVmlzaWJsZSAqLworICAgICAgICAw
LCAgICAgICAgICAvKiBzZXRNZW51QmFyVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAv
KiBnZXRTdGF0dXNCYXJWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAgIC8qIHNldFN0YXR1
c0JhclZpc2libGUgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogZ2V0SXNSZXNpemFibGUgKi8K
KyAgICAgICAgMCwgICAgICAgICAgLyogc2V0SXNSZXNpemFibGUgKi8KKyAgICAgICAgMCwgICAg
ICAgICAgLyogZ2V0V2luZG93RnJhbWUgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogc2V0V2lu
ZG93RnJhbWUgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogcnVuQmVmb3JlVW5sb2FkQ29uZmly
bVBhbmVsICovCisgICAgICAgIDAsICAgICAgICAgIC8qIGRpZERyYXcgKi8KKyAgICAgICAgMCAg
ICAgICAgICAgLyogcGFnZURpZFNjcm9sbCAqLwogICAgIH07CiAKICAgICBXS1BhZ2VTZXRQYWdl
VUlDbGllbnQoV0tWaWV3R2V0UGFnZShtX3dlYlZpZXcpLCAmdWlDbGllbnQpOwpJbmRleDogV2Vi
S2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAJKHJldmlz
aW9uIDcwNzM3KQorKysgV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxl
ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNyw2ICsxMTcsMTQgQEAgc3RhdGljIFdLUGFnZVJl
ZiBjcmVhdGVPdGhlclBhZ2UoV0tQYWdlUgogICAgICAgICAwLCAvLyBzZXRTdGF0dXNUZXh0CiAg
ICAgICAgIDAsIC8vIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50CiAgICAgICAgIDAsIC8vIGRpZE5v
dEhhbmRsZUtleUV2ZW50CisgICAgICAgIDAsIC8vIGdldFRvb2xiYXJzVmlzaWJsZQorICAgICAg
ICAwLCAvLyBzZXRUb29sYmFyc1Zpc2libGUKKyAgICAgICAgMCwgLy8gZ2V0TWVudUJhclZpc2li
bGUKKyAgICAgICAgMCwgLy8gc2V0TWVudUJhclZpc2libGUKKyAgICAgICAgMCwgLy8gZ2V0U3Rh
dHVzQmFyVmlzaWJsZQorICAgICAgICAwLCAvLyBzZXRTdGF0dXNCYXJWaXNpYmxlCisgICAgICAg
IDAsIC8vIGdldElzUmVzaXphYmxlCisgICAgICAgIDAsIC8vIHNldElzUmVzaXphYmxlCiAgICAg
ICAgIGdldFdpbmRvd0ZyYW1lT3RoZXJQYWdlLAogICAgICAgICBzZXRXaW5kb3dGcmFtZU90aGVy
UGFnZSwKICAgICAgICAgMCwgLy8gcnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsCkBAIC0yMDIs
NiArMjEwLDE0IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OmluaXRpYWxpemUoaW50IGFyZ2MKICAg
ICAgICAgMCwgLy8gc2V0U3RhdHVzVGV4dAogICAgICAgICAwLCAvLyBtb3VzZURpZE1vdmVPdmVy
RWxlbWVudAogICAgICAgICAwLCAvLyBkaWROb3RIYW5kbGVLZXlFdmVudAorICAgICAgICAwLCAv
LyBnZXRUb29sYmFyc1Zpc2libGUKKyAgICAgICAgMCwgLy8gc2V0VG9vbGJhcnNWaXNpYmxlCisg
ICAgICAgIDAsIC8vIGdldE1lbnVCYXJWaXNpYmxlCisgICAgICAgIDAsIC8vIHNldE1lbnVCYXJW
aXNpYmxlCisgICAgICAgIDAsIC8vIGdldFN0YXR1c0JhclZpc2libGUKKyAgICAgICAgMCwgLy8g
c2V0U3RhdHVzQmFyVmlzaWJsZQorICAgICAgICAwLCAvLyBnZXRJc1Jlc2l6YWJsZQorICAgICAg
ICAwLCAvLyBzZXRJc1Jlc2l6YWJsZQogICAgICAgICBnZXRXaW5kb3dGcmFtZU1haW5QYWdlLAog
ICAgICAgICBzZXRXaW5kb3dGcmFtZU1haW5QYWdlLAogICAgICAgICAwLCAvLyBydW5CZWZvcmVV
bmxvYWRDb25maXJtUGFuZWwK
</data>
<flag name="review"
          id="62327"
          type_id="1"
          status="-"
          setter="sullivan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72210</attachid>
            <date>2010-10-28 11:07:02 -0700</date>
            <delta_ts>2010-10-28 11:08:27 -0700</delta_ts>
            <desc>Updated.</desc>
            <filename>change.diff</filename>
            <type>text/plain</type>
            <size>20109</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3MDczOSkKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDMgQEAKKzIwMTAtMTAtMjcgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgV2Vi
S2l0MiBBUEkgZm9yIHdpbmRvdyBmZWF0dXJlIGdldHRlci9zZXR0ZXJzCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84NTkwMzczPgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDg0OTYKKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpzZXRUb29sYmFyc0FyZVZpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmdldFRvb2xiYXJzQXJlVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2VQcm94eTo6c2V0TWVudUJhcklzVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6Z2V0TWVudUJhcklzVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c2V0U3RhdHVzQmFySXNWaXNpYmxlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVBy
b3h5OjpnZXRTdGF0dXNCYXJJc1Zpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnNldElzUmVzaXphYmxlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpnZXRJ
c1Jlc2l6YWJsZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlVJQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVUlDbGllbnQ6OnRvb2xi
YXJzQXJlVmlzaWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRUb29sYmFy
c0FyZVZpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJVSUNsaWVudDo6bWVudUJhcklzVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRNZW51QmFySXNWaXNpYmxl
KToKKyAgICAgICAgKFdlYktpdDo6V2ViVUlDbGllbnQ6OnN0YXR1c0JhcklzVmlzaWJsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50OjpzZXRTdGF0dXNCYXJJc1Zpc2libGUpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVSUNsaWVudDo6aXNSZXNpemFibGUpOgorICAgICAgICAoV2ViS2l0
OjpXZWJVSUNsaWVudDo6c2V0SXNSZXNpemFibGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJV
SUNsaWVudC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sYmFy
c1Zpc2libGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2V0U3RhdHVzYmFyVmlz
aWJsZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c3RhdHVzYmFyVmlzaWJs
ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2V0TWVudWJhclZpc2libGUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6Om1lbnViYXJWaXNpYmxlKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50OjpzZXRSZXNpemFibGUpOgorICAgICAgICBQ
bHVtYiB0aHJvdWdoIHRoZSBjYWxscy4KKwogMjAxMC0xMC0yNyAgTWFyayBSb3dlICA8bXJvd2VA
YXBwbGUuY29tPgogCiAgICAgICAgIEJ1aWxkIGZpeC4KSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NDEsNiArOTQxLDQ2IEBAIHZvaWQgV2ViUGFn
ZVByb3h5Ojptb3VzZURpZE1vdmVPdmVyRWxlbWUKICAgICBtX3VpQ2xpZW50Lm1vdXNlRGlkTW92
ZU92ZXJFbGVtZW50KHRoaXMsIG1vZGlmaWVycywgdXNlckRhdGEuZ2V0KCkpOwogfQogCit2b2lk
IFdlYlBhZ2VQcm94eTo6c2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJvb2wgdG9vbGJhcnNBcmVWaXNp
YmxlKQoreworICAgIG1fdWlDbGllbnQuc2V0VG9vbGJhcnNBcmVWaXNpYmxlKHRoaXMsIHRvb2xi
YXJzQXJlVmlzaWJsZSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRUb29sYmFyc0FyZVZp
c2libGUoYm9vbCYgdG9vbGJhcnNBcmVWaXNpYmxlKQoreworICAgIHRvb2xiYXJzQXJlVmlzaWJs
ZSA9IG1fdWlDbGllbnQudG9vbGJhcnNBcmVWaXNpYmxlKHRoaXMpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6c2V0TWVudUJhcklzVmlzaWJsZShib29sIG1lbnVCYXJJc1Zpc2libGUpCit7Cisg
ICAgbV91aUNsaWVudC5zZXRNZW51QmFySXNWaXNpYmxlKHRoaXMsIG1lbnVCYXJJc1Zpc2libGUp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0TWVudUJhcklzVmlzaWJsZShib29sJiBtZW51
QmFySXNWaXNpYmxlKQoreworICAgIG1lbnVCYXJJc1Zpc2libGUgPSBtX3VpQ2xpZW50Lm1lbnVC
YXJJc1Zpc2libGUodGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTdGF0dXNCYXJJ
c1Zpc2libGUoYm9vbCBzdGF0dXNCYXJJc1Zpc2libGUpCit7CisgICAgbV91aUNsaWVudC5zZXRT
dGF0dXNCYXJJc1Zpc2libGUodGhpcywgc3RhdHVzQmFySXNWaXNpYmxlKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmdldFN0YXR1c0JhcklzVmlzaWJsZShib29sJiBzdGF0dXNCYXJJc1Zpc2li
bGUpCit7CisgICAgc3RhdHVzQmFySXNWaXNpYmxlID0gbV91aUNsaWVudC5zdGF0dXNCYXJJc1Zp
c2libGUodGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRJc1Jlc2l6YWJsZShib29s
IGlzUmVzaXphYmxlKQoreworICAgIG1fdWlDbGllbnQuc2V0SXNSZXNpemFibGUodGhpcywgaXNS
ZXNpemFibGUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0SXNSZXNpemFibGUoYm9vbCYg
aXNSZXNpemFibGUpCit7CisgICAgaXNSZXNpemFibGUgPSBtX3VpQ2xpZW50LmlzUmVzaXphYmxl
KHRoaXMpOworfQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0V2luZG93RnJhbWUoY29uc3QgRmxv
YXRSZWN0JiBuZXdXaW5kb3dGcmFtZSkKIHsKICAgICBtX3VpQ2xpZW50LnNldFdpbmRvd0ZyYW1l
KHRoaXMsIG1fcGFnZUNsaWVudC0+Y29udmVydFRvRGV2aWNlU3BhY2UobmV3V2luZG93RnJhbWUp
KTsKSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCShyZXZpc2lvbiA3MDczNykKKysrIFdl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNzUsNiAr
Mjc1LDE0IEBAIHByaXZhdGU6CiAgICAgdm9pZCBydW5KYXZhU2NyaXB0UHJvbXB0KHVpbnQ2NF90
IGZyYW1lSUQsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIFN0cmluZyYgcmVzdWx0KTsK
ICAgICB2b2lkIHNldFN0YXR1c1RleHQoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBtb3VzZURp
ZE1vdmVPdmVyRWxlbWVudCh1aW50MzJfdCBtb2RpZmllcnMsIENvcmVJUEM6OkFyZ3VtZW50RGVj
b2RlciopOworICAgIHZvaWQgc2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJvb2wgdG9vbGJhcnNBcmVW
aXNpYmxlKTsKKyAgICB2b2lkIGdldFRvb2xiYXJzQXJlVmlzaWJsZShib29sJiB0b29sYmFyc0Fy
ZVZpc2libGUpOworICAgIHZvaWQgc2V0TWVudUJhcklzVmlzaWJsZShib29sIG1lbnVCYXJJc1Zp
c2libGUpOworICAgIHZvaWQgZ2V0TWVudUJhcklzVmlzaWJsZShib29sJiBtZW51QmFySXNWaXNp
YmxlKTsKKyAgICB2b2lkIHNldFN0YXR1c0JhcklzVmlzaWJsZShib29sIHN0YXR1c0JhcklzVmlz
aWJsZSk7CisgICAgdm9pZCBnZXRTdGF0dXNCYXJJc1Zpc2libGUoYm9vbCYgc3RhdHVzQmFySXNW
aXNpYmxlKTsKKyAgICB2b2lkIHNldElzUmVzaXphYmxlKGJvb2wgaXNSZXNpemFibGUpOworICAg
IHZvaWQgZ2V0SXNSZXNpemFibGUoYm9vbCYgaXNSZXNpemFibGUpOwogICAgIHZvaWQgc2V0V2lu
ZG93RnJhbWUoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0Jik7CiAgICAgdm9pZCBnZXRXaW5kb3dG
cmFtZShXZWJDb3JlOjpGbG9hdFJlY3QmKTsKICAgICB2b2lkIGNhblJ1bkJlZm9yZVVubG9hZENv
bmZpcm1QYW5lbChib29sJiBjYW5SdW4pOwpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbgkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM2LDYgKzM2LDE0
IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgU2V0U3RhdHVzVGV4dChXVEY6OlN0
cmluZyBzdGF0dXNUZXh0KQogICAgIFNldFRvb2xUaXAoV1RGOjpTdHJpbmcgdG9vbFRpcCkKICAg
ICBUYWtlRm9jdXMoYm9vbCBkaXJlY3Rpb24pCisgICAgU2V0VG9vbGJhcnNBcmVWaXNpYmxlKGJv
b2wgdG9vbGJhcnNBcmVWaXNpYmxlKQorICAgIEdldFRvb2xiYXJzQXJlVmlzaWJsZSgpIC0+IChi
b29sIHRvb2xiYXJzQXJlVmlzaWJsZSkKKyAgICBTZXRNZW51QmFySXNWaXNpYmxlKGJvb2wgbWVu
dUJhcklzVmlzaWJsZSk7CisgICAgR2V0TWVudUJhcklzVmlzaWJsZSgpIC0+IChib29sIG1lbnVC
YXJJc1Zpc2libGUpOworICAgIFNldFN0YXR1c0JhcklzVmlzaWJsZShib29sIHN0YXR1c0Jhcklz
VmlzaWJsZSkKKyAgICBHZXRTdGF0dXNCYXJJc1Zpc2libGUoKSAtPiAoYm9vbCBzdGF0dXNCYXJJ
c1Zpc2libGUpCisgICAgU2V0SXNSZXNpemFibGUoYm9vbCBpc1Jlc2l6YWJsZSkKKyAgICBHZXRJ
c1Jlc2l6YWJsZSgpIC0+IChib29sIGlzUmVzaXphYmxlKQogICAgIFNldFdpbmRvd0ZyYW1lKFdl
YkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dGcmFtZSkKICAgICBHZXRXaW5kb3dGcmFtZSgpIC0+IChX
ZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93RnJhbWUpCiAgICAgQ2FuUnVuQmVmb3JlVW5sb2FkQ29u
ZmlybVBhbmVsKCkgLT4gKGJvb2wgY2FuUnVuKQpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
VUlDbGllbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50
LmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJVSUNsaWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OCw2ICsxNDgsNjIgQEAgdm9pZCBXZWJVSUNsaWVudDo6
ZGlkTm90SGFuZGxlS2V5RXZlbnQoVwogICAgIG1fcGFnZVVJQ2xpZW50LmRpZE5vdEhhbmRsZUtl
eUV2ZW50KHRvQVBJKHBhZ2UpLCBldmVudC5uYXRpdmVFdmVudCgpLCBtX3BhZ2VVSUNsaWVudC5j
bGllbnRJbmZvKTsKIH0KIAorYm9vbCBXZWJVSUNsaWVudDo6dG9vbGJhcnNBcmVWaXNpYmxlKFdl
YlBhZ2VQcm94eSogcGFnZSkKK3sKKyAgICBpZiAoIW1fcGFnZVVJQ2xpZW50LnRvb2xiYXJzQXJl
VmlzaWJsZSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fcGFnZVVJQ2xpZW50
LnRvb2xiYXJzQXJlVmlzaWJsZSh0b0FQSShwYWdlKSwgbV9wYWdlVUlDbGllbnQuY2xpZW50SW5m
byk7CisKK30KK3ZvaWQgV2ViVUlDbGllbnQ6OnNldFRvb2xiYXJzQXJlVmlzaWJsZShXZWJQYWdl
UHJveHkqIHBhZ2UsIGJvb2wgdmlzaWJsZSkKK3sKKyAgICBpZiAoIW1fcGFnZVVJQ2xpZW50LnNl
dFRvb2xiYXJzQXJlVmlzaWJsZSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fcGFnZVVJQ2xpZW50
LnNldFRvb2xiYXJzQXJlVmlzaWJsZSh0b0FQSShwYWdlKSwgdmlzaWJsZSwgbV9wYWdlVUlDbGll
bnQuY2xpZW50SW5mbyk7Cit9CisKK2Jvb2wgV2ViVUlDbGllbnQ6Om1lbnVCYXJJc1Zpc2libGUo
V2ViUGFnZVByb3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQubWVudUJhcklz
VmlzaWJsZSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIG1fcGFnZVVJQ2xpZW50
Lm1lbnVCYXJJc1Zpc2libGUodG9BUEkocGFnZSksIG1fcGFnZVVJQ2xpZW50LmNsaWVudEluZm8p
OworfQorCit2b2lkIFdlYlVJQ2xpZW50OjpzZXRNZW51QmFySXNWaXNpYmxlKFdlYlBhZ2VQcm94
eSogcGFnZSwgYm9vbCB2aXNpYmxlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc2V0TWVu
dUJhcklzVmlzaWJsZSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fcGFnZVVJQ2xpZW50LnNldE1l
bnVCYXJJc1Zpc2libGUodG9BUEkocGFnZSksIHZpc2libGUsIG1fcGFnZVVJQ2xpZW50LmNsaWVu
dEluZm8pOworfQorCitib29sIFdlYlVJQ2xpZW50OjpzdGF0dXNCYXJJc1Zpc2libGUoV2ViUGFn
ZVByb3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc3RhdHVzQmFySXNWaXNp
YmxlKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbV9wYWdlVUlDbGllbnQuc3Rh
dHVzQmFySXNWaXNpYmxlKHRvQVBJKHBhZ2UpLCBtX3BhZ2VVSUNsaWVudC5jbGllbnRJbmZvKTsK
K30KKwordm9pZCBXZWJVSUNsaWVudDo6c2V0U3RhdHVzQmFySXNWaXNpYmxlKFdlYlBhZ2VQcm94
eSogcGFnZSwgYm9vbCB2aXNpYmxlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuc2V0U3Rh
dHVzQmFySXNWaXNpYmxlKQorICAgICAgICByZXR1cm47CisgICAgbV9wYWdlVUlDbGllbnQuc2V0
U3RhdHVzQmFySXNWaXNpYmxlKHRvQVBJKHBhZ2UpLCB2aXNpYmxlLCBtX3BhZ2VVSUNsaWVudC5j
bGllbnRJbmZvKTsKK30KKworYm9vbCBXZWJVSUNsaWVudDo6aXNSZXNpemFibGUoV2ViUGFnZVBy
b3h5KiBwYWdlKQoreworICAgIGlmICghbV9wYWdlVUlDbGllbnQuaXNSZXNpemFibGUpCisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBtX3BhZ2VVSUNsaWVudC5pc1Jlc2l6YWJsZSh0
b0FQSShwYWdlKSwgbV9wYWdlVUlDbGllbnQuY2xpZW50SW5mbyk7Cit9CisKK3ZvaWQgV2ViVUlD
bGllbnQ6OnNldElzUmVzaXphYmxlKFdlYlBhZ2VQcm94eSogcGFnZSwgYm9vbCByZXNpemFibGUp
Cit7CisgICAgaWYgKCFtX3BhZ2VVSUNsaWVudC5zZXRJc1Jlc2l6YWJsZSkKKyAgICAgICAgcmV0
dXJuOworICAgIG1fcGFnZVVJQ2xpZW50LnNldElzUmVzaXphYmxlKHRvQVBJKHBhZ2UpLCByZXNp
emFibGUsIG1fcGFnZVVJQ2xpZW50LmNsaWVudEluZm8pOworfQorCiB2b2lkIFdlYlVJQ2xpZW50
OjpzZXRXaW5kb3dGcmFtZShXZWJQYWdlUHJveHkqIHBhZ2UsIGNvbnN0IEZsb2F0UmVjdCYgZnJh
bWUpCiB7CiAgICAgaWYgKCFtX3BhZ2VVSUNsaWVudC5zZXRXaW5kb3dGcmFtZSkKSW5kZXg6IFdl
YktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViVUlDbGllbnQuaAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXQyL1VJUHJvY2Vz
cy9XZWJVSUNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01OSw5ICs1OSwxNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRTdGF0dXNUZXh0KFdlYlBhZ2VQcm94eSosIGNvbnN0IFN0cmluZyYpOwog
ICAgIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoV2ViUGFnZVByb3h5KiwgV2ViRXZlbnQ6
Ok1vZGlmaWVycywgQVBJT2JqZWN0Kik7CiAKLSAgICB2b2lkIGNvbnRlbnRzU2l6ZUNoYW5nZWQo
V2ViUGFnZVByb3h5KiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIFdlYkZyYW1lUHJveHkqKTsK
ICAgICB2b2lkIGRpZE5vdEhhbmRsZUtleUV2ZW50KFdlYlBhZ2VQcm94eSosIGNvbnN0IE5hdGl2
ZVdlYktleWJvYXJkRXZlbnQmKTsKIAorICAgIGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKFdlYlBh
Z2VQcm94eSopOworICAgIHZvaWQgc2V0VG9vbGJhcnNBcmVWaXNpYmxlKFdlYlBhZ2VQcm94eSos
IGJvb2wpOworICAgIGJvb2wgbWVudUJhcklzVmlzaWJsZShXZWJQYWdlUHJveHkqKTsKKyAgICB2
b2lkIHNldE1lbnVCYXJJc1Zpc2libGUoV2ViUGFnZVByb3h5KiwgYm9vbCk7CisgICAgYm9vbCBz
dGF0dXNCYXJJc1Zpc2libGUoV2ViUGFnZVByb3h5Kik7CisgICAgdm9pZCBzZXRTdGF0dXNCYXJJ
c1Zpc2libGUoV2ViUGFnZVByb3h5KiwgYm9vbCk7CisgICAgYm9vbCBpc1Jlc2l6YWJsZShXZWJQ
YWdlUHJveHkqKTsKKyAgICB2b2lkIHNldElzUmVzaXphYmxlKFdlYlBhZ2VQcm94eSosIGJvb2wp
OworCiAgICAgdm9pZCBzZXRXaW5kb3dGcmFtZShXZWJQYWdlUHJveHkqLCBjb25zdCBXZWJDb3Jl
OjpGbG9hdFJlY3QmKTsKICAgICBXZWJDb3JlOjpGbG9hdFJlY3Qgd2luZG93RnJhbWUoV2ViUGFn
ZVByb3h5Kik7CiAKSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCShyZXZpc2lvbiA3MDcz
NykKKysrIFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xNDIsNiArMTQyLDE0IEBAIHR5cGVkZWYgV0tTdHJpbmdSZWYgKCpXS1BhZ2VSdW5KYXZhU2Ny
aXAKIHR5cGVkZWYgdm9pZCAoKldLUGFnZVNldFN0YXR1c1RleHRDYWxsYmFjaykoV0tQYWdlUmVm
IHBhZ2UsIFdLU3RyaW5nUmVmIHRleHQsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRl
ZiB2b2lkICgqV0tQYWdlTW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRDYWxsYmFjaykoV0tQYWdlUmVm
IHBhZ2UsIFdLRXZlbnRNb2RpZmllcnMgbW9kaWZpZXJzLCBXS1R5cGVSZWYgdXNlckRhdGEsIGNv
bnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tQYWdlRGlkTm90SGFuZGxl
S2V5RXZlbnRDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIFdLTmF0aXZlRXZlbnRQdHIgZXZlbnQs
IGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRlZiBib29sICgqV0tQYWdlR2V0VG9vbGJh
cnNBcmVWaXNpYmxlQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBjb25zdCB2b2lkICpjbGllbnRJ
bmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLUGFnZVNldFRvb2xiYXJzQXJlVmlzaWJsZUNhbGxiYWNr
KShXS1BhZ2VSZWYgcGFnZSwgYm9vbCB0b29sYmFyc1Zpc2libGUsIGNvbnN0IHZvaWQgKmNsaWVu
dEluZm8pOwordHlwZWRlZiBib29sICgqV0tQYWdlR2V0TWVudUJhcklzVmlzaWJsZUNhbGxiYWNr
KShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQg
KCpXS1BhZ2VTZXRNZW51QmFySXNWaXNpYmxlQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBib29s
IG1lbnVCYXJWaXNpYmxlLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5cGVkZWYgYm9vbCAo
KldLUGFnZUdldFN0YXR1c0JhcklzVmlzaWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29u
c3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRTdGF0dXNCYXJJ
c1Zpc2libGVDYWxsYmFjaykoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgc3RhdHVzQmFyVmlzaWJsZSwg
Y29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIGJvb2wgKCpXS1BhZ2VHZXRJc1Jlc2l6
YWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0
eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRJc1Jlc2l6YWJsZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFn
ZSwgYm9vbCByZXNpemFibGUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiBXS1Jl
Y3QgKCpXS1BhZ2VHZXRXaW5kb3dGcmFtZUNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qg
dm9pZCAqY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS1BhZ2VTZXRXaW5kb3dGcmFtZUNh
bGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tSZWN0IGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJ
bmZvKTsKIHR5cGVkZWYgYm9vbCAoKldLUGFnZVJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbENh
bGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tGcmFtZVJlZiBm
cmFtZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CkBAIC0xNjEsNiArMTY5LDE0IEBAIHN0cnVj
dCBXS1BhZ2VVSUNsaWVudCB7CiAgICAgV0tQYWdlU2V0U3RhdHVzVGV4dENhbGxiYWNrICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTdGF0dXNUZXh0OwogICAgIFdL
UGFnZU1vdXNlRGlkTW92ZU92ZXJFbGVtZW50Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQ7CiAgICAgV0tQYWdlRGlkTm90SGFuZGxl
S2V5RXZlbnRDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWROb3RI
YW5kbGVLZXlFdmVudDsKKyAgICBXS1BhZ2VHZXRUb29sYmFyc0FyZVZpc2libGVDYWxsYmFjayAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvb2xiYXJzQXJlVmlzaWJsZTsKKyAgICBX
S1BhZ2VTZXRUb29sYmFyc0FyZVZpc2libGVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNldFRvb2xiYXJzQXJlVmlzaWJsZTsKKyAgICBXS1BhZ2VHZXRNZW51QmFySXNW
aXNpYmxlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbnVCYXJJ
c1Zpc2libGU7CisgICAgV0tQYWdlU2V0TWVudUJhcklzVmlzaWJsZUNhbGxiYWNrICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRNZW51QmFySXNWaXNpYmxlOworICAgIFdLUGFn
ZUdldFN0YXR1c0JhcklzVmlzaWJsZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3RhdHVzQmFySXNWaXNpYmxlOworICAgIFdLUGFnZVNldFN0YXR1c0JhcklzVmlzaWJs
ZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U3RhdHVzQmFySXNW
aXNpYmxlOworICAgIFdLUGFnZUdldElzUmVzaXphYmxlQ2FsbGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaXNSZXNpemFibGU7CisgICAgV0tQYWdlU2V0SXNSZXNp
emFibGVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRJ
c1Jlc2l6YWJsZTsKICAgICBXS1BhZ2VHZXRXaW5kb3dGcmFtZUNhbGxiYWNrICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFdpbmRvd0ZyYW1lOwogICAgIFdLUGFnZVNl
dFdpbmRvd0ZyYW1lQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2V0V2luZG93RnJhbWU7CiAgICAgV0tQYWdlUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVs
Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICBydW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWw7CkluZGV4OiBXZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdrcGFnZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3a3BhZ2UuY3BwCShyZXZpc2lvbiA3
MDczNykKKysrIFdlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2twYWdlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzE5LDYgKzMxOSwxNCBAQCBRV0tQYWdlOjpRV0tQYWdlKFdLUGFnZU5hbWVzcGFj
ZVJlZiBuYW1lCiAgICAgICAgIDAsICAvKiBzZXRTdGF0dXNUZXh0ICovCiAgICAgICAgIDAsICAv
KiBtb3VzZURpZE1vdmVPdmVyRWxlbWVudCAqLwogICAgICAgICAwLCAgLyogZGlkTm90SGFuZGxl
S2V5RXZlbnQgKi8KKyAgICAgICAgMCwgIC8qIHRvb2xiYXJzQXJlVmlzaWJsZSAqLworICAgICAg
ICAwLCAgLyogc2V0VG9vbGJhcnNBcmVWaXNpYmxlICovCisgICAgICAgIDAsICAvKiBtZW51QmFy
SXNWaXNpYmxlICovCisgICAgICAgIDAsICAvKiBzZXRNZW51QmFySXNWaXNpYmxlICovCisgICAg
ICAgIDAsICAvKiBzdGF0dXNCYXJJc1Zpc2libGUgKi8KKyAgICAgICAgMCwgIC8qIHNldFN0YXR1
c0JhcklzVmlzaWJsZSAqLworICAgICAgICAwLCAgLyogaXNSZXNpemFibGUgKi8KKyAgICAgICAg
MCwgIC8qIHNldElzUmVzaXphYmxlICovCiAgICAgICAgIDAsICAvKiBnZXRXaW5kb3dGcmFtZSAq
LwogICAgICAgICAwLCAgLyogc2V0V2luZG93RnJhbWUgKi8KICAgICAgICAgMCwgIC8qIHJ1bkJl
Zm9yZVVubG9hZENvbmZpcm1QYW5lbCAqLwpJbmRleDogV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAJKHJldmlzaW9uIDcwNzM3
KQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OCwyNiArMTQ4LDM2IEBAIHZvaWQgV2ViQ2hyb21lQ2xp
ZW50OjpydW5Nb2RhbCgpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnNldFRvb2xiYXJzVmlzaWJsZShib29sKQordm9pZCBXZWJDaHJvbWVDbGllbnQ6
OnNldFRvb2xiYXJzVmlzaWJsZShib29sIHRvb2xiYXJzQXJlVmlzaWJsZSkKIHsKLSAgICBub3RJ
bXBsZW1lbnRlZCgpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRUb29sYmFyc0FyZVZpc2libGUodG9vbGJhcnNB
cmVWaXNpYmxlKSwgbV9wYWdlLT5wYWdlSUQoKSk7CiB9CiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50
Ojp0b29sYmFyc1Zpc2libGUoKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJu
IHRydWU7CisgICAgYm9vbCB0b29sYmFyc0FyZVZpc2libGUgPSB0cnVlOworICAgIGlmICghV2Vi
UHJvY2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpHZXRUb29sYmFyc0FyZVZpc2libGUoKSwKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVwbHkodG9vbGJhcnNBcmVWaXNp
YmxlKSwKKyAgICAgICAgICAgIG1fcGFnZS0+cGFnZUlEKCksIENvcmVJUEM6OkNvbm5lY3Rpb246
Ok5vVGltZW91dCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIHRvb2xiYXJz
QXJlVmlzaWJsZTsKIH0KIAotdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldFN0YXR1c2JhclZpc2li
bGUoYm9vbCkKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRTdGF0dXNiYXJWaXNpYmxlKGJvb2wg
c3RhdHVzQmFySXNWaXNpYmxlKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgV2ViUHJv
Y2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldFN0YXR1c0JhcklzVmlzaWJsZShzdGF0dXNCYXJJc1Zpc2libGUpLCBtX3BhZ2UtPnBhZ2VJ
RCgpKTsKIH0KIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6OnN0YXR1c2JhclZpc2libGUoKQogewot
ICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIHRydWU7CisgICAgYm9vbCBzdGF0dXNC
YXJJc1Zpc2libGUgPSB0cnVlOworICAgIGlmICghV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVj
dGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJc1Zp
c2libGUoKSwKKyAgICAgICAgICAgIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFN0YXR1c0Jh
cklzVmlzaWJsZTo6UmVwbHkoc3RhdHVzQmFySXNWaXNpYmxlKSwKKyAgICAgICAgICAgIG1fcGFn
ZS0+cGFnZUlEKCksIENvcmVJUEM6OkNvbm5lY3Rpb246Ok5vVGltZW91dCkpCisgICAgICAgIHJl
dHVybiB0cnVlOworCisgICAgcmV0dXJuIHN0YXR1c0JhcklzVmlzaWJsZTsKIH0KIAogdm9pZCBX
ZWJDaHJvbWVDbGllbnQ6OnNldFNjcm9sbGJhcnNWaXNpYmxlKGJvb2wpCkBAIC0xODEsMjAgKzE5
MSwyNSBAQCBib29sIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsYmFyc1Zpc2libGUoCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRNZW51YmFyVmlzaWJsZShi
b29sKQordm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNldE1lbnViYXJWaXNpYmxlKGJvb2wgbWVudUJh
clZpc2libGUpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFy
ZWQoKS5jb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TWVudUJh
cklzVmlzaWJsZShtZW51QmFyVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpOwogfQogCiBib29s
IFdlYkNocm9tZUNsaWVudDo6bWVudWJhclZpc2libGUoKQogewotICAgIG5vdEltcGxlbWVudGVk
KCk7Ci0gICAgcmV0dXJuIHRydWU7CisgICAgYm9vbCBtZW51QmFySXNWaXNpYmxlID0gdHJ1ZTsK
KyAgICBpZiAoIVdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZSgpLAorICAgICAgICAgICAg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6UmVwbHkobWVudUJh
cklzVmlzaWJsZSksCisgICAgICAgICAgICBtX3BhZ2UtPnBhZ2VJRCgpLCBDb3JlSVBDOjpDb25u
ZWN0aW9uOjpOb1RpbWVvdXQpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBt
ZW51QmFySXNWaXNpYmxlOwogfQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0UmVzaXphYmxl
KGJvb2wpCit2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0UmVzaXphYmxlKGJvb2wgcmVzaXphYmxl
KQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29u
bmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzUmVzaXphYmxlKHJl
c2l6YWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpOwogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
YWRkTWVzc2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxl
dmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGludCBsaW5lTnVtYmVyLCBjb25z
dCBTdHJpbmcmIHNvdXJjZUlEKQpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNzA3MzkpCisrKyBXZWJLaXRU
b29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxMC0xMC0y
NyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBXZWJLaXQyIEFQSSBmb3Igd2luZG93IGZlYXR1
cmUgZ2V0dGVyL3NldHRlcnMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzg1OTAzNzM+CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00ODQ5NgorCisgICAg
ICAgICogTWluaUJyb3dzZXIvbWFjL0Jyb3dzZXJXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAg
ICgtW0Jyb3dzZXJXaW5kb3dDb250cm9sbGVyIGF3YWtlRnJvbU5pYl0pOgorICAgICAgICAqIE1p
bmlCcm93c2VyL3dpbi9Ccm93c2VyVmlldy5jcHA6CisgICAgICAgIChCcm93c2VyVmlldzo6Y3Jl
YXRlKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAg
ICAgICAgKFdUUjo6Y3JlYXRlT3RoZXJQYWdlKToKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xs
ZXI6OmluaXRpYWxpemUpOgorCiAyMDEwLTEwLTI3ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgpJbmRleDogV2ViS2l0VG9v
bHMvTWluaUJyb3dzZXIvbWFjL0Jyb3dzZXJXaW5kb3dDb250cm9sbGVyLm0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0VG9vbHMvTWluaUJyb3dzZXIvbWFjL0Jyb3dzZXJXaW5kb3dDb250cm9sbGVyLm0J
KHJldmlzaW9uIDcwNzM3KQorKysgV2ViS2l0VG9vbHMvTWluaUJyb3dzZXIvbWFjL0Jyb3dzZXJX
aW5kb3dDb250cm9sbGVyLm0JKHdvcmtpbmcgY29weSkKQEAgLTU4NSw2ICs1ODUsMTQgQEAgLSAo
dm9pZClhd2FrZUZyb21OaWIKICAgICAgICAgc2V0U3RhdHVzVGV4dCwKICAgICAgICAgbW91c2VE
aWRNb3ZlT3ZlckVsZW1lbnQsCiAgICAgICAgIDAsICAgICAgICAgIC8qIGRpZE5vdEhhbmRsZUtl
eUV2ZW50ICovCisgICAgICAgIDAsICAgICAgICAgIC8qIHRvb2xiYXJzQXJlVmlzaWJsZSAqLwor
ICAgICAgICAwLCAgICAgICAgICAvKiBzZXRUb29sYmFyc0FyZVZpc2libGUgKi8KKyAgICAgICAg
MCwgICAgICAgICAgLyogbWVudUJhcklzVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAv
KiBzZXRNZW51QmFySXNWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAgIC8qIHN0YXR1c0Jh
cklzVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBzZXRTdGF0dXNCYXJJc1Zpc2li
bGUgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyogaXNSZXNpemFibGUgKi8KKyAgICAgICAgMCwg
ICAgICAgICAgLyogc2V0SXNSZXNpemFibGUgKi8KICAgICAgICAgZ2V0V2luZG93RnJhbWUsCiAg
ICAgICAgIHNldFdpbmRvd0ZyYW1lLAogICAgICAgICBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFu
ZWwsCkluZGV4OiBXZWJLaXRUb29scy9NaW5pQnJvd3Nlci93aW4vQnJvd3NlclZpZXcuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL01pbmlCcm93c2VyL3dpbi9Ccm93c2VyVmlldy5jcHAJ
KHJldmlzaW9uIDcwNzM3KQorKysgV2ViS2l0VG9vbHMvTWluaUJyb3dzZXIvd2luL0Jyb3dzZXJW
aWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA1LDcgKzEwNSwyMCBAQCB2b2lkIEJyb3dzZXJW
aWV3OjpjcmVhdGUoUkVDVCB3ZWJWaWV3UmVjCiAgICAgICAgIHJ1bkphdmFTY3JpcHRQcm9tcHQs
CiAgICAgICAgIHNldFN0YXR1c1RleHQsCiAgICAgICAgIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50
LAotICAgICAgICAwICAgICAgICAgICAgICAgLyogZGlkTm90SGFuZGxlS2V5RXZlbnQgKi8KKyAg
ICAgICAgMCwgICAgICAgICAgLyogZGlkTm90SGFuZGxlS2V5RXZlbnQgKi8KKyAgICAgICAgMCwg
ICAgICAgICAgLyogdG9vbGJhcnNBcmVWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAgIC8q
IHNldFRvb2xiYXJzQXJlVmlzaWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBtZW51QmFy
SXNWaXNpYmxlICovCisgICAgICAgIDAsICAgICAgICAgIC8qIHNldE1lbnVCYXJJc1Zpc2libGUg
Ki8KKyAgICAgICAgMCwgICAgICAgICAgLyogc3RhdHVzQmFySXNWaXNpYmxlICovCisgICAgICAg
IDAsICAgICAgICAgIC8qIHNldFN0YXR1c0JhcklzVmlzaWJsZSAqLworICAgICAgICAwLCAgICAg
ICAgICAvKiBpc1Jlc2l6YWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBzZXRJc1Jlc2l6
YWJsZSAqLworICAgICAgICAwLCAgICAgICAgICAvKiBnZXRXaW5kb3dGcmFtZSAqLworICAgICAg
ICAwLCAgICAgICAgICAvKiBzZXRXaW5kb3dGcmFtZSAqLworICAgICAgICAwLCAgICAgICAgICAv
KiBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwgKi8KKyAgICAgICAgMCwgICAgICAgICAgLyog
ZGlkRHJhdyAqLworICAgICAgICAwICAgICAgICAgICAvKiBwYWdlRGlkU2Nyb2xsICovCiAgICAg
fTsKIAogICAgIFdLUGFnZVNldFBhZ2VVSUNsaWVudChXS1ZpZXdHZXRQYWdlKG1fd2ViVmlldyks
ICZ1aUNsaWVudCk7CkluZGV4OiBXZWJLaXRUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250
cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9XZWJLaXRUZXN0UnVubmVyL1Rl
c3RDb250cm9sbGVyLmNwcAkocmV2aXNpb24gNzA3MzcpCisrKyBXZWJLaXRUb29scy9XZWJLaXRU
ZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE3LDYgKzEx
NywxNCBAQCBzdGF0aWMgV0tQYWdlUmVmIGNyZWF0ZU90aGVyUGFnZShXS1BhZ2VSCiAgICAgICAg
IDAsIC8vIHNldFN0YXR1c1RleHQKICAgICAgICAgMCwgLy8gbW91c2VEaWRNb3ZlT3ZlckVsZW1l
bnQKICAgICAgICAgMCwgLy8gZGlkTm90SGFuZGxlS2V5RXZlbnQKKyAgICAgICAgMCwgLy8gdG9v
bGJhcnNBcmVWaXNpYmxlCisgICAgICAgIDAsIC8vIHNldFRvb2xiYXJzQXJlVmlzaWJsZQorICAg
ICAgICAwLCAvLyBtZW51QmFySXNWaXNpYmxlCisgICAgICAgIDAsIC8vIHNldE1lbnVCYXJJc1Zp
c2libGUKKyAgICAgICAgMCwgLy8gc3RhdHVzQmFySXNWaXNpYmxlCisgICAgICAgIDAsIC8vIHNl
dFN0YXR1c0JhcklzVmlzaWJsZQorICAgICAgICAwLCAvLyBpc1Jlc2l6YWJsZQorICAgICAgICAw
LCAvLyBzZXRJc1Jlc2l6YWJsZQogICAgICAgICBnZXRXaW5kb3dGcmFtZU90aGVyUGFnZSwKICAg
ICAgICAgc2V0V2luZG93RnJhbWVPdGhlclBhZ2UsCiAgICAgICAgIDAsIC8vIHJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbApAQCAtMjAyLDYgKzIxMCwxNCBAQCB2b2lkIFRlc3RDb250cm9sbGVy
Ojppbml0aWFsaXplKGludCBhcmdjCiAgICAgICAgIDAsIC8vIHNldFN0YXR1c1RleHQKICAgICAg
ICAgMCwgLy8gbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQKICAgICAgICAgMCwgLy8gZGlkTm90SGFu
ZGxlS2V5RXZlbnQKKyAgICAgICAgMCwgLy8gdG9vbGJhcnNBcmVWaXNpYmxlCisgICAgICAgIDAs
IC8vIHNldFRvb2xiYXJzQXJlVmlzaWJsZQorICAgICAgICAwLCAvLyBtZW51QmFySXNWaXNpYmxl
CisgICAgICAgIDAsIC8vIHNldE1lbnVCYXJJc1Zpc2libGUKKyAgICAgICAgMCwgLy8gc3RhdHVz
QmFySXNWaXNpYmxlCisgICAgICAgIDAsIC8vIHNldFN0YXR1c0JhcklzVmlzaWJsZQorICAgICAg
ICAwLCAvLyBpc1Jlc2l6YWJsZQorICAgICAgICAwLCAvLyBzZXRJc1Jlc2l6YWJsZQogICAgICAg
ICBnZXRXaW5kb3dGcmFtZU1haW5QYWdlLAogICAgICAgICBzZXRXaW5kb3dGcmFtZU1haW5QYWdl
LAogICAgICAgICAwLCAvLyBydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwK
</data>
<flag name="review"
          id="62420"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>