<?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>45217</bug_id>
          
          <creation_ts>2010-09-03 17:42:44 -0700</creation_ts>
          <short_desc>Indicate which one of the ScriptWorlds for a Frame the Window Object has been cleared for.</short_desc>
          <delta_ts>2010-09-07 11:12:14 -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>All</rep_platform>
          <op_sys>All</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="Jessie Berlin">jberlin</reporter>
          <assigned_to name="Jessie Berlin">jberlin</assigned_to>
          <cc>aroben</cc>
    
    <cc>jberlin</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>274292</commentid>
    <comment_count>0</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-09-03 17:42:44 -0700</bug_when>
    <thetext>WKBundlePageLoaderClient&apos;s WKBundlePageDidClearWindowObjectForFrameCallback should be a WKBundlePageDidClearWindowObjectForFrameInScriptWorldCallback, since there may be multiple ScriptWorlds for one Frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>275049</commentid>
    <comment_count>1</comment_count>
      <attachid>66723</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-09-07 08:24:19 -0700</bug_when>
    <thetext>Created attachment 66723
didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>275051</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-07 08:26:38 -0700</bug_when>
    <thetext>Attachment 66723 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h:81:  Extra space between WKBundlePageDidClearWindowObjectForFrameInScriptWorldCallback and didClearWindowObjectForFrameInScriptWorld  [whitespace/declaration] [3]
WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:34:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 2 in 8 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>275055</commentid>
    <comment_count>3</comment_count>
      <attachid>66726</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-09-07 08:38:06 -0700</bug_when>
    <thetext>Created attachment 66726
didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld (Take 2 - Style Errors Fixed)

Fixed style errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>275073</commentid>
    <comment_count>4</comment_count>
      <attachid>66726</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-09-07 09:08:41 -0700</bug_when>
    <thetext>Comment on attachment 66726
didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld (Take 2 - Style Errors Fixed)

I don’t think you need to add “InScriptWord” to the name of the function. That’s the normal naming for Objective-C, but here in C++ I think it is not much clearer and makes the function name longer than necessary. I suppose it’s nice to clarify that this has to be called separately for each world, but I also think the arguments makes that clear.

It does seem unfortunate that we will have to create a script world just to pass to the caller.

&gt; -    WKBundlePageDidClearWindowObjectForFrameCallback                    didClearWindowObjectForFrame;
&gt; +    WKBundlePageDidClearWindowObjectForFrameInScriptWorldCallback didClearWindowObjectForFrameInScriptWorld;

It looks like this is no longer aligned. This is why I normally request that we not line things up like this. Worth talking to Sam about eliminating the vertical alignment, but for now maybe you should add spaces to keep things lined up.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>275101</commentid>
    <comment_count>5</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-09-07 09:53:50 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 66726 [details])
&gt; I don’t think you need to add “InScriptWord” to the name of the function. That’s the normal naming for Objective-C, but here in C++ I think it is not much clearer and makes the function name longer than necessary. I suppose it’s nice to clarify that this has to be called separately for each world, but I also think the arguments makes that clear.
&gt; 

I originally added &quot;InScriptWorld&quot; to match IWebFrameLoadDelegatePrivate2&apos;s didClearWindowObjectForFrameInScriptWorld. However, your argument makes more sense, so I just removed the extra &quot;InScriptWorld&quot;s.

&gt; It does seem unfortunate that we will have to create a script world just to pass to the caller.
&gt; 

I am not sure how else we would go about getting the script world.

&gt; &gt; -    WKBundlePageDidClearWindowObjectForFrameCallback                    didClearWindowObjectForFrame;
&gt; &gt; +    WKBundlePageDidClearWindowObjectForFrameInScriptWorldCallback didClearWindowObjectForFrameInScriptWorld;
&gt; 
&gt; It looks like this is no longer aligned. This is why I normally request that we not line things up like this. Worth talking to Sam about eliminating the vertical alignment, but for now maybe you should add spaces to keep things lined up.
&gt; 

In my original patch it was aligned, but then the check-webkit-style script issued a warning about too many spaces. I will align it again.

&gt; r=me

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>275170</commentid>
    <comment_count>6</comment_count>
      <attachid>66726</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-09-07 11:11:53 -0700</bug_when>
    <thetext>Comment on attachment 66726
didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld (Take 2 - Style Errors Fixed)

Committed in r66894:
http://trac.webkit.org/changeset/66894</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66723</attachid>
            <date>2010-09-07 08:24:19 -0700</date>
            <delta_ts>2010-09-07 08:38:06 -0700</delta_ts>
            <desc>didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld</desc>
            <filename>indicateScriptWorldForFrameWindowObjectClearedFor.patch</filename>
            <type>text/plain</type>
            <size>12699</size>
            <attacher name="Jessie Berlin">jberlin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2Njc3OCkKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTAtMDktMDMgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
bmRpY2F0ZSB3aGljaCBvbmUgb2YgdGhlIFNjcmlwdFdvcmxkcyBmb3IgYSBGcmFtZSB0aGUgV2lu
ZG93IE9iamVjdCBoYXMgYmVlbiBjbGVhcmVkIGZvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTcKKworICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6CisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudDo6ZGlkQ2xlYXJXaW5k
b3dPYmplY3RGb3JGcmFtZUluU2NyaXB0V29ybGQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50Lmg6CisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkQ2xlYXJXaW5k
b3dPYmplY3RJbldvcmxkKToKKwogMjAxMC0wOS0wMyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEdhdmluIEJhcnJhY2xvdWdoLgpJbmRleDogV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNs
aWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5jcHAJKHJldmlzaW9uIDY2NzMxKQorKysg
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRl
ckNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDYgKzI1LDcgQEAKIAogI2luY2x1ZGUg
IkluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5oIgogCisjaW5jbHVkZSAiSW5qZWN0ZWRC
dW5kbGVTY3JpcHRXb3JsZC5oIgogI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgogI2luY2x1ZGUgIldL
QnVuZGxlQVBJQ2FzdC5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtOTQs
MTAgKzk1LDEwIEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50OjpkaWQKICAg
ICAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUodG9SZWYocGFnZSksIHRvUmVm
KHRpdGxlLmltcGwoKSksIHRvUmVmKGZyYW1lKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7CiB9CiAK
LXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50OjpkaWRDbGVhcldpbmRvd09iamVj
dEZvckZyYW1lKFdlYlBhZ2UqIHBhZ2UsIFdlYkZyYW1lKiBmcmFtZSwgSlNHbG9iYWxDb250ZXh0
UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIHdpbmRvdykKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdl
TG9hZGVyQ2xpZW50OjpkaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lSW5TY3JpcHRXb3JsZChX
ZWJQYWdlKiBwYWdlLCBXZWJGcmFtZSogZnJhbWUsIERPTVdyYXBwZXJXb3JsZCogd29ybGQpCiB7
Ci0gICAgaWYgKG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUpCi0gICAgICAg
IG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUodG9SZWYocGFnZSksIHRvUmVm
KGZyYW1lKSwgY29udGV4dCwgd2luZG93LCBtX2NsaWVudC5jbGllbnRJbmZvKTsKKyAgICBpZiAo
bV9jbGllbnQuZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZUluU2NyaXB0V29ybGQpCisgICAg
ICAgIG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVJblNjcmlwdFdvcmxkKHRv
UmVmKHBhZ2UpLCB0b1JlZihmcmFtZSksIHRvUmVmKEluamVjdGVkQnVuZGxlU2NyaXB0V29ybGQ6
OmdldE9yQ3JlYXRlKHdvcmxkKS5nZXQoKSksIG1fY2xpZW50LmNsaWVudEluZm8pOwogfQogCiB2
b2lkIEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudDo6ZGlkQ2FuY2VsQ2xpZW50UmVkaXJl
Y3RGb3JGcmFtZShXZWJQYWdlKiBwYWdlLCBXZWJGcmFtZSogZnJhbWUpCkluZGV4OiBXZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5oCShyZXZpc2lvbiA2NjczMSkKKysrIFdlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VMb2FkZXJDbGllbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMzAsNiArMzAsMTAgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9KU0Jhc2UuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisgICAgY2xhc3MgRE9NV3JhcHBlcldvcmxkOworfQorCiBuYW1lc3BhY2UgV2ViS2l0
IHsKIAogY2xhc3MgV2ViUGFnZTsKQEAgLTQ4LDcgKzUyLDcgQEAgcHVibGljOgogICAgIHZvaWQg
ZGlkRmluaXNoTG9hZEZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFtZSopOwogICAgIHZvaWQgZGlk
RmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZShXZWJQYWdlKiwgV2ViRnJhbWUqKTsKICAgICB2b2lk
IGRpZFJlY2VpdmVUaXRsZUZvckZyYW1lKFdlYlBhZ2UqLCBjb25zdCBXVEY6OlN0cmluZyYsIFdl
YkZyYW1lKik7Ci0gICAgdm9pZCBkaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lKFdlYlBhZ2Uq
LCBXZWJGcmFtZSosIEpTR2xvYmFsQ29udGV4dFJlZiwgSlNPYmplY3RSZWYpOworICAgIHZvaWQg
ZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZUluU2NyaXB0V29ybGQoV2ViUGFnZSosIFdlYkZy
YW1lKiwgV2ViQ29yZTo6RE9NV3JhcHBlcldvcmxkKik7CiAgICAgdm9pZCBkaWRDYW5jZWxDbGll
bnRSZWRpcmVjdEZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFtZSopOwogICAgIHZvaWQgd2lsbFBl
cmZvcm1DbGllbnRSZWRpcmVjdEZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFtZSosIGNvbnN0IFdU
Rjo6U3RyaW5nJiB1cmwsIGRvdWJsZSBkZWxheSwgZG91YmxlIGRhdGUpOwogICAgIHZvaWQgZGlk
Q2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7Cklu
ZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdl
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlUGFnZS5oCShyZXZpc2lvbiA2NjczMSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNTcs
NyArNTcsNyBAQCB0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWREb2N1bWVudEZpCiB0eXBl
ZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWRGaW5pc2hMb2FkRm9yRnJhbWVDYWxsYmFjaykoV0tC
dW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIGNvbnN0IHZvaWQgKmNs
aWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkRmFpbExvYWRXaXRoRXJy
b3JGb3JGcmFtZUNhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJl
ZiBmcmFtZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7IC8vIEZJWE1FOiBBZGQgV0tFcnJvclJl
Zi4KIHR5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZFJlY2VpdmVUaXRsZUZvckZyYW1lQ2Fs
bGJhY2spKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS1N0cmluZ1JlZiB0aXRsZSwgV0tCdW5kbGVG
cmFtZVJlZiBmcmFtZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7Ci10eXBlZGVmIHZvaWQgKCpX
S0J1bmRsZVBhZ2VEaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lQ2FsbGJhY2spKFdLQnVuZGxl
UGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBKU0dsb2JhbENvbnRleHRSZWYg
Y29udGV4dCwgSlNPYmplY3RSZWYgd2luZG93LCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5
cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVJblNj
cmlwdFdvcmxkQ2FsbGJhY2spKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVm
IGZyYW1lLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmIHdvcmxkLCBjb25zdCB2b2lkICpjbGllbnRJ
bmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZENhbmNlbENsaWVudFJlZGlyZWN0
Rm9yRnJhbWVDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYg
ZnJhbWUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQ
YWdlV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdEZvckZyYW1lQ2FsbGJhY2spKFdLQnVuZGxlUGFn
ZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBXS1VSTFJlZiB1cmwsIGRvdWJsZSBk
ZWxheSwgZG91YmxlIGRhdGUsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lk
ICgqV0tCdW5kbGVQYWdlRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWVDYWxsYmFj
aykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIGNvbnN0IHZv
aWQgKmNsaWVudEluZm8pOwpAQCAtNzgsNyArNzgsNyBAQCBzdHJ1Y3QgV0tCdW5kbGVQYWdlTG9h
ZGVyQ2xpZW50IHsKICAgICBXS0J1bmRsZVBhZ2VEaWRGaW5pc2hMb2FkRm9yRnJhbWVDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZEZpbmlzaExvYWRGb3JGcmFtZTsKICAgICBX
S0J1bmRsZVBhZ2VEaWRGYWlsTG9hZFdpdGhFcnJvckZvckZyYW1lQ2FsbGJhY2sgICAgICAgICAg
ICAgICAgICAgIGRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWU7CiAgICAgV0tCdW5kbGVQYWdl
RGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICBk
aWRSZWNlaXZlVGl0bGVGb3JGcmFtZTsKLSAgICBXS0J1bmRsZVBhZ2VEaWRDbGVhcldpbmRvd09i
amVjdEZvckZyYW1lQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgIGRpZENsZWFyV2luZG93T2Jq
ZWN0Rm9yRnJhbWU7CisgICAgV0tCdW5kbGVQYWdlRGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFt
ZUluU2NyaXB0V29ybGRDYWxsYmFjayAgICAgICBkaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1l
SW5TY3JpcHRXb3JsZDsKICAgICBXS0J1bmRsZVBhZ2VEaWRDYW5jZWxDbGllbnRSZWRpcmVjdEZv
ckZyYW1lQ2FsbGJhY2sgICAgICAgICAgICAgICAgIGRpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9y
RnJhbWU7CiAgICAgV0tCdW5kbGVQYWdlV2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdEZvckZyYW1l
Q2FsbGJhY2sgICAgICAgICAgICAgICB3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWU7
CiAgICAgV0tCdW5kbGVQYWdlRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWVDYWxs
YmFjayAgICAgICAgICAgICBkaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZTsKSW5k
ZXg6IFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50LmNwcAkocmV2aXNpb24gNjY3MzEpCisrKyBXZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC05ODUsMTUgKzk4NSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkQ2wKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmICh3
b3JsZCAhPSBtYWluVGhyZWFkTm9ybWFsV29ybGQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAg
Ly8gRklYTUU6IElzIHRoZXJlIGEgd2F5IHRvIGdldCB0aGlzIGFuZCBrbm93IHRoYXQgaXQncyBh
IEpTR2xvYmFsQ29udGV4dFJlZj8KLSAgICAvLyBUaGUgY29uc3RfY2FzdCBoZXJlIGlzIGEgYml0
IHVnbHkuCi0gICAgSlNHbG9iYWxDb250ZXh0UmVmIGNvbnRleHQgPSBjb25zdF9jYXN0PEpTR2xv
YmFsQ29udGV4dFJlZj4odG9SZWYobV9mcmFtZS0+Y29yZUZyYW1lKCktPnNjcmlwdCgpLT5nbG9i
YWxPYmplY3Qod29ybGQpLT5nbG9iYWxFeGVjKCkpKTsKLSAgICBKU09iamVjdFJlZiB3aW5kb3dP
YmplY3QgPSB0b1JlZihtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+c2NyaXB0KCktPmdsb2JhbE9iamVj
dCh3b3JsZCkpOwotCi0gICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoKS5k
aWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lKHdlYlBhZ2UsIG1fZnJhbWUsIGNvbnRleHQsIHdp
bmRvd09iamVjdCk7CisgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoKS5k
aWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lSW5TY3JpcHRXb3JsZCh3ZWJQYWdlLCBtX2ZyYW1l
LCB3b3JsZCk7CiB9CiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRvY3VtZW50RWxlbWVu
dEF2YWlsYWJsZSgpCkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2Njc3OCkKKysrIFdlYktpdFRvb2xzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEwLTA5LTAzICBKZXNz
aWUgQmVybGluICA8amJlcmxpbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kaWNhdGUgd2hpY2ggb25lIG9mIHRoZSBTY3JpcHRX
b3JsZHMgZm9yIGEgRnJhbWUgdGhlIFdpbmRvdyBPYmplY3QgaGFzIGJlZW4gY2xlYXJlZCBmb3IK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ1MjE3Cisg
ICAgICAgIAorICAgICAgICBNYWtlIFdlYktpdFRlc3RSdW5uZXIgd29yayB3aXRoIHRoaXMgY2hh
bmdlLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZVBhZ2UuY3BwOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZVBhZ2U6OkluamVj
dGVkQnVuZGxlUGFnZSk6CisgICAgICAgIChXVFI6OkluamVjdGVkQnVuZGxlUGFnZTo6ZGlkQ2xl
YXJXaW5kb3dGb3JGcmFtZUluU2NyaXB0V29ybGQpOgorICAgICAgICBNYWtlIHN1cmUgdGhlIFNj
cmlwdFdvcmxkIGhlcmUgaXMgdGhlIG5vcm1hbCB3b3JsZCwgc2luY2UgdGhhdCBpcyBubyBsb25n
ZXIgYmVpbmcgZG9uZSBpbgorICAgICAgICBXZWJGcmFtZUxvYWRlckNsaWVudC4KKyAgICAgICAg
KiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5oOgor
CiAyMDEwLTA5LTAzICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4OiBXZWJLaXRUb29scy9XZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZVBhZ2UuY3BwCShyZXZpc2lvbiA2NjczMSkKKysrIFdlYktpdFRvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQYWdlUHJp
dmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KICNpbmNsdWRlIDxXZWJL
aXQyL1dLQnVuZGxlUmFuZ2UuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlU2NyaXB0V29y
bGQuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtMTA0LDcgKzEwNSw3IEBAIEluamVj
dGVkQnVuZGxlUGFnZTo6SW5qZWN0ZWRCdW5kbGVQYWdlKFcKICAgICAgICAgZGlkRmluaXNoTG9h
ZEZvckZyYW1lLAogICAgICAgICBkaWRGYWlsTG9hZFdpdGhFcnJvckZvckZyYW1lLAogICAgICAg
ICBkaWRSZWNlaXZlVGl0bGVGb3JGcmFtZSwKLSAgICAgICAgZGlkQ2xlYXJXaW5kb3dGb3JGcmFt
ZSwKKyAgICAgICAgZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZUluU2NyaXB0V29ybGQsCiAgICAgICAg
IGRpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9yRnJhbWUsCiAgICAgICAgIHdpbGxQZXJmb3JtQ2xp
ZW50UmVkaXJlY3RGb3JGcmFtZSwKICAgICAgICAgZGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdl
Rm9yRnJhbWUsCkBAIC0xOTgsOSArMTk5LDkgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRp
ZFJlY2VpdmVUaXRsZQogICAgIHN0YXRpY19jYXN0PEluamVjdGVkQnVuZGxlUGFnZSo+KGNvbnN0
X2Nhc3Q8dm9pZCo+KGNsaWVudEluZm8pKS0+ZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUodGl0bGUs
IGZyYW1lKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRpZENsZWFyV2luZG93Rm9y
RnJhbWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIEpTR2xv
YmFsQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiB3aW5kb3csIGNvbnN0IHZvaWQgKmNs
aWVudEluZm8pCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkQ2xlYXJXaW5kb3dGb3JGcmFt
ZUluU2NyaXB0V29ybGQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJh
bWUsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgd29ybGQsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8p
CiB7Ci0gICAgc3RhdGljX2Nhc3Q8SW5qZWN0ZWRCdW5kbGVQYWdlKj4oY29uc3RfY2FzdDx2b2lk
Kj4oY2xpZW50SW5mbykpLT5kaWRDbGVhcldpbmRvd0ZvckZyYW1lKGZyYW1lLCBjb250ZXh0LCB3
aW5kb3cpOworICAgIHN0YXRpY19jYXN0PEluamVjdGVkQnVuZGxlUGFnZSo+KGNvbnN0X2Nhc3Q8
dm9pZCo+KGNsaWVudEluZm8pKS0+ZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZUluU2NyaXB0V29ybGQo
ZnJhbWUsIHdvcmxkKTsKIH0KIAogdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRpZENhbmNlbENs
aWVudFJlZGlyZWN0Rm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVS
ZWYgZnJhbWUsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCkBAIC00MTIsMTEgKzQxMywxNyBAQCB2
b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkUmVjZWl2ZVRpdGxlCiAgICAgSW5qZWN0ZWRCdW5k
bGU6OnNoYXJlZCgpLm9zKCkgPDwgIlRJVExFIENIQU5HRUQ6ICIgPDwgdGl0bGUgPDwgIlxuIjsK
IH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRpZENsZWFyV2luZG93Rm9yRnJhbWUoV0tC
dW5kbGVGcmFtZVJlZiBmcmFtZSwgSlNHbG9iYWxDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0
UmVmIHdpbmRvdykKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlOjpkaWRDbGVhcldpbmRvd0ZvckZy
YW1lSW5TY3JpcHRXb3JsZChXS0J1bmRsZUZyYW1lUmVmIGZyYW1lLCBXS0J1bmRsZVNjcmlwdFdv
cmxkUmVmIHdvcmxkKQogewogICAgIGlmICghSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmlzVGVz
dFJ1bm5pbmcoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAgaWYgKFdLQnVuZGxlU2NyaXB0V29y
bGROb3JtYWxXb3JsZCgpICE9IHdvcmxkKQorICAgICAgICByZXR1cm47CisKKyAgICBKU0dsb2Jh
bENvbnRleHRSZWYgY29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0Q29udGV4dEZv
cldvcmxkKGZyYW1lLCB3b3JsZCk7CisgICAgSlNPYmplY3RSZWYgd2luZG93ID0gSlNDb250ZXh0
R2V0R2xvYmFsT2JqZWN0KGNvbnRleHQpOworCiAgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAw
OwogICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5sYXlvdXRUZXN0Q29udHJvbGxlcigpLT5t
YWtlV2luZG93T2JqZWN0KGNvbnRleHQsIHdpbmRvdywgJmV4Y2VwdGlvbik7CiAgICAgSW5qZWN0
ZWRCdW5kbGU6OnNoYXJlZCgpLmdjQ29udHJvbGxlcigpLT5tYWtlV2luZG93T2JqZWN0KGNvbnRl
eHQsIHdpbmRvdywgJmV4Y2VwdGlvbik7CkluZGV4OiBXZWJLaXRUb29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQ
YWdlLmgJKHJldmlzaW9uIDY2NzMxKQorKysgV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNTIs
NyArNTIsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRGb3JGcmFt
ZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxlRnJhbWVSZWYsIGNvbnN0IHZvaWQqKTsKICAgICBz
dGF0aWMgdm9pZCBkaWRGYWlsTG9hZFdpdGhFcnJvckZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwg
V0tCdW5kbGVGcmFtZVJlZiwgY29uc3Qgdm9pZCopOwogICAgIHN0YXRpYyB2b2lkIGRpZFJlY2Vp
dmVUaXRsZUZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tTdHJpbmdSZWYgdGl0bGUsIFdLQnVu
ZGxlRnJhbWVSZWYsIGNvbnN0IHZvaWQqKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRDbGVhcldpbmRv
d0ZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiwgSlNHbG9iYWxDb250
ZXh0UmVmLCBKU09iamVjdFJlZiB3aW5kb3csIGNvbnN0IHZvaWQqKTsKKyAgICBzdGF0aWMgdm9p
ZCBkaWRDbGVhcldpbmRvd0ZvckZyYW1lSW5TY3JpcHRXb3JsZChXS0J1bmRsZVBhZ2VSZWYsIFdL
QnVuZGxlRnJhbWVSZWYsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYsIGNvbnN0IHZvaWQqKTsKICAg
ICBzdGF0aWMgdm9pZCBkaWRDYW5jZWxDbGllbnRSZWRpcmVjdEZvckZyYW1lKFdLQnVuZGxlUGFn
ZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiwgY29uc3Qgdm9pZCopOwogICAgIHN0YXRpYyB2b2lkIHdp
bGxQZXJmb3JtQ2xpZW50UmVkaXJlY3RGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYsIFdLQnVuZGxl
RnJhbWVSZWYsIFdLVVJMUmVmIHVybCwgZG91YmxlIGRlbGF5LCBkb3VibGUgZGF0ZSwgY29uc3Qg
dm9pZCopOwogICAgIHN0YXRpYyB2b2lkIGRpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZUZvckZy
YW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiwgY29uc3Qgdm9pZCopOwpAQCAt
NjcsNyArNjcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkRmluaXNoTG9hZEZvckZyYW1lKFdL
QnVuZGxlRnJhbWVSZWYpOwogICAgIHZvaWQgZGlkRmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZShX
S0J1bmRsZUZyYW1lUmVmKTsKICAgICB2b2lkIGRpZFJlY2VpdmVUaXRsZUZvckZyYW1lKFdLU3Ry
aW5nUmVmIHRpdGxlLCBXS0J1bmRsZUZyYW1lUmVmKTsKLSAgICB2b2lkIGRpZENsZWFyV2luZG93
Rm9yRnJhbWUoV0tCdW5kbGVGcmFtZVJlZiwgSlNHbG9iYWxDb250ZXh0UmVmLCBKU09iamVjdFJl
ZiB3aW5kb3cpOworICAgIHZvaWQgZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZUluU2NyaXB0V29ybGQo
V0tCdW5kbGVGcmFtZVJlZiwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZik7CiAgICAgdm9pZCBkaWRD
YW5jZWxDbGllbnRSZWRpcmVjdEZvckZyYW1lKFdLQnVuZGxlRnJhbWVSZWYpOwogICAgIHZvaWQg
d2lsbFBlcmZvcm1DbGllbnRSZWRpcmVjdEZvckZyYW1lKFdLQnVuZGxlRnJhbWVSZWYsIFdLVVJM
UmVmIHVybCwgZG91YmxlIGRlbGF5LCBkb3VibGUgZGF0ZSk7CiAgICAgdm9pZCBkaWRDaGFuZ2VM
b2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZShXS0J1bmRsZUZyYW1lUmVmKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66726</attachid>
            <date>2010-09-07 08:38:06 -0700</date>
            <delta_ts>2010-09-07 11:11:53 -0700</delta_ts>
            <desc>didClearWindowObjectForFrame -&gt; didClearWindowObjectForFrameInScriptWorld (Take 2 - Style Errors Fixed)</desc>
            <filename>indicateScriptWorldForFrameWindowObjectClearedFor.patch</filename>
            <type>text/plain</type>
            <size>12689</size>
            <attacher name="Jessie Berlin">jberlin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2Njc3OCkKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTAtMDktMDMgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
bmRpY2F0ZSB3aGljaCBvbmUgb2YgdGhlIFNjcmlwdFdvcmxkcyBmb3IgYSBGcmFtZSB0aGUgV2lu
ZG93IE9iamVjdCBoYXMgYmVlbiBjbGVhcmVkIGZvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTcKKworICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6CisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudDo6ZGlkQ2xlYXJXaW5k
b3dPYmplY3RGb3JGcmFtZUluU2NyaXB0V29ybGQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50Lmg6CisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkQ2xlYXJXaW5k
b3dPYmplY3RJbldvcmxkKToKKwogMjAxMC0wOS0wMyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEdhdmluIEJhcnJhY2xvdWdoLgpJbmRleDogV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNs
aWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5jcHAJKHJldmlzaW9uIDY2NzMxKQorKysg
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUxvYWRl
ckNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDYgKzI1LDcgQEAKIAogI2luY2x1ZGUg
IkluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5oIgogCisjaW5jbHVkZSAiSW5qZWN0ZWRC
dW5kbGVTY3JpcHRXb3JsZC5oIgogI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgogI2luY2x1ZGUgIldL
QnVuZGxlQVBJQ2FzdC5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtOTQs
MTAgKzk1LDEwIEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50OjpkaWQKICAg
ICAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUodG9SZWYocGFnZSksIHRvUmVm
KHRpdGxlLmltcGwoKSksIHRvUmVmKGZyYW1lKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7CiB9CiAK
LXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50OjpkaWRDbGVhcldpbmRvd09iamVj
dEZvckZyYW1lKFdlYlBhZ2UqIHBhZ2UsIFdlYkZyYW1lKiBmcmFtZSwgSlNHbG9iYWxDb250ZXh0
UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIHdpbmRvdykKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdl
TG9hZGVyQ2xpZW50OjpkaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lSW5TY3JpcHRXb3JsZChX
ZWJQYWdlKiBwYWdlLCBXZWJGcmFtZSogZnJhbWUsIERPTVdyYXBwZXJXb3JsZCogd29ybGQpCiB7
Ci0gICAgaWYgKG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUpCi0gICAgICAg
IG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUodG9SZWYocGFnZSksIHRvUmVm
KGZyYW1lKSwgY29udGV4dCwgd2luZG93LCBtX2NsaWVudC5jbGllbnRJbmZvKTsKKyAgICBpZiAo
bV9jbGllbnQuZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZUluU2NyaXB0V29ybGQpCisgICAg
ICAgIG1fY2xpZW50LmRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVJblNjcmlwdFdvcmxkKHRv
UmVmKHBhZ2UpLCB0b1JlZihmcmFtZSksIHRvUmVmKEluamVjdGVkQnVuZGxlU2NyaXB0V29ybGQ6
OmdldE9yQ3JlYXRlKHdvcmxkKS5nZXQoKSksIG1fY2xpZW50LmNsaWVudEluZm8pOwogfQogCiB2
b2lkIEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudDo6ZGlkQ2FuY2VsQ2xpZW50UmVkaXJl
Y3RGb3JGcmFtZShXZWJQYWdlKiBwYWdlLCBXZWJGcmFtZSogZnJhbWUpCkluZGV4OiBXZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5oCShyZXZpc2lvbiA2NjczMSkKKysrIFdlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VMb2FkZXJDbGllbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMzAsNiArMzAsMTAgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9KU0Jhc2UuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCituYW1lc3BhY2UgV2Vi
Q29yZSB7CitjbGFzcyBET01XcmFwcGVyV29ybGQ7Cit9CisKIG5hbWVzcGFjZSBXZWJLaXQgewog
CiBjbGFzcyBXZWJQYWdlOwpAQCAtNDgsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRG
aW5pc2hMb2FkRm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CiAgICAgdm9pZCBkaWRGYWls
TG9hZFdpdGhFcnJvckZvckZyYW1lKFdlYlBhZ2UqLCBXZWJGcmFtZSopOwogICAgIHZvaWQgZGlk
UmVjZWl2ZVRpdGxlRm9yRnJhbWUoV2ViUGFnZSosIGNvbnN0IFdURjo6U3RyaW5nJiwgV2ViRnJh
bWUqKTsKLSAgICB2b2lkIGRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWUoV2ViUGFnZSosIFdl
YkZyYW1lKiwgSlNHbG9iYWxDb250ZXh0UmVmLCBKU09iamVjdFJlZik7CisgICAgdm9pZCBkaWRD
bGVhcldpbmRvd09iamVjdEZvckZyYW1lSW5TY3JpcHRXb3JsZChXZWJQYWdlKiwgV2ViRnJhbWUq
LCBXZWJDb3JlOjpET01XcmFwcGVyV29ybGQqKTsKICAgICB2b2lkIGRpZENhbmNlbENsaWVudFJl
ZGlyZWN0Rm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKik7CiAgICAgdm9pZCB3aWxsUGVyZm9y
bUNsaWVudFJlZGlyZWN0Rm9yRnJhbWUoV2ViUGFnZSosIFdlYkZyYW1lKiwgY29uc3QgV1RGOjpT
dHJpbmcmIHVybCwgZG91YmxlIGRlbGF5LCBkb3VibGUgZGF0ZSk7CiAgICAgdm9pZCBkaWRDaGFu
Z2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZShXZWJQYWdlKiwgV2ViRnJhbWUqKTsKSW5kZXg6
IFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVQYWdlLmgJKHJldmlzaW9uIDY2NzMxKQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw3ICs1
Nyw3IEBAIHR5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZURpZERvY3VtZW50RmkKIHR5cGVkZWYg
dm9pZCAoKldLQnVuZGxlUGFnZURpZEZpbmlzaExvYWRGb3JGcmFtZUNhbGxiYWNrKShXS0J1bmRs
ZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgY29uc3Qgdm9pZCAqY2xpZW50
SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWRGYWlsTG9hZFdpdGhFcnJvckZv
ckZyYW1lQ2FsbGJhY2spKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZUZyYW1lUmVmIGZy
YW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsgLy8gRklYTUU6IEFkZCBXS0Vycm9yUmVmLgog
dHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWVDYWxsYmFj
aykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIHRpdGxlLCBXS0J1bmRsZUZyYW1l
UmVmIGZyYW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKLXR5cGVkZWYgdm9pZCAoKldLQnVu
ZGxlUGFnZURpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVDYWxsYmFjaykoV0tCdW5kbGVQYWdl
UmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIEpTR2xvYmFsQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiB3aW5kb3csIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwordHlwZWRl
ZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZUluU2NyaXB0
V29ybGRDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJh
bWUsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgd29ybGQsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8p
OwogdHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RGb3JG
cmFtZUNhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFt
ZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VX
aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWVDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVm
IHBhZ2UsIFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIFdLVVJMUmVmIHVybCwgZG91YmxlIGRlbGF5
LCBkb3VibGUgZGF0ZSwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpX
S0J1bmRsZVBhZ2VEaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZUNhbGxiYWNrKShX
S0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgY29uc3Qgdm9pZCAq
Y2xpZW50SW5mbyk7CkBAIC03OCw3ICs3OCw3IEBAIHN0cnVjdCBXS0J1bmRsZVBhZ2VMb2FkZXJD
bGllbnQgewogICAgIFdLQnVuZGxlUGFnZURpZEZpbmlzaExvYWRGb3JGcmFtZUNhbGxiYWNrICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZGlkRmluaXNoTG9hZEZvckZyYW1lOwogICAgIFdLQnVu
ZGxlUGFnZURpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWVDYWxsYmFjayAgICAgICAgICAgICAg
ICAgICAgZGlkRmFpbExvYWRXaXRoRXJyb3JGb3JGcmFtZTsKICAgICBXS0J1bmRsZVBhZ2VEaWRS
ZWNlaXZlVGl0bGVGb3JGcmFtZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgIGRpZFJl
Y2VpdmVUaXRsZUZvckZyYW1lOwotICAgIFdLQnVuZGxlUGFnZURpZENsZWFyV2luZG93T2JqZWN0
Rm9yRnJhbWVDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgZGlkQ2xlYXJXaW5kb3dPYmplY3RG
b3JGcmFtZTsKKyAgICBXS0J1bmRsZVBhZ2VEaWRDbGVhcldpbmRvd09iamVjdEZvckZyYW1lSW5T
Y3JpcHRXb3JsZENhbGxiYWNrIGRpZENsZWFyV2luZG93T2JqZWN0Rm9yRnJhbWVJblNjcmlwdFdv
cmxkOwogICAgIFdLQnVuZGxlUGFnZURpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9yRnJhbWVDYWxs
YmFjayAgICAgICAgICAgICAgICAgZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RGb3JGcmFtZTsKICAg
ICBXS0J1bmRsZVBhZ2VXaWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWVDYWxsYmFjayAg
ICAgICAgICAgICAgIHdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3RGb3JGcmFtZTsKICAgICBXS0J1
bmRsZVBhZ2VEaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZUNhbGxiYWNrICAgICAg
ICAgICAgIGRpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZUZvckZyYW1lOwpJbmRleDogV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuY3BwCShyZXZpc2lvbiA2NjczMSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4
NSwxNSArOTg1LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRDbAog
ICAgIGlmICghd2ViUGFnZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKHdvcmxkICE9IG1h
aW5UaHJlYWROb3JtYWxXb3JsZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICAvLyBGSVhNRTog
SXMgdGhlcmUgYSB3YXkgdG8gZ2V0IHRoaXMgYW5kIGtub3cgdGhhdCBpdCdzIGEgSlNHbG9iYWxD
b250ZXh0UmVmPwotICAgIC8vIFRoZSBjb25zdF9jYXN0IGhlcmUgaXMgYSBiaXQgdWdseS4KLSAg
ICBKU0dsb2JhbENvbnRleHRSZWYgY29udGV4dCA9IGNvbnN0X2Nhc3Q8SlNHbG9iYWxDb250ZXh0
UmVmPih0b1JlZihtX2ZyYW1lLT5jb3JlRnJhbWUoKS0+c2NyaXB0KCktPmdsb2JhbE9iamVjdCh3
b3JsZCktPmdsb2JhbEV4ZWMoKSkpOwotICAgIEpTT2JqZWN0UmVmIHdpbmRvd09iamVjdCA9IHRv
UmVmKG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5zY3JpcHQoKS0+Z2xvYmFsT2JqZWN0KHdvcmxkKSk7
Ci0KLSAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLmRpZENsZWFyV2lu
ZG93T2JqZWN0Rm9yRnJhbWUod2ViUGFnZSwgbV9mcmFtZSwgY29udGV4dCwgd2luZG93T2JqZWN0
KTsKKyAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZUxvYWRlckNsaWVudCgpLmRpZENsZWFyV2lu
ZG93T2JqZWN0Rm9yRnJhbWVJblNjcmlwdFdvcmxkKHdlYlBhZ2UsIG1fZnJhbWUsIHdvcmxkKTsK
IH0KIAogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZG9jdW1lbnRFbGVtZW50QXZhaWxhYmxl
KCkKSW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29s
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDY2Nzc4KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDktMDMgIEplc3NpZSBCZXJsaW4g
IDxqYmVybGluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbmRpY2F0ZSB3aGljaCBvbmUgb2YgdGhlIFNjcmlwdFdvcmxkcyBmb3Ig
YSBGcmFtZSB0aGUgV2luZG93IE9iamVjdCBoYXMgYmVlbiBjbGVhcmVkIGZvcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTcKKyAgICAgICAgCisg
ICAgICAgIE1ha2UgV2ViS2l0VGVzdFJ1bm5lciB3b3JrIHdpdGggdGhpcyBjaGFuZ2UuCisKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFn
ZS5jcHA6CisgICAgICAgIChXVFI6OkluamVjdGVkQnVuZGxlUGFnZTo6SW5qZWN0ZWRCdW5kbGVQ
YWdlKToKKyAgICAgICAgKFdUUjo6SW5qZWN0ZWRCdW5kbGVQYWdlOjpkaWRDbGVhcldpbmRvd0Zv
ckZyYW1lSW5TY3JpcHRXb3JsZCk6CisgICAgICAgIE1ha2Ugc3VyZSB0aGUgU2NyaXB0V29ybGQg
aGVyZSBpcyB0aGUgbm9ybWFsIHdvcmxkLCBzaW5jZSB0aGF0IGlzIG5vIGxvbmdlciBiZWluZyBk
b25lIGluCisgICAgICAgIFdlYkZyYW1lTG9hZGVyQ2xpZW50LgorICAgICAgICAqIFdlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmg6CisKIDIwMTAtMDkt
MDMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgQWRhbSBSb2Jlbi4KSW5kZXg6IFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJL
aXRUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFn
ZS5jcHAJKHJldmlzaW9uIDY2NzMxKQorKysgV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0z
NSw2ICszNSw3IEBACiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1bmRsZVBhZ2VQcml2YXRlLmg+CiAj
aW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFpblB0ci5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5k
bGVSYW5nZS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVTY3JpcHRXb3JsZC5oPgogCiB1
c2luZyBuYW1lc3BhY2Ugc3RkOwogCkBAIC0xMDQsNyArMTA1LDcgQEAgSW5qZWN0ZWRCdW5kbGVQ
YWdlOjpJbmplY3RlZEJ1bmRsZVBhZ2UoVwogICAgICAgICBkaWRGaW5pc2hMb2FkRm9yRnJhbWUs
CiAgICAgICAgIGRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUsCiAgICAgICAgIGRpZFJlY2Vp
dmVUaXRsZUZvckZyYW1lLAotICAgICAgICBkaWRDbGVhcldpbmRvd0ZvckZyYW1lLAorICAgICAg
ICBkaWRDbGVhcldpbmRvd0ZvckZyYW1lSW5TY3JpcHRXb3JsZCwKICAgICAgICAgZGlkQ2FuY2Vs
Q2xpZW50UmVkaXJlY3RGb3JGcmFtZSwKICAgICAgICAgd2lsbFBlcmZvcm1DbGllbnRSZWRpcmVj
dEZvckZyYW1lLAogICAgICAgICBkaWRDaGFuZ2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZSwK
QEAgLTE5OCw5ICsxOTksOSBAQCB2b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkUmVjZWl2ZVRp
dGxlCiAgICAgc3RhdGljX2Nhc3Q8SW5qZWN0ZWRCdW5kbGVQYWdlKj4oY29uc3RfY2FzdDx2b2lk
Kj4oY2xpZW50SW5mbykpLT5kaWRSZWNlaXZlVGl0bGVGb3JGcmFtZSh0aXRsZSwgZnJhbWUpOwog
fQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZShXS0J1
bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgSlNHbG9iYWxDb250ZXh0
UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIHdpbmRvdywgY29uc3Qgdm9pZCAqY2xpZW50SW5mbykK
K3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlOjpkaWRDbGVhcldpbmRvd0ZvckZyYW1lSW5TY3JpcHRX
b3JsZChXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwgV0tCdW5k
bGVTY3JpcHRXb3JsZFJlZiB3b3JsZCwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbykKIHsKLSAgICBz
dGF0aWNfY2FzdDxJbmplY3RlZEJ1bmRsZVBhZ2UqPihjb25zdF9jYXN0PHZvaWQqPihjbGllbnRJ
bmZvKSktPmRpZENsZWFyV2luZG93Rm9yRnJhbWUoZnJhbWUsIGNvbnRleHQsIHdpbmRvdyk7Cisg
ICAgc3RhdGljX2Nhc3Q8SW5qZWN0ZWRCdW5kbGVQYWdlKj4oY29uc3RfY2FzdDx2b2lkKj4oY2xp
ZW50SW5mbykpLT5kaWRDbGVhcldpbmRvd0ZvckZyYW1lSW5TY3JpcHRXb3JsZChmcmFtZSwgd29y
bGQpOwogfQogCiB2b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkQ2FuY2VsQ2xpZW50UmVkaXJl
Y3RGb3JGcmFtZShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSwg
Y29uc3Qgdm9pZCogY2xpZW50SW5mbykKQEAgLTQxMiwxMSArNDEzLDE3IEBAIHZvaWQgSW5qZWN0
ZWRCdW5kbGVQYWdlOjpkaWRSZWNlaXZlVGl0bGUKICAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVk
KCkub3MoKSA8PCAiVElUTEUgQ0hBTkdFRDogIiA8PCB0aXRsZSA8PCAiXG4iOwogfQogCi12b2lk
IEluamVjdGVkQnVuZGxlUGFnZTo6ZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZShXS0J1bmRsZUZyYW1l
UmVmIGZyYW1lLCBKU0dsb2JhbENvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgd2luZG93
KQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRpZENsZWFyV2luZG93Rm9yRnJhbWVJblNjcmlw
dFdvcmxkKFdLQnVuZGxlRnJhbWVSZWYgZnJhbWUsIFdLQnVuZGxlU2NyaXB0V29ybGRSZWYgd29y
bGQpCiB7CiAgICAgaWYgKCFJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkuaXNUZXN0UnVubmluZygp
KQogICAgICAgICByZXR1cm47CiAKKyAgICBpZiAoV0tCdW5kbGVTY3JpcHRXb3JsZE5vcm1hbFdv
cmxkKCkgIT0gd29ybGQpCisgICAgICAgIHJldHVybjsKKworICAgIEpTR2xvYmFsQ29udGV4dFJl
ZiBjb250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFTY3JpcHRDb250ZXh0Rm9yV29ybGQoZnJh
bWUsIHdvcmxkKTsKKyAgICBKU09iamVjdFJlZiB3aW5kb3cgPSBKU0NvbnRleHRHZXRHbG9iYWxP
YmplY3QoY29udGV4dCk7CisKICAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbiA9IDA7CiAgICAgSW5q
ZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLmxheW91dFRlc3RDb250cm9sbGVyKCktPm1ha2VXaW5kb3dP
YmplY3QoY29udGV4dCwgd2luZG93LCAmZXhjZXB0aW9uKTsKICAgICBJbmplY3RlZEJ1bmRsZTo6
c2hhcmVkKCkuZ2NDb250cm9sbGVyKCktPm1ha2VXaW5kb3dPYmplY3QoY29udGV4dCwgd2luZG93
LCAmZXhjZXB0aW9uKTsKSW5kZXg6IFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuaAkocmV2
aXNpb24gNjY3MzEpCisrKyBXZWJLaXRUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Miw3ICs1Miw3IEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZEZvckZyYW1lKFdLQnVuZGxl
UGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiwgY29uc3Qgdm9pZCopOwogICAgIHN0YXRpYyB2b2lk
IGRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmLCBXS0J1bmRsZUZy
YW1lUmVmLCBjb25zdCB2b2lkKik7CiAgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRpdGxlRm9y
RnJhbWUoV0tCdW5kbGVQYWdlUmVmLCBXS1N0cmluZ1JlZiB0aXRsZSwgV0tCdW5kbGVGcmFtZVJl
ZiwgY29uc3Qgdm9pZCopOwotICAgIHN0YXRpYyB2b2lkIGRpZENsZWFyV2luZG93Rm9yRnJhbWUo
V0tCdW5kbGVQYWdlUmVmLCBXS0J1bmRsZUZyYW1lUmVmLCBKU0dsb2JhbENvbnRleHRSZWYsIEpT
T2JqZWN0UmVmIHdpbmRvdywgY29uc3Qgdm9pZCopOworICAgIHN0YXRpYyB2b2lkIGRpZENsZWFy
V2luZG93Rm9yRnJhbWVJblNjcmlwdFdvcmxkKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFt
ZVJlZiwgV0tCdW5kbGVTY3JpcHRXb3JsZFJlZiwgY29uc3Qgdm9pZCopOwogICAgIHN0YXRpYyB2
b2lkIGRpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9yRnJhbWUoV0tCdW5kbGVQYWdlUmVmLCBXS0J1
bmRsZUZyYW1lUmVmLCBjb25zdCB2b2lkKik7CiAgICAgc3RhdGljIHZvaWQgd2lsbFBlcmZvcm1D
bGllbnRSZWRpcmVjdEZvckZyYW1lKFdLQnVuZGxlUGFnZVJlZiwgV0tCdW5kbGVGcmFtZVJlZiwg
V0tVUkxSZWYgdXJsLCBkb3VibGUgZGVsYXksIGRvdWJsZSBkYXRlLCBjb25zdCB2b2lkKik7CiAg
ICAgc3RhdGljIHZvaWQgZGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWUoV0tCdW5k
bGVQYWdlUmVmLCBXS0J1bmRsZUZyYW1lUmVmLCBjb25zdCB2b2lkKik7CkBAIC02Nyw3ICs2Nyw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRGaW5pc2hMb2FkRm9yRnJhbWUoV0tCdW5kbGVGcmFt
ZVJlZik7CiAgICAgdm9pZCBkaWRGYWlsTG9hZFdpdGhFcnJvckZvckZyYW1lKFdLQnVuZGxlRnJh
bWVSZWYpOwogICAgIHZvaWQgZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUoV0tTdHJpbmdSZWYgdGl0
bGUsIFdLQnVuZGxlRnJhbWVSZWYpOwotICAgIHZvaWQgZGlkQ2xlYXJXaW5kb3dGb3JGcmFtZShX
S0J1bmRsZUZyYW1lUmVmLCBKU0dsb2JhbENvbnRleHRSZWYsIEpTT2JqZWN0UmVmIHdpbmRvdyk7
CisgICAgdm9pZCBkaWRDbGVhcldpbmRvd0ZvckZyYW1lSW5TY3JpcHRXb3JsZChXS0J1bmRsZUZy
YW1lUmVmLCBXS0J1bmRsZVNjcmlwdFdvcmxkUmVmKTsKICAgICB2b2lkIGRpZENhbmNlbENsaWVu
dFJlZGlyZWN0Rm9yRnJhbWUoV0tCdW5kbGVGcmFtZVJlZik7CiAgICAgdm9pZCB3aWxsUGVyZm9y
bUNsaWVudFJlZGlyZWN0Rm9yRnJhbWUoV0tCdW5kbGVGcmFtZVJlZiwgV0tVUkxSZWYgdXJsLCBk
b3VibGUgZGVsYXksIGRvdWJsZSBkYXRlKTsKICAgICB2b2lkIGRpZENoYW5nZUxvY2F0aW9uV2l0
aGluUGFnZUZvckZyYW1lKFdLQnVuZGxlRnJhbWVSZWYpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>