<?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>41073</bug_id>
          
          <creation_ts>2010-06-23 08:33:42 -0700</creation_ts>
          <short_desc>WebKit2: Flesh out more of the InjectedBundle client API</short_desc>
          <delta_ts>2010-06-23 09:07:06 -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>WebKit API</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="Sam Weinig">sam</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>241859</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-06-23 08:33:42 -0700</bug_when>
    <thetext>We should flesh out more of the InjectedBundle client APIs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241864</commentid>
    <comment_count>1</comment_count>
      <attachid>59518</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-06-23 08:36:05 -0700</bug_when>
    <thetext>Created attachment 59518
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241865</commentid>
    <comment_count>2</comment_count>
      <attachid>59518</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-06-23 08:38:00 -0700</bug_when>
    <thetext>Comment on attachment 59518
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241866</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-23 08:38:07 -0700</bug_when>
    <thetext>Attachment 59518 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.h:45:  Extra space between WKBundleWillDestroyPageCallback and willDestroyPage  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:50:  Extra space between WKBundlePageDidStartProvisionalLoadForFrameCallback and didStartProvisionalLoadForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:51:  Extra space between WKBundlePageDidReceiveServerRedirectForProvisionalLoadForFrameCallback and didReceiveServerRedirectForProvisionalLoadForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:52:  Extra space between WKBundlePageDidFailProvisionalLoadWithErrorForFrameCallback and didFailProvisionalLoadWithErrorForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:53:  Extra space between WKBundlePageDidCommitLoadForFrameCallback and didCommitLoadForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:54:  Extra space between WKBundlePageDidFinishLoadForFrameCallback and didFinishLoadForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:55:  Extra space between WKBundlePageDidFailLoadWithErrorForFrameCallback and didFailLoadWithErrorForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:56:  Extra space between WKBundlePageDidReceiveTitleForFrameCallback and didReceiveTitleForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:57:  Extra space between WKBundlePageDidClearWindowObjectForFrameCallback and didClearWindowObjectForFrame  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/InjectedBundlePageClient.h:33:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 10 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>241877</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-06-23 09:07:06 -0700</bug_when>
    <thetext>Landed in r61689.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59518</attachid>
            <date>2010-06-23 08:36:05 -0700</date>
            <delta_ts>2010-06-23 08:38:00 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>21475</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTY4NykKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzggQEAKKzIwMTAtMDYtMjMgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggZm9y
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTA3MworICAgICAgICBX
ZWJLaXQyOiBGbGVzaCBvdXQgbW9yZSBvZiB0aGUgSW5qZWN0ZWRCdW5kbGUgY2xpZW50IEFQSQor
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZS5oOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjp3aWxsRGVzdHJveVBhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUNsaWVudC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZUNsaWVudDo6ZGlkU3RhcnRQ
cm92aXNpb25hbExvYWRGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxl
UGFnZUNsaWVudDo6ZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9y
RnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VDbGllbnQ6OmRpZEZh
aWxQcm92aXNpb25hbExvYWRXaXRoRXJyb3JGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6Oklu
amVjdGVkQnVuZGxlUGFnZUNsaWVudDo6ZGlkQ29tbWl0TG9hZEZvckZyYW1lKToKKyAgICAgICAg
KFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yRnJhbWUp
OgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VDbGllbnQ6OmRpZEZhaWxMb2Fk
V2l0aEVycm9yRm9yRnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VD
bGllbnQ6OmRpZFJlY2VpdmVUaXRsZUZvckZyYW1lKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUNsaWVudC5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvbWFjL0luamVjdGVkQnVuZGxlTWFjLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6SW5qZWN0ZWRCdW5kbGU6OmxvYWQpOiBBZGQgc29tZSBlcnJvciBsb2dnaW5nIG9u
IGZhaWx1cmUgdG8gbG9hZCB0aGUgYnVuZGxlLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92
aXNpb25hbExvYWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRTdGFydFByb3Zpc2lvbmFsTG9hZCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVUaXRsZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZENvbW1pdExvYWQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsUHJvdmlzaW9uYWxM
b2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
RmFpbExvYWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGaW5pc2hMb2FkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmNsb3NlKToKKyAgICAgICAgKiBtYWMvV2Vi
S2l0Mi5leHA6CisKIDIwMTAtMDYtMjIgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0Mi9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCShy
ZXZpc2lvbiA2MTYyMSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1LDYgKzY1LDEyIEBAIHZvaWQgSW5q
ZWN0ZWRCdW5kbGU6OmRpZENyZWF0ZVBhZ2UoV2ViUGEKICAgICAgICAgbV9jbGllbnQuZGlkQ3Jl
YXRlUGFnZSh0b1JlZih0aGlzKSwgdG9SZWYocGFnZSksIG1fY2xpZW50LmNsaWVudEluZm8pOwog
fQogCit2b2lkIEluamVjdGVkQnVuZGxlOjp3aWxsRGVzdHJveVBhZ2UoV2ViUGFnZSogcGFnZSkK
K3sKKyAgICBpZiAobV9jbGllbnQud2lsbERlc3Ryb3lQYWdlKQorICAgICAgICBtX2NsaWVudC53
aWxsRGVzdHJveVBhZ2UodG9SZWYodGhpcyksIHRvUmVmKHBhZ2UpLCBtX2NsaWVudC5jbGllbnRJ
bmZvKTsKK30KKwogdm9pZCBJbmplY3RlZEJ1bmRsZTo6ZGlkUmVjaWV2ZU1lc3NhZ2UoY29uc3Qg
V2ViQ29yZTo6U3RyaW5nJiBtZXNzYWdlKQogewogICAgIGlmIChtX2NsaWVudC5kaWRSZWNpZXZl
TWVzc2FnZSkKSW5kZXg6IFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9JbmplY3RlZEJ1bmRsZS5oCShyZXZpc2lvbiA2MTYyMSkKKysrIFdlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw2
ICs1Nyw3IEBAIHB1YmxpYzoKIAogICAgIC8vIENhbGxiYWNrIGhvb2tzCiAgICAgdm9pZCBkaWRD
cmVhdGVQYWdlKFdlYlBhZ2UqKTsKKyAgICB2b2lkIHdpbGxEZXN0cm95UGFnZShXZWJQYWdlKik7
CiAgICAgdm9pZCBkaWRSZWNpZXZlTWVzc2FnZShjb25zdCBXZWJDb3JlOjpTdHJpbmcmKTsKIAog
cHJpdmF0ZToKSW5kZXg6IFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZVBhZ2VDbGllbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VDbGllbnQuY3BwCShyZXZpc2lvbiA2MTYy
MSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBh
Z2VDbGllbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05LDcgKzksMTEgQEAKIAogI2luY2x1ZGUg
IkluamVjdGVkQnVuZGxlUGFnZUNsaWVudC5oIgogCisjaW5jbHVkZSAiV0tBUElDYXN0LmgiCiAj
aW5jbHVkZSAiV0tCdW5kbGVBUElDYXN0LmgiCisjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVN0
cmluZy5oPgorCit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKQEAgLTI2LDYgKzMwLDQ4IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlQ2xpZW50Ojppbml0
aWFsaXoKICAgICAgICAgbWVtc2V0KCZtX2NsaWVudCwgMCwgc2l6ZW9mKG1fY2xpZW50KSk7CiB9
CiAKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlQ2xpZW50OjpkaWRTdGFydFByb3Zpc2lvbmFsTG9h
ZEZvckZyYW1lKFdlYlBhZ2UqIHBhZ2UsIFdlYkZyYW1lKiBmcmFtZSkKK3sKKyAgICBpZiAobV9j
bGllbnQuZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSkKKyAgICAgICAgbV9jbGllbnQu
ZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSh0b1JlZihwYWdlKSwgdG9SZWYoZnJhbWUp
LCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VDbGll
bnQ6OmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKFdl
YlBhZ2UqIHBhZ2UsIFdlYkZyYW1lKiBmcmFtZSkKK3sKKyAgICBpZiAobV9jbGllbnQuZGlkUmVj
ZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUpCisgICAgICAgIG1f
Y2xpZW50LmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1l
KHRvUmVmKHBhZ2UpLCB0b1JlZihmcmFtZSksIG1fY2xpZW50LmNsaWVudEluZm8pOworfQorCit2
b2lkIEluamVjdGVkQnVuZGxlUGFnZUNsaWVudDo6ZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhF
cnJvckZvckZyYW1lKFdlYlBhZ2UqIHBhZ2UsIFdlYkZyYW1lKiBmcmFtZSkKK3sKKyAgICBpZiAo
bV9jbGllbnQuZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhFcnJvckZvckZyYW1lKQorICAgICAg
ICBtX2NsaWVudC5kaWRGYWlsUHJvdmlzaW9uYWxMb2FkV2l0aEVycm9yRm9yRnJhbWUodG9SZWYo
cGFnZSksIHRvUmVmKGZyYW1lKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7Cit9CisKK3ZvaWQgSW5q
ZWN0ZWRCdW5kbGVQYWdlQ2xpZW50OjpkaWRDb21taXRMb2FkRm9yRnJhbWUoV2ViUGFnZSogcGFn
ZSwgV2ViRnJhbWUqIGZyYW1lKQoreworICAgIGlmIChtX2NsaWVudC5kaWRDb21taXRMb2FkRm9y
RnJhbWUpCisgICAgICAgIG1fY2xpZW50LmRpZENvbW1pdExvYWRGb3JGcmFtZSh0b1JlZihwYWdl
KSwgdG9SZWYoZnJhbWUpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwordm9pZCBJbmplY3Rl
ZEJ1bmRsZVBhZ2VDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JGcmFtZShXZWJQYWdlKiBwYWdlLCBX
ZWJGcmFtZSogZnJhbWUpCit7CisgICAgaWYgKG1fY2xpZW50LmRpZEZpbmlzaExvYWRGb3JGcmFt
ZSkKKyAgICAgICAgbV9jbGllbnQuZGlkRmluaXNoTG9hZEZvckZyYW1lKHRvUmVmKHBhZ2UpLCB0
b1JlZihmcmFtZSksIG1fY2xpZW50LmNsaWVudEluZm8pOworfQorCit2b2lkIEluamVjdGVkQnVu
ZGxlUGFnZUNsaWVudDo6ZGlkRmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZShXZWJQYWdlKiBwYWdl
LCBXZWJGcmFtZSogZnJhbWUpCit7CisgICAgaWYgKG1fY2xpZW50LmRpZEZhaWxMb2FkV2l0aEVy
cm9yRm9yRnJhbWUpCisgICAgICAgIG1fY2xpZW50LmRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJh
bWUodG9SZWYocGFnZSksIHRvUmVmKGZyYW1lKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7Cit9CisK
K3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlQ2xpZW50OjpkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZShX
ZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBXZWJGcmFtZSogZnJhbWUpCit7Cisg
ICAgaWYgKG1fY2xpZW50LmRpZFJlY2VpdmVUaXRsZUZvckZyYW1lKQorICAgICAgICBtX2NsaWVu
dC5kaWRSZWNlaXZlVGl0bGVGb3JGcmFtZSh0b1JlZihwYWdlKSwgdG9SZWYodGl0bGUuaW1wbCgp
KSwgdG9SZWYoZnJhbWUpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwogdm9pZCBJbmplY3Rl
ZEJ1bmRsZVBhZ2VDbGllbnQ6OmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUoV2ViUGFnZSog
cGFnZSwgV2ViRnJhbWUqIGZyYW1lLCBKU0NvbnRleHRSZWYgY3R4LCBKU09iamVjdFJlZiB3aW5k
b3cpCiB7CiAgICAgaWYgKG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUpCklu
ZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdl
Q2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlUGFnZUNsaWVudC5oCShyZXZpc2lvbiA2MTYyMSkKKysrIFdlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VDbGllbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjksNiArMjksMTAgQEAKICNpbmNsdWRlICJXS0J1bmRsZVBhZ2UuaCIK
ICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2UuaD4KIAorbmFtZXNwYWNlIFdlYkNvcmUg
eworICAgIGNsYXNzIFN0cmluZzsKK30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdl
YlBhZ2U7CkBAIC0zOSw2ICs0MywxMyBAQCBwdWJsaWM6CiAgICAgSW5qZWN0ZWRCdW5kbGVQYWdl
Q2xpZW50KCk7CiAgICAgdm9pZCBpbml0aWFsaXplKFdLQnVuZGxlUGFnZUNsaWVudCopOwogCisg
ICAgdm9pZCBkaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFt
ZSopOworICAgIHZvaWQgZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2Fk
Rm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CisgICAgdm9pZCBkaWRGYWlsUHJvdmlzaW9u
YWxMb2FkV2l0aEVycm9yRm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CisgICAgdm9pZCBk
aWRDb21taXRMb2FkRm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CisgICAgdm9pZCBkaWRG
aW5pc2hMb2FkRm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CisgICAgdm9pZCBkaWRGYWls
TG9hZFdpdGhFcnJvckZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFtZSopOworICAgIHZvaWQgZGlk
UmVjZWl2ZVRpdGxlRm9yRnJhbWUoV2ViUGFnZSosIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYsIFdl
YkZyYW1lKik7CiAgICAgdm9pZCBkaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lKFdlYlBhZ2Uq
LCBXZWJGcmFtZSosIEpTQ29udGV4dFJlZiwgSlNPYmplY3RSZWYpOwogCiBwcml2YXRlOgpJbmRl
eDogV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlLmgJKHJldmlzaW9uIDYxNjIxKQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTM1LDEyICszNSwxNCBAQCBl
eHRlcm4gIkMiIHsKIAogLy8gQ2xpZW50CiB0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZURpZENyZWF0
ZVBhZ2VDYWxsYmFjaykoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS0J1bmRsZVBhZ2VSZWYgcGFnZSwg
Y29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVdpbGxEZXN0
cm95UGFnZUNhbGxiYWNrKShXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZVJlZiBwYWdl
LCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLQnVuZGxlRGlkUmVj
aWV2ZU1lc3NhZ2VDYWxsYmFjaykoV0tCdW5kbGVSZWYgYnVuZGxlLCBXS1N0cmluZ1JlZiBtZXNz
YWdlLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKIAogc3RydWN0IFdLQnVuZGxlQ2xpZW50IHsK
ICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHZlcnNpb247CiAgICAgY29uc3Qgdm9pZCAqICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGllbnRJbmZvOwogICAg
IFdLQnVuZGxlRGlkQ3JlYXRlUGFnZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZGlkQ3JlYXRlUGFnZTsKKyAgICBXS0J1bmRsZVdpbGxEZXN0cm95UGFnZUNh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbGxEZXN0cm95UGFn
ZTsKICAgICBXS0J1bmRsZURpZFJlY2lldmVNZXNzYWdlQ2FsbGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGRpZFJlY2lldmVNZXNzYWdlOwogfTsKIHR5cGVkZWYgc3RydWN0
IFdLQnVuZGxlQ2xpZW50IFdLQnVuZGxlQ2xpZW50OwpJbmRleDogV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuaAkocmV2aXNp
b24gNjE2MjEpCisrKyBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVQYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTM1LDEyICszNSwyNiBAQCBleHRlcm4gIkMi
IHsKICNlbmRpZgogCiAvLyBDbGllbnQKLXR5cGVkZWYgdm9pZCAoKldLQnVuZGxlRGlkQ2xlYXJX
aW5kb3dPYmplY3RGb3JGcmFtZUNhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5k
bGVGcmFtZVJlZiBmcmFtZSwgSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgd2luZG93LCBj
b25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZFN0
YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWVDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2Us
IFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRl
ZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9u
YWxMb2FkRm9yRnJhbWVDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJh
bWVSZWYgZnJhbWUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRlZiB2b2lkICgqV0tC
dW5kbGVQYWdlRGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdpdGhFcnJvckZvckZyYW1lQ2FsbGJhY2sp
KFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lk
ICpjbGllbnRJbmZvKTsgLy8gRklYTUU6IEFkZCBXS0Vycm9yUmVmLgordHlwZWRlZiB2b2lkICgq
V0tCdW5kbGVQYWdlRGlkQ29tbWl0TG9hZEZvckZyYW1lQ2FsbGJhY2spKFdLQnVuZGxlUGFnZVJl
ZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsK
K3R5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZEZpbmlzaExvYWRGb3JGcmFtZUNhbGxiYWNr
KShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgY29uc3Qgdm9p
ZCAqY2xpZW50SW5mbyk7Cit0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWRGYWlsTG9hZFdp
dGhFcnJvckZvckZyYW1lQ2FsbGJhY2spKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZy
YW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsgLy8gRklYTUU6IEFkZCBXS0Vy
cm9yUmVmLgordHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkUmVjZWl2ZVRpdGxlRm9yRnJh
bWVDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIHRpdGxlLCBXS0J1
bmRsZUZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9p
ZCAoKldLQnVuZGxlUGFnZURpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVDYWxsYmFjaykoV0tC
dW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIEpTQ29udGV4dFJlZiBj
dHgsIEpTT2JqZWN0UmVmIHdpbmRvdywgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CiAKIHN0cnVj
dCBXS0J1bmRsZVBhZ2VDbGllbnQgewogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjsKICAgICBjb25z
dCB2b2lkICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNsaWVudEluZm87Ci0gICAgV0tCdW5kbGVEaWRDbGVhcldpbmRvd09iamVjdEZvckZy
YW1lQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICBkaWRDbGVhcldpbmRvd09iamVjdEZv
ckZyYW1lOworICAgIFdLQnVuZGxlUGFnZURpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWVD
YWxsYmFjayAgICAgICAgICAgICAgICAgZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZTsK
KyAgICBXS0J1bmRsZVBhZ2VEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWRGb3JGcmFtZUNhbGxiYWNrICAgIGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lv
bmFsTG9hZEZvckZyYW1lOworICAgIFdLQnVuZGxlUGFnZURpZEZhaWxQcm92aXNpb25hbExvYWRX
aXRoRXJyb3JGb3JGcmFtZUNhbGxiYWNrICAgICAgICAgZGlkRmFpbFByb3Zpc2lvbmFsTG9hZFdp
dGhFcnJvckZvckZyYW1lOworICAgIFdLQnVuZGxlUGFnZURpZENvbW1pdExvYWRGb3JGcmFtZUNh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlkQ29tbWl0TG9hZEZvckZyYW1lOwor
ICAgIFdLQnVuZGxlUGFnZURpZEZpbmlzaExvYWRGb3JGcmFtZUNhbGxiYWNrICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZGlkRmluaXNoTG9hZEZvckZyYW1lOworICAgIFdLQnVuZGxlUGFnZURp
ZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgZGlk
RmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZTsKKyAgICBXS0J1bmRsZVBhZ2VEaWRSZWNlaXZlVGl0
bGVGb3JGcmFtZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgIGRpZFJlY2VpdmVUaXRs
ZUZvckZyYW1lOworICAgIFdLQnVuZGxlUGFnZURpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVD
YWxsYmFjayAgICAgICAgICAgICAgICAgICAgZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZTsK
IH07CiB0eXBlZGVmIHN0cnVjdCBXS0J1bmRsZVBhZ2VDbGllbnQgV0tCdW5kbGVQYWdlQ2xpZW50
OwogCkluZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvbWFjL0luamVjdGVk
QnVuZGxlTWFjLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvbWFjL0luamVjdGVkQnVuZGxlTWFjLmNwcAkocmV2aXNpb24gNjE2MjEpCisrKyBXZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvbWFjL0luamVjdGVkQnVuZGxlTWFjLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzYsMjMgKzM2LDMzIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogYm9v
bCBJbmplY3RlZEJ1bmRsZTo6bG9hZCgpCiB7CiAgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBp
bmplY3RlZEJ1bmRsZVBhdGhTdHIoQWRvcHRDRiwgQ0ZTdHJpbmdDcmVhdGVXaXRoQ2hhcmFjdGVy
cygwLCByZWludGVycHJldF9jYXN0PGNvbnN0IFVuaUNoYXIqPihtX3BhdGguY2hhcmFjdGVycygp
KSwgbV9wYXRoLmxlbmd0aCgpKSk7Ci0gICAgaWYgKCFpbmplY3RlZEJ1bmRsZVBhdGhTdHIpCisg
ICAgaWYgKCFpbmplY3RlZEJ1bmRsZVBhdGhTdHIpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJJbmplY3RlZEJ1bmRsZTo6bG9hZCBmYWlsZWQgLSBDb3VsZCBub3QgY3JlYXRlIHRoZSBwYXRo
IHN0cmluZy5cbiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQogICAgIAogICAgIFJl
dGFpblB0cjxDRlVSTFJlZj4gYnVuZGxlVVJMKEFkb3B0Q0YsIENGVVJMQ3JlYXRlV2l0aEZpbGVT
eXN0ZW1QYXRoKDAsIGluamVjdGVkQnVuZGxlUGF0aFN0ci5nZXQoKSwga0NGVVJMUE9TSVhQYXRo
U3R5bGUsIGZhbHNlKSk7Ci0gICAgaWYgKCFidW5kbGVVUkwpCisgICAgaWYgKCFidW5kbGVVUkwp
IHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJJbmplY3RlZEJ1bmRsZTo6bG9hZCBmYWlsZWQg
LSBDb3VsZCBub3QgY3JlYXRlIHRoZSB1cmwgZnJvbSB0aGUgcGF0aCBzdHJpbmcuXG4iKTsKICAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KIAogICAgIG1fcGxhdGZvcm1CdW5kbGUgPSBDRkJ1
bmRsZUNyZWF0ZSgwLCBidW5kbGVVUkwuZ2V0KCkpOwotICAgIGlmICghbV9wbGF0Zm9ybUJ1bmRs
ZSkKKyAgICBpZiAoIW1fcGxhdGZvcm1CdW5kbGUpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJJbmplY3RlZEJ1bmRsZTo6bG9hZCBmYWlsZWQgLSBDb3VsZCBub3QgY3JlYXRlIHRoZSBidW5k
bGUuXG4iKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KICAgICAgICAgCi0gICAgaWYg
KCFDRkJ1bmRsZUxvYWRFeGVjdXRhYmxlKG1fcGxhdGZvcm1CdW5kbGUpKQorICAgIGlmICghQ0ZC
dW5kbGVMb2FkRXhlY3V0YWJsZShtX3BsYXRmb3JtQnVuZGxlKSkgeworICAgICAgICBmcHJpbnRm
KHN0ZGVyciwgIkluamVjdGVkQnVuZGxlOjpsb2FkIGZhaWxlZCAtIENvdWxkIG5vdCBsb2FkIHRo
ZSBleGVjdXRhYmxlIGZyb20gdGhlIGJ1bmRsZS5cbiIpOwogICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQogCiAgICAgV0tCdW5kbGVJbml0aWFsaXplRnVuY3Rpb25QdHIgaW5pdGlhbGl6ZUZ1
bmN0aW9uID0gcmVpbnRlcnByZXRfY2FzdDxXS0J1bmRsZUluaXRpYWxpemVGdW5jdGlvblB0cj4o
Q0ZCdW5kbGVHZXRGdW5jdGlvblBvaW50ZXJGb3JOYW1lKG1fcGxhdGZvcm1CdW5kbGUsIENGU1RS
KCJXS0J1bmRsZUluaXRpYWxpemUiKSkpOwotICAgIGlmICghaW5pdGlhbGl6ZUZ1bmN0aW9uKQor
ICAgIGlmICghaW5pdGlhbGl6ZUZ1bmN0aW9uKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAi
SW5qZWN0ZWRCdW5kbGU6OmxvYWQgZmFpbGVkIC0gQ291bGQgbm90IGZpbmQgdGhlIGluaXRpYWxp
emUgZnVuY3Rpb24gaW4gdGhlIGJ1bmRsZSBleGVjdXRhYmxlLlxuIik7CiAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CiAKICAgICBpbml0aWFsaXplRnVuY3Rpb24odG9SZWYodGhpcykpOwog
ICAgIHJldHVybiB0cnVlOwpJbmRleDogV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCShyZXZpc2lvbiA2MTYy
MSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3OCw2ICsxNzgsMTAgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZQogICAgIGlmICghd2ViUGFnZSkKICAgICAgICAg
cmV0dXJuOwogCisgICAgLy8gTm90aWZ5IHRoZSBidW5kbGUgY2xpZW50LgorICAgIHdlYlBhZ2Ut
PmluamVjdGVkQnVuZGxlQ2xpZW50KCkuZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlz
aW9uYWxMb2FkRm9yRnJhbWUod2ViUGFnZSwgbV9mcmFtZSk7CisKKyAgICAvLyBOb3RpZnkgdGhl
IFVJUHJvY2Vzcy4KICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmQo
V2ViUGFnZVByb3h5TWVzc2FnZTo6RGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9u
YWxMb2FkRm9yRnJhbWUsIHdlYlBhZ2UtPnBhZ2VJRCgpLCBDb3JlSVBDOjpJbihtX2ZyYW1lLT5m
cmFtZUlEKCkpKTsKIH0KIApAQCAtMjMwLDYgKzIzNCwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFN0CiAgICAgRG9jdW1lbnRMb2FkZXIqIHByb3Zpc2lvbmFsTG9h
ZGVyID0gbV9mcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLT5wcm92aXNpb25hbERvY3VtZW50
TG9hZGVyKCk7CiAgICAgY29uc3QgU3RyaW5nJiB1cmwgPSBwcm92aXNpb25hbExvYWRlci0+dXJs
KCkuc3RyaW5nKCk7CiAKKyAgICAvLyBOb3RpZnkgdGhlIGJ1bmRsZSBjbGllbnQuCisgICAgd2Vi
UGFnZS0+aW5qZWN0ZWRCdW5kbGVDbGllbnQoKS5kaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZy
YW1lKHdlYlBhZ2UsIG1fZnJhbWUpOworCisgICAgLy8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAg
ICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kKFdlYlBhZ2VQcm94eU1l
c3NhZ2U6OkRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUsIHdlYlBhZ2UtPnBhZ2VJRCgp
LCBDb3JlSVBDOjpJbihtX2ZyYW1lLT5mcmFtZUlEKCksIHVybCkpOwogfQogCkBAIC0yMzksNiAr
MjQ3LDEwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmUKICAgICBp
ZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAorICAgIC8vIE5vdGlmeSB0aGUgYnVuZGxl
IGNsaWVudC4KKyAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUNsaWVudCgpLmRpZFJlY2VpdmVU
aXRsZUZvckZyYW1lKHdlYlBhZ2UsIHRpdGxlLCBtX2ZyYW1lKTsKKworICAgIC8vIE5vdGlmeSB0
aGUgVUlQcm9jZXNzLgogICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2Vu
ZChXZWJQYWdlUHJveHlNZXNzYWdlOjpEaWRSZWNlaXZlVGl0bGVGb3JGcmFtZSwgd2ViUGFnZS0+
cGFnZUlEKCksIENvcmVJUEM6OkluKG1fZnJhbWUtPmZyYW1lSUQoKSwgdGl0bGUpKTsKIH0KIApA
QCAtMjUzLDYgKzI2NSwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZENvCiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICByZXR1cm47CiAKKyAgICAvLyBOb3RpZnkg
dGhlIGJ1bmRsZSBjbGllbnQuCisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVDbGllbnQoKS5k
aWRDb21taXRMb2FkRm9yRnJhbWUod2ViUGFnZSwgbV9mcmFtZSk7CisKKyAgICAvLyBOb3RpZnkg
dGhlIFVJUHJvY2Vzcy4KICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNl
bmQoV2ViUGFnZVByb3h5TWVzc2FnZTo6RGlkQ29tbWl0TG9hZEZvckZyYW1lLCB3ZWJQYWdlLT5w
YWdlSUQoKSwgQ29yZUlQQzo6SW4obV9mcmFtZS0+ZnJhbWVJRCgpKSk7CiB9CiAKQEAgLTI2Miw2
ICsyNzgsMTAgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYQogICAg
IGlmICghd2ViUGFnZSkKICAgICAgICAgcmV0dXJuOwogCisgICAgLy8gTm90aWZ5IHRoZSBidW5k
bGUgY2xpZW50LgorICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlQ2xpZW50KCkuZGlkRmFpbFBy
b3Zpc2lvbmFsTG9hZFdpdGhFcnJvckZvckZyYW1lKHdlYlBhZ2UsIG1fZnJhbWUpOworCisgICAg
Ly8gTm90aWZ5IHRoZSBVSVByb2Nlc3MuCiAgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVj
dGlvbigpLT5zZW5kKFdlYlBhZ2VQcm94eU1lc3NhZ2U6OkRpZEZhaWxQcm92aXNpb25hbExvYWRG
b3JGcmFtZSwgd2ViUGFnZS0+cGFnZUlEKCksIENvcmVJUEM6OkluKG1fZnJhbWUtPmZyYW1lSUQo
KSkpOwogfQogCkBAIC0yNzEsNiArMjkxLDEwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmEKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAorICAg
IC8vIE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KKyAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRs
ZUNsaWVudCgpLmRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUod2ViUGFnZSwgbV9mcmFtZSk7
CisKKyAgICAvLyBOb3RpZnkgdGhlIFVJUHJvY2Vzcy4KICAgICBXZWJQcm9jZXNzOjpzaGFyZWQo
KS5jb25uZWN0aW9uKCktPnNlbmQoV2ViUGFnZVByb3h5TWVzc2FnZTo6RGlkRmFpbExvYWRGb3JG
cmFtZSwgd2ViUGFnZS0+cGFnZUlEKCksIENvcmVJUEM6OkluKG1fZnJhbWUtPmZyYW1lSUQoKSkp
OwogfQogCkBAIC0yODUsNiArMzA5LDEwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkRmkKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAorICAgIC8v
IE5vdGlmeSB0aGUgYnVuZGxlIGNsaWVudC4KKyAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUNs
aWVudCgpLmRpZEZpbmlzaExvYWRGb3JGcmFtZSh3ZWJQYWdlLCBtX2ZyYW1lKTsKKworICAgIC8v
IE5vdGlmeSB0aGUgVUlQcm9jZXNzLgogICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rp
b24oKS0+c2VuZChXZWJQYWdlUHJveHlNZXNzYWdlOjpEaWRGaW5pc2hMb2FkRm9yRnJhbWUsIHdl
YlBhZ2UtPnBhZ2VJRCgpLCBDb3JlSVBDOjpJbihtX2ZyYW1lLT5mcmFtZUlEKCkpKTsKIH0KIApJ
bmRleDogV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHJldmlzaW9uIDYxNjIx
KQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE0Nyw2ICsxNDcsOSBAQCB2b2lkIFdlYlBhZ2U6OnJlbW92ZVdlYkZyYW1lKHVpbnQ2
NF90IGZyCiAKIHZvaWQgV2ViUGFnZTo6Y2xvc2UoKQogeworICAgIGlmIChXZWJQcm9jZXNzOjpz
aGFyZWQoKS5pbmplY3RlZEJ1bmRsZSgpKQorICAgICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5p
bmplY3RlZEJ1bmRsZSgpLT53aWxsRGVzdHJveVBhZ2UodGhpcyk7CisKICAgICBtX21haW5GcmFt
ZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLT5kZXRhY2hGcm9tUGFyZW50KCk7CiAKICAgICBkZWxl
dGUgbV9wYWdlOwpJbmRleDogV2ViS2l0Mi9tYWMvV2ViS2l0Mi5leHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0Mi9tYWMvV2ViS2l0Mi5leHAJKHJldmlzaW9uIDYxNjIxKQorKysgV2ViS2l0Mi9tYWMv
V2ViS2l0Mi5leHAJKHdvcmtpbmcgY29weSkKQEAgLTM0LDYgKzM0LDcgQEAgX1dLUGFnZU5hbWVz
cGFjZVJlbGVhc2UKIF9XS1BhZ2VOYW1lc3BhY2VSZXRhaW4KIF9XS1BhZ2VSZWxlYXNlCiBfV0tQ
YWdlUmVsb2FkCitfV0tQYWdlUmVuZGVyVHJlZUV4dGVybmFsUmVwcmVzZW50YXRpb24KIF9XS1Bh
Z2VSZXRhaW4KIF9XS1BhZ2VTZXRQYWdlSGlzdG9yeUNsaWVudAogX1dLUGFnZVNldFBhZ2VMb2Fk
ZXJDbGllbnQKSW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJL
aXRUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDYxNjg4KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTAtMDYtMjMgIFNhbSBXZWlu
aWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBGaXggZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MTA3MworICAgICAgICBXZWJLaXQyOiBGbGVzaCBvdXQgbW9yZSBvZiB0aGUgSW5qZWN0
ZWRCdW5kbGUgY2xpZW50IEFQSQorCisgICAgICAgICogTWluaUJyb3dzZXIvbWFjL1dlYkJ1bmRs
ZS9XZWJCdW5kbGVNYWluLm06CisgICAgICAgIChfZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JG
cmFtZSk6CisgICAgICAgIChfZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxM
b2FkRm9yRnJhbWUpOgorICAgICAgICAoX2RpZEZhaWxQcm92aXNpb25hbExvYWRXaXRoRXJyb3JG
b3JGcmFtZSk6CisgICAgICAgIChfZGlkQ29tbWl0TG9hZEZvckZyYW1lKToKKyAgICAgICAgKF9k
aWRGaW5pc2hMb2FkRm9yRnJhbWUpOgorICAgICAgICAoX2RpZEZhaWxMb2FkV2l0aEVycm9yRm9y
RnJhbWUpOgorICAgICAgICAoX2RpZFJlY2VpdmVUaXRsZUZvckZyYW1lKToKKyAgICAgICAgKF9k
aWRDbGVhcldpbmRvd0ZvckZyYW1lKToKKyAgICAgICAgKF9kaWRDcmVhdGVQYWdlKToKKyAgICAg
ICAgKF93aWxsRGVzdHJveVBhZ2UpOgorICAgICAgICAoV0tCdW5kbGVJbml0aWFsaXplKToKKwog
MjAxMC0wNi0yMyAgWXV6byBGdWppc2hpbWEgIDx5dXpvQGdvb2dsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgU2hpbmljaGlybyBIYW1hamkuCkluZGV4OiBXZWJLaXRUb29scy9NaW5pQnJv
d3Nlci9tYWMvV2ViQnVuZGxlL1dlYkJ1bmRsZU1haW4ubQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRU
b29scy9NaW5pQnJvd3Nlci9tYWMvV2ViQnVuZGxlL1dlYkJ1bmRsZU1haW4ubQkocmV2aXNpb24g
NjE2MjEpCisrKyBXZWJLaXRUb29scy9NaW5pQnJvd3Nlci9tYWMvV2ViQnVuZGxlL1dlYkJ1bmRs
ZU1haW4ubQkod29ya2luZyBjb3B5KQpAQCAtMzQsNyArMzQsMzcgQEAKIAogc3RhdGljIFdLQnVu
ZGxlUmVmIGdsb2JhbEJ1bmRsZTsKIAotdm9pZCBfZGlkQ2xlYXJXaW5kb3coV0tCdW5kbGVQYWdl
UmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIEpTQ29udGV4dFJlZiBjdHgsIEpTT2Jq
ZWN0UmVmIHdpbmRvdywgY29uc3Qgdm9pZCAqY2xpZW50SW5mbykKKy8vIFdLQnVuZGxlUGFnZUNs
aWVudAorCit2b2lkIF9kaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKFdLQnVuZGxlUGFn
ZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZv
KQoreworfQorCit2b2lkIF9kaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWRGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwg
Y29uc3Qgdm9pZCAqY2xpZW50SW5mbykKK3sKK30KKwordm9pZCBfZGlkRmFpbFByb3Zpc2lvbmFs
TG9hZFdpdGhFcnJvckZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1l
UmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKQoreworfQorCit2b2lkIF9kaWRDb21t
aXRMb2FkRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJh
bWUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pCit7Cit9CisKK3ZvaWQgX2RpZEZpbmlzaExvYWRG
b3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgY29u
c3Qgdm9pZCAqY2xpZW50SW5mbykKK3sKK30KKwordm9pZCBfZGlkRmFpbExvYWRXaXRoRXJyb3JG
b3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgY29u
c3Qgdm9pZCAqY2xpZW50SW5mbykKK3sKK30KKwordm9pZCBfZGlkUmVjZWl2ZVRpdGxlRm9yRnJh
bWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIHRpdGxlLCBXS0J1bmRsZUZyYW1l
UmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKQoreworfQorCit2b2lkIF9kaWRDbGVh
cldpbmRvd0ZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZy
YW1lLCBKU0NvbnRleHRSZWYgY3R4LCBKU09iamVjdFJlZiB3aW5kb3csIGNvbnN0IHZvaWQgKmNs
aWVudEluZm8pCiB7CiAgICAgQ0ZVUkxSZWYgY2ZVUkwgPSBXS1VSTENvcHlDRlVSTCgwLCBXS0J1
bmRsZVBhZ2VHZXRNYWluRnJhbWVVUkwocGFnZSkpOwogICAgIE5TTG9nKEAiV0tCdW5kbGVQYWdl
Q2xpZW50IC0gX2RpZENsZWFyV2luZG93Rm9yRnJhbWUgJUAiLCBbKE5TVVJMICopY2ZVUkwgYWJz
b2x1dGVTdHJpbmddKTsKQEAgLTQ1LDE4ICs3NSwzMyBAQCB2b2lkIF9kaWRDbGVhcldpbmRvdyhX
S0J1bmRsZVBhZ2VSZWYgcGFnCiAgICAgV0tTdHJpbmdSZWxlYXNlKG1lc3NhZ2UpOwogfQogCi12
b2lkIF9kaWRDcmVhdGVQYWdlKFdLQnVuZGxlUGFnZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZVJl
ZiBwYWdlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQorCisvLyBXS0J1bmRsZUNsaWVudAorCit2
b2lkIF9kaWRDcmVhdGVQYWdlKFdLQnVuZGxlUmVmIGJ1bmRsZSwgV0tCdW5kbGVQYWdlUmVmIHBh
Z2UsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCiB7CiAgICAgTlNMb2coQCJXS0J1bmRsZUNsaWVu
dCAtIGRpZENyZWF0ZVBhZ2VcbiIpOwogCiAgICAgV0tCdW5kbGVQYWdlQ2xpZW50IGNsaWVudCA9
IHsKICAgICAgICAgMCwKICAgICAgICAgMCwKLSAgICAgICAgX2RpZENsZWFyV2luZG93CisgICAg
ICAgIF9kaWRTdGFydFByb3Zpc2lvbmFsTG9hZEZvckZyYW1lLAorICAgICAgICBfZGlkUmVjZWl2
ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUsCisgICAgICAgIF9kaWRG
YWlsUHJvdmlzaW9uYWxMb2FkV2l0aEVycm9yRm9yRnJhbWUsCisgICAgICAgIF9kaWRDb21taXRM
b2FkRm9yRnJhbWUsCisgICAgICAgIF9kaWRGaW5pc2hMb2FkRm9yRnJhbWUsCisgICAgICAgIF9k
aWRGYWlsTG9hZFdpdGhFcnJvckZvckZyYW1lLAorICAgICAgICBfZGlkUmVjZWl2ZVRpdGxlRm9y
RnJhbWUsCisgICAgICAgIF9kaWRDbGVhcldpbmRvd0ZvckZyYW1lCiAgICAgfTsKICAgICBXS0J1
bmRsZVBhZ2VTZXRDbGllbnQocGFnZSwgJmNsaWVudCk7CiB9CiAKK3ZvaWQgX3dpbGxEZXN0cm95
UGFnZShXS0J1bmRsZVJlZiBidW5kbGUsIFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBjb25zdCB2b2lk
KiBjbGllbnRJbmZvKQoreworICAgIE5TTG9nKEAiV0tCdW5kbGVDbGllbnQgLSB3aWxsRGVzdHJv
eVBhZ2VcbiIpOworfQorCiB2b2lkIF9kaWRSZWNpZXZlTWVzc2FnZShXS0J1bmRsZVJlZiBidW5k
bGUsIFdLU3RyaW5nUmVmIG1lc3NhZ2UsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pCiB7CiAgICAg
Q0ZTdHJpbmdSZWYgY2ZNZXNzYWdlID0gV0tTdHJpbmdDb3B5Q0ZTdHJpbmcoMCwgbWVzc2FnZSk7
CkBAIC03Miw2ICsxMTcsNyBAQCB2b2lkIFdLQnVuZGxlSW5pdGlhbGl6ZShXS0J1bmRsZVJlZiBi
dW5kCiAgICAgICAgIDAsCiAgICAgICAgIDAsCiAgICAgICAgIF9kaWRDcmVhdGVQYWdlLAorICAg
ICAgICBfd2lsbERlc3Ryb3lQYWdlLAogICAgICAgICBfZGlkUmVjaWV2ZU1lc3NhZ2UKICAgICB9
OwogICAgIFdLQnVuZGxlU2V0Q2xpZW50KGJ1bmRsZSwgJmNsaWVudCk7Cg==
</data>
<flag name="review"
          id="46418"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>