<?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>50170</bug_id>
          
          <creation_ts>2010-11-29 12:22:58 -0800</creation_ts>
          <short_desc>Need a WebKit2 Equivalent of WebSecurityOrigin</short_desc>
          <delta_ts>2010-12-03 09:34:15 -0800</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>InRadar</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>jberlin</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>314558</commentid>
    <comment_count>0</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-11-29 12:22:58 -0800</bug_when>
    <thetext>&lt;rdar://problem/8706761&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316493</commentid>
    <comment_count>1</comment_count>
      <attachid>75428</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-12-02 16:14:17 -0800</bug_when>
    <thetext>Created attachment 75428
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316497</commentid>
    <comment_count>2</comment_count>
      <attachid>75428</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-12-02 16:23:42 -0800</bug_when>
    <thetext>Comment on attachment 75428
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=75428&amp;action=review

You need to add this file to the WebKit2.pro as well.

&gt; WebKit2/Shared/APIObject.h:70
&gt; +        TypeSecurityOrigin,

It seems like there may be use for this object in both processes, so maybe it should go in Shared.

&gt; WebKit2/UIProcess/API/C/WKSecurityOrigin.h:37
&gt; +WK_EXPORT WKSecurityOriginRef WKSecurityOriginCreate(WKStringRef databaseIdentifier);

I don&apos;t like the phrase databaseIdentifier here.

&gt; WebKit2/UIProcess/API/C/WKSecurityOrigin.h:41
&gt; +WK_EXPORT size_t WKSecurityOriginGetPort(WKSecurityOriginRef securityOrigin);

I think it would be reasonable to return an unsigned short here since ports can&apos;t be larger that that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316575</commentid>
    <comment_count>3</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-12-02 18:02:17 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 75428 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=75428&amp;action=review
&gt; 
&gt; You need to add this file to the WebKit2.pro as well.

Done.

&gt; 
&gt; &gt; WebKit2/Shared/APIObject.h:70
&gt; &gt; +        TypeSecurityOrigin,
&gt; 
&gt; It seems like there may be use for this object in both processes, so maybe it should go in Shared.

Done.

&gt; 
&gt; &gt; WebKit2/UIProcess/API/C/WKSecurityOrigin.h:37
&gt; &gt; +WK_EXPORT WKSecurityOriginRef WKSecurityOriginCreate(WKStringRef databaseIdentifier);
&gt; 
&gt; I don&apos;t like the phrase databaseIdentifier here.

Is &quot;identifier&quot; better?

&gt; 
&gt; &gt; WebKit2/UIProcess/API/C/WKSecurityOrigin.h:41
&gt; &gt; +WK_EXPORT size_t WKSecurityOriginGetPort(WKSecurityOriginRef securityOrigin);
&gt; 
&gt; I think it would be reasonable to return an unsigned short here since ports can&apos;t be larger that that.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316847</commentid>
    <comment_count>4</comment_count>
      <attachid>75428</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2010-12-03 09:33:58 -0800</bug_when>
    <thetext>Comment on attachment 75428
Patch

Committed in r73267
https://trac.webkit.org/changeset/73267</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75428</attachid>
            <date>2010-12-02 16:14:17 -0800</date>
            <delta_ts>2010-12-03 09:33:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>addWK2WebSecurityOriginType.patch</filename>
            <type>text/plain</type>
            <size>18740</size>
            <attacher name="Jessie Berlin">jberlin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3MzIwNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTAtMTItMDIgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBO
ZWVkIGEgV2ViS2l0MiBFcXVpdmFsZW50IG9mIFdlYlNlY3VyaXR5T3JpZ2luCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDE3MAorCisgICAgICAgICog
V2ViQ29yZS5leHAuaW46CisgICAgICAgIEV4cG9ydCB0aGUgc3ltYm9sIGZvciBTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlRnJvbURhdGFiYXNlSWRlbnRpZmllci4KKwogMjAxMC0xMi0wMiAgUGF0cmlj
ayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBE
YXJpbiBBZGxlci4KSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5leHAuaW4KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9XZWJDb3JlLmV4cC5pbgkocmV2aXNpb24gNzMyMDEpCisrKyBXZWJDb3JlL1dlYkNv
cmUuZXhwLmluCSh3b3JraW5nIGNvcHkpCkBAIC0zMjIsNiArMzIyLDcgQEAgX19aTjdXZWJDb3Jl
MTRTY2hlbWVSZWdpc3RyeTI0cmVnaXN0ZXJVUgogX19aTjdXZWJDb3JlMTRTY2hlbWVSZWdpc3Ry
eTI1cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZUVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29y
ZTE0U2NoZW1lUmVnaXN0cnkzMnJlZ2lzdGVyVVJMU2NoZW1lQXNFbXB0eURvY3VtZW50RVJLTjNX
VEY2U3RyaW5nRQogX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjE0dGhyZWFkc2FmZUNvcHlF
dgorX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjI4Y3JlYXRlRnJvbURhdGFiYXNlSWRlbnRp
ZmllckVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmlnaW4xNmNyZWF0
ZUZyb21TdHJpbmdFUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNFNlY3VyaXR5T3JpZ2lu
MThzZXRMb2NhbExvYWRQb2xpY3lFTlMwXzE1TG9jYWxMb2FkUG9saWN5RQogX19aTjdXZWJDb3Jl
MTRTZWN1cml0eU9yaWdpbjE4c2hvdWxkSGlkZVJlZmVycmVyRVJLTlNfNEtVUkxFUktOM1dURjZT
dHJpbmdFCkluZGV4OiBXZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL0No
YW5nZUxvZwkocmV2aXNpb24gNzMyMDcpCisrKyBXZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDQ0IEBACisyMDEwLTEyLTAyICBKZXNzaWUgQmVybGluICA8amJlcmxp
bkBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgTmVlZCBhIFdlYktpdDIgRXF1aXZhbGVudCBvZiBXZWJTZWN1cml0eU9yaWdpbgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTAxNzAKKworICAg
ICAgICAqIFNoYXJlZC9BUEkvYy9XS0Jhc2UuaDoKKyAgICAgICAgQWRkIHRoZSBXS1NlY3VyaXR5
T3JpZ2luUmVmIHR5cGVkZWYuCisKKyAgICAgICAgKiBTaGFyZWQvQVBJT2JqZWN0Lmg6CisgICAg
ICAgIEFkZCB0aGUgU2VjdXJpdHlPcmlnaW4gdHlwZSBhcyBhIFVJUHJvY2VzcyB0eXBlLgorCisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oOgorICAgICAgICBBZGQgdGhlIG1h
cHBpbmcgYmV0d2VlbiBXS1NlY3VyaXR5T3JpZ2luUmVmIGFuZCBXZWJTZWN1cml0eU9yaWdpbi4K
KworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1NlY3VyaXR5T3JpZ2luLmNwcDogQWRkZWQu
CisgICAgICAgIChXS1NlY3VyaXR5T3JpZ2luR2V0VHlwZUlEKToKKyAgICAgICAgKFdLU2VjdXJp
dHlPcmlnaW5DcmVhdGUpOgorICAgICAgICAoV0tTZWN1cml0eU9yaWdpbkdldFByb3RvY29sKToK
KyAgICAgICAgKFdLU2VjdXJpdHlPcmlnaW5HZXRIb3N0KToKKyAgICAgICAgKFdLU2VjdXJpdHlP
cmlnaW5HZXRQb3J0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tTZWN1cml0eU9yaWdp
bi5oOiBBZGRlZC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJTZWN1cml0eU9yaWdpbi5oOiBB
ZGRlZC4KKyAgICAgICAgKFdlYktpdDo6V2ViU2VjdXJpdHlPcmlnaW46OmNyZWF0ZSk6CisgICAg
ICAgIENyZWF0ZSBiYXNlZCBvbiB0aGUgZGF0YWJhc2UgaWRlbnRpZmllciwgd2hpY2ggY29udGFp
bnMgdGhlIHByb3RvY29sLCBob3N0IGFuZCBwb3J0LgorICAgICAgICAoV2ViS2l0OjpXZWJTZWN1
cml0eU9yaWdpbjo6cHJvdG9jb2wpOgorICAgICAgICAoV2ViS2l0OjpXZWJTZWN1cml0eU9yaWdp
bjo6aG9zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlNlY3VyaXR5T3JpZ2luOjpwb3J0KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViU2VjdXJpdHlPcmlnaW46OmRhdGFiYXNlSWRlbnRpZmllcik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlNlY3VyaXR5T3JpZ2luOjpXZWJTZWN1cml0eU9yaWdpbik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlNlY3VyaXR5T3JpZ2luOjp0eXBlKToKKworICAgICAgICAqIFdl
YktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiB3aW4vV2ViS2l0Mi52
Y3Byb2o6CisgICAgICAgIEFkZCB0aGUgV2ViU2VjdXJpdHlPcmlnaW4uaCBhbmQgV0tTZWN1cml0
eU9yaWdpbi5jcHAvLmguCisKKyAgICAgICAgKiB3aW4vV2ViS2l0MkdlbmVyYXRlZC5tYWtlOgor
ICAgICAgICBNYWtlIHN1cmUgV0tTZWN1cml0eU9yaWdpbi5oIGZpbGUgZ2V0cyBjb3BpZWQgb3Zl
ciB0byB0aGUgV2ViS2l0QnVpbGQgZGlyZWN0b3J5IG9uIFdpbmRvd3MuCisKIDIwMTAtMTItMDIg
IEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0Mi9TaGFyZWQvQVBJT2JqZWN0LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0Mi9TaGFyZWQvQVBJT2JqZWN0LmgJKHJldmlzaW9uIDczMjAxKQorKysg
V2ViS2l0Mi9TaGFyZWQvQVBJT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTY3LDYgKzY3LDcg
QEAgcHVibGljOgogICAgICAgICBUeXBlUGFnZUdyb3VwLAogICAgICAgICBUeXBlUGFnZU5hbWVz
cGFjZSwKICAgICAgICAgVHlwZVByZWZlcmVuY2VzLAorICAgICAgICBUeXBlU2VjdXJpdHlPcmln
aW4sCiAKICAgICAgICAgLy8gQnVuZGxlIHR5cGVzCiAgICAgICAgIFR5cGVCdW5kbGUsCkluZGV4
OiBXZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Jhc2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL1No
YXJlZC9BUEkvYy9XS0Jhc2UuaAkocmV2aXNpb24gNzMyMDEpCisrKyBXZWJLaXQyL1NoYXJlZC9B
UEkvYy9XS0Jhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsNyBAQCB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBPcGFxdWVXS1BhZ2UqIFdLUGFnCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFx
dWVXS1BhZ2VHcm91cCogV0tQYWdlR3JvdXBSZWY7CiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBPcGFx
dWVXS1BhZ2VOYW1lc3BhY2UqIFdLUGFnZU5hbWVzcGFjZVJlZjsKIHR5cGVkZWYgY29uc3Qgc3Ry
dWN0IE9wYXF1ZVdLUHJlZmVyZW5jZXMqIFdLUHJlZmVyZW5jZXNSZWY7Cit0eXBlZGVmIGNvbnN0
IHN0cnVjdCBPcGFxdWVXS1NlY3VyaXR5T3JpZ2luKiBXS1NlY3VyaXR5T3JpZ2luUmVmOwogCiAv
KiBXZWJLaXQyIEJ1bmRsZSB0eXBlcyAqLwogCkluZGV4OiBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJT
ZWN1cml0eU9yaWdpbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlNlY3Vy
aXR5T3JpZ2luLmgJKHJldmlzaW9uIDApCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJTZWN1cml0
eU9yaWdpbi5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDY2IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBXZWJTZWN1cml0eU9yaWdpbl9oCisjZGVmaW5lIFdlYlNlY3VyaXR5T3JpZ2luX2gKKwor
I2luY2x1ZGUgIkFQSU9iamVjdC5oIgorI2luY2x1ZGUgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4u
aD4KKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKwor
Y2xhc3MgV2ViU2VjdXJpdHlPcmlnaW4gOiBwdWJsaWMgQVBJT2JqZWN0IHsKK3B1YmxpYzoKKyAg
ICBzdGF0aWMgY29uc3QgVHlwZSBBUElUeXBlID0gVHlwZVNlY3VyaXR5T3JpZ2luOworCisgICAg
c3RhdGljIFBhc3NSZWZQdHI8V2ViU2VjdXJpdHlPcmlnaW4+IGNyZWF0ZShjb25zdCBTdHJpbmcm
IGRhdGFiYXNlSWRlbnRpZmllcikKKyAgICB7CisgICAgICAgIFJlZlB0cjxXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4gPSBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbjo6Y3Jl
YXRlRnJvbURhdGFiYXNlSWRlbnRpZmllcihkYXRhYmFzZUlkZW50aWZpZXIpOworICAgICAgICBp
ZiAoIXNlY3VyaXR5T3JpZ2luKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgV2ViU2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlPcmlnaW4ucmVsZWFzZSgp
KSk7CisgICAgfQorCisgICAgY29uc3QgU3RyaW5nIHByb3RvY29sKCkgY29uc3QgeyByZXR1cm4g
bV9zZWN1cml0eU9yaWdpbi0+ZG9tYWluKCk7IH0KKyAgICBjb25zdCBTdHJpbmcgaG9zdCgpIGNv
bnN0IHsgcmV0dXJuIG1fc2VjdXJpdHlPcmlnaW4tPmhvc3QoKTsgfQorICAgIHVuc2lnbmVkIHNo
b3J0IHBvcnQoKSBjb25zdCB7IHJldHVybiBtX3NlY3VyaXR5T3JpZ2luLT5wb3J0KCk7IH0KKwor
ICAgIGNvbnN0IFN0cmluZyBkYXRhYmFzZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Nl
Y3VyaXR5T3JpZ2luLT5kYXRhYmFzZUlkZW50aWZpZXIoKTsgfQorCitwcml2YXRlOgorICAgIFdl
YlNlY3VyaXR5T3JpZ2luKFBhc3NSZWZQdHI8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4+IHNlY3Vy
aXR5T3JpZ2luKQorICAgICAgICA6IG1fc2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlPcmlnaW4pCisg
ICAgeworICAgIH0KKworICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gQVBJ
VHlwZTsgfQorCisgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBtX3NlY3VyaXR5
T3JpZ2luOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZgpJbmRleDogV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgJKHJldmlzaW9uIDczMjAxKQorKysgV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDcg
QEAgY2xhc3MgV2ViUGFnZUdyb3VwOwogY2xhc3MgV2ViUGFnZU5hbWVzcGFjZTsKIGNsYXNzIFdl
YlBhZ2VQcm94eTsKIGNsYXNzIFdlYlByZWZlcmVuY2VzOworY2xhc3MgV2ViU2VjdXJpdHlPcmln
aW47CiAKIFdLX0FERF9BUElfTUFQUElORyhXS0JhY2tGb3J3YXJkTGlzdEl0ZW1SZWYsIFdlYkJh
Y2tGb3J3YXJkTGlzdEl0ZW0pCiBXS19BRERfQVBJX01BUFBJTkcoV0tCYWNrRm9yd2FyZExpc3RS
ZWYsIFdlYkJhY2tGb3J3YXJkTGlzdCkKQEAgLTY1LDYgKzY2LDcgQEAgV0tfQUREX0FQSV9NQVBQ
SU5HKFdLUGFnZUdyb3VwUmVmLCBXZWJQYQogV0tfQUREX0FQSV9NQVBQSU5HKFdLUGFnZU5hbWVz
cGFjZVJlZiwgV2ViUGFnZU5hbWVzcGFjZSkKIFdLX0FERF9BUElfTUFQUElORyhXS1BhZ2VSZWYs
IFdlYlBhZ2VQcm94eSkKIFdLX0FERF9BUElfTUFQUElORyhXS1ByZWZlcmVuY2VzUmVmLCBXZWJQ
cmVmZXJlbmNlcykKK1dLX0FERF9BUElfTUFQUElORyhXS1NlY3VyaXR5T3JpZ2luUmVmLCBXZWJT
ZWN1cml0eU9yaWdpbikKIAogLyogRW51bSBjb252ZXJzaW9ucyAqLwogCkluZGV4OiBXZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1NlY3VyaXR5T3JpZ2luLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1NlY3VyaXR5T3JpZ2luLmNwcAkocmV2aXNpb24gMCkKKysr
IFdlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLU2VjdXJpdHlPcmlnaW4uY3BwCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgIldLU2VjdXJpdHlPcmln
aW4uaCIKKworI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgorI2luY2x1ZGUgIldlYlNlY3VyaXR5T3Jp
Z2luLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CisKK1dLVHlwZUlEIFdLU2VjdXJpdHlP
cmlnaW5HZXRUeXBlSUQoKQoreworICAgIHJldHVybiB0b0FQSShXZWJTZWN1cml0eU9yaWdpbjo6
QVBJVHlwZSk7Cit9CisKK1dLU2VjdXJpdHlPcmlnaW5SZWYgV0tTZWN1cml0eU9yaWdpbkNyZWF0
ZShXS1N0cmluZ1JlZiBkYXRhYmFzZUlkZW50aWZpZXIpCit7CisgICAgUmVmUHRyPFdlYlNlY3Vy
aXR5T3JpZ2luPiBzZWN1cml0eU9yaWdpbiA9IFdlYlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUodG9J
bXBsKGRhdGFiYXNlSWRlbnRpZmllciktPnN0cmluZygpKTsKKyAgICByZXR1cm4gdG9BUEkoc2Vj
dXJpdHlPcmlnaW4ucmVsZWFzZSgpLmxlYWtSZWYoKSk7Cit9CisKK1dLU3RyaW5nUmVmIFdLU2Vj
dXJpdHlPcmlnaW5HZXRQcm90b2NvbChXS1NlY3VyaXR5T3JpZ2luUmVmIHNlY3VyaXR5T3JpZ2lu
KQoreworICAgIHJldHVybiB0b0NvcGllZEFQSSh0b0ltcGwoc2VjdXJpdHlPcmlnaW4pLT5wcm90
b2NvbCgpKTsKK30KKworV0tTdHJpbmdSZWYgV0tTZWN1cml0eU9yaWdpbkdldEhvc3QoV0tTZWN1
cml0eU9yaWdpblJlZiBzZWN1cml0eU9yaWdpbikKK3sKKyAgICByZXR1cm4gdG9Db3BpZWRBUEko
dG9JbXBsKHNlY3VyaXR5T3JpZ2luKS0+aG9zdCgpKTsKK30KKworc2l6ZV90IFdLU2VjdXJpdHlP
cmlnaW5HZXRQb3J0KFdLU2VjdXJpdHlPcmlnaW5SZWYgc2VjdXJpdHlPcmlnaW4pCit7CisgICAg
cmV0dXJuIHRvSW1wbChzZWN1cml0eU9yaWdpbiktPnBvcnQoKTsKK30KSW5kZXg6IFdlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLU2VjdXJpdHlPcmlnaW4uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1NlY3VyaXR5T3JpZ2luLmgJKHJldmlzaW9uIDApCisrKyBXZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1NlY3VyaXR5T3JpZ2luLmgJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFdLU2VjdXJpdHlPcmlnaW5faAorI2Rl
ZmluZSBXS1NlY3VyaXR5T3JpZ2luX2gKKworI2luY2x1ZGUgPFdlYktpdDIvV0tCYXNlLmg+CisK
KyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworV0tfRVhQT1JUIFdL
VHlwZUlEIFdLU2VjdXJpdHlPcmlnaW5HZXRUeXBlSUQoKTsKKworV0tfRVhQT1JUIFdLU2VjdXJp
dHlPcmlnaW5SZWYgV0tTZWN1cml0eU9yaWdpbkNyZWF0ZShXS1N0cmluZ1JlZiBkYXRhYmFzZUlk
ZW50aWZpZXIpOworCitXS19FWFBPUlQgV0tTdHJpbmdSZWYgV0tTZWN1cml0eU9yaWdpbkdldFBy
b3RvY29sKFdLU2VjdXJpdHlPcmlnaW5SZWYgc2VjdXJpdHlPcmlnaW4pOworV0tfRVhQT1JUIFdL
U3RyaW5nUmVmIFdLU2VjdXJpdHlPcmlnaW5HZXRIb3N0KFdLU2VjdXJpdHlPcmlnaW5SZWYgc2Vj
dXJpdHlPcmlnaW4pOworV0tfRVhQT1JUIHNpemVfdCBXS1NlY3VyaXR5T3JpZ2luR2V0UG9ydChX
S1NlY3VyaXR5T3JpZ2luUmVmIHNlY3VyaXR5T3JpZ2luKTsKKworI2lmZGVmIF9fY3BsdXNwbHVz
Cit9CisjZW5kaWYKKworI2VuZGlmIC8qIFdLU2VjdXJpdHlPcmlnaW5faCAqLwpJbmRleDogV2Vi
S2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDczMjAxKQor
KysgV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29w
eSkKQEAgLTU1OCw2ICs1NTgsOSBAQAogCQlGNjExM0UyODEyNkNFMTlCMDA1N0QwQTcgLyogV0tV
c2VyQ29udGVudFVSTFBhdHRlcm4uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjYxMTNFMjYxMjZDRTE5QjAwNTdEMEE3IC8qIFdLVXNlckNvbnRlbnRV
UkxQYXR0ZXJuLmNwcCAqLzsgfTsKIAkJRjYxMTNFMjkxMjZDRTE5QjAwNTdEMEE3IC8qIFdLVXNl
ckNvbnRlbnRVUkxQYXR0ZXJuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGNjExM0UyNzEyNkNFMTlCMDA1N0QwQTcgLyogV0tVc2VyQ29udGVudFVSTFBh
dHRlcm4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJ
CUY2N0REN0JBMTI1RTQwRDkwMDdCRENCOCAvKiBXS1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZVByaXZh
dGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY2N0RE
N0I5MTI1RTQwRDkwMDdCRENCOCAvKiBXS1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZVByaXZhdGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGNkMxMTRB
MDEyQTg2MDI0MDBFOUZFRkMgLyogV2ViU2VjdXJpdHlPcmlnaW4uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY2QzExNDlGMTJBODYwMjQwMEU5RkVGQyAv
KiBXZWJTZWN1cml0eU9yaWdpbi5oICovOyB9OworCQlGNkMxMTRBODEyQTg2MDdCMDBFOUZFRkMg
LyogV0tTZWN1cml0eU9yaWdpbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGNkMxMTRBNjEyQTg2MDdCMDBFOUZFRkMgLyogV0tTZWN1cml0eU9yaWdp
bi5jcHAgKi87IH07CisJCUY2QzExNEE5MTJBODYwN0IwMEU5RkVGQyAvKiBXS1NlY3VyaXR5T3Jp
Z2luLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNkMx
MTRBNzEyQTg2MDdCMDBFOUZFRkMgLyogV0tTZWN1cml0eU9yaWdpbi5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKIC8qIEVuZCBQQlhCdWlsZEZpbGUgc2Vj
dGlvbiAqLwogCiAvKiBCZWdpbiBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLwpAQCAt
MTE3OCw2ICsxMTgxLDkgQEAKIAkJRjYxMTNFMjYxMjZDRTE5QjAwNTdEMEE3IC8qIFdLVXNlckNv
bnRlbnRVUkxQYXR0ZXJuLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFdLVXNlckNvbnRlbnRVUkxQYXR0ZXJuLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRjYxMTNFMjcxMjZDRTE5QjAwNTdEMEE3IC8qIFdLVXNlckNvbnRlbnRVUkxQYXR0ZXJuLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLVXNlckNvbnRlbnRVUkxQYXR0ZXJu
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY2N0REN0I5MTI1RTQwRDkwMDdCRENC
OCAvKiBXS1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZVByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV0tTZXJpYWxpemVkU2NyaXB0VmFsdWVQcml2YXRlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2QzExNDlGMTJBODYwMjQwMEU5RkVGQyAvKiBXZWJTZWN1
cml0eU9yaWdpbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJTZWN1cml0
eU9yaWdpbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNkMxMTRBNjEyQTg2MDdC
MDBFOUZFRkMgLyogV0tTZWN1cml0eU9yaWdpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXS1NlY3VyaXR5T3JpZ2luLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRjZDMTE0QTcxMkE4NjA3QjAwRTlGRUZDIC8qIFdLU2VjdXJpdHlPcmlnaW4uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tTZWN1cml0eU9yaWdpbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogLyogRW5kIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZSBzZWN0aW9uICovCkBAIC0xNzc5
LDYgKzE3ODUsNyBAQAogCQkJCUJDMTExQjBEMTEyRjVFNEYwMDMzN0JBQiAvKiBXZWJQcm9jZXNz
UHJveHkuY3BwICovLAogCQkJCUJDMDMyRENGMTBGNDM4OUYwMDU4QzE1QSAvKiBXZWJQcm9jZXNz
UHJveHkuaCAqLywKIAkJCQlCQ0VFN0FCMzEyODE3MDk1MDA5ODI3REEgLyogV2ViUHJvY2Vzc1By
b3h5Lm1lc3NhZ2VzLmluICovLAorCQkJCUY2QzExNDlGMTJBODYwMjQwMEU5RkVGQyAvKiBXZWJT
ZWN1cml0eU9yaWdpbi5oICovLAogCQkJCTFBNTk0QUI4MTEyQTFGQjYwMDlERTdDNyAvKiBXZWJV
SUNsaWVudC5jcHAgKi8sCiAJCQkJMUE1OTRBQjkxMTJBMUZCNjAwOURFN0M3IC8qIFdlYlVJQ2xp
ZW50LmggKi8sCiAJCQkpOwpAQCAtMTgzMiw2ICsxODM5LDggQEAKIAkJCQlCQ0Q1OTdDRjExMkI1
NkFDMDBFQzhDMjMgLyogV0tQcmVmZXJlbmNlcy5jcHAgKi8sCiAJCQkJQkNENTk3Q0UxMTJCNTZB
QzAwRUM4QzIzIC8qIFdLUHJlZmVyZW5jZXMuaCAqLywKIAkJCQk3NjJCNzQ4NDEyMEJCQTJEMDA4
MTkzMzkgLyogV0tQcmVmZXJlbmNlc1ByaXZhdGUuaCAqLywKKwkJCQlGNkMxMTRBNjEyQTg2MDdC
MDBFOUZFRkMgLyogV0tTZWN1cml0eU9yaWdpbi5jcHAgKi8sCisJCQkJRjZDMTE0QTcxMkE4NjA3
QjAwRTlGRUZDIC8qIFdLU2VjdXJpdHlPcmlnaW4uaCAqLywKIAkJCSk7CiAJCQlwYXRoID0gQzsK
IAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0yNDMxLDYgKzI0NDAsNyBAQAogCQkJCUJD
NDA3NUZFMTI0RkYwMjcwMDY4RjIwQSAvKiBXS011dGFibGVBcnJheS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkM0MDc2MDAxMjRGRjAyNzAwNjhGMjBBIC8qIFdLTXV0YWJsZURpY3Rpb25hcnkuaCBp
biBIZWFkZXJzICovLAogCQkJCUJDNDA3NjAyMTI0RkYwMjcwMDY4RjIwQSAvKiBXS051bWJlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRjZDMTE0QTkxMkE4NjA3QjAwRTlGRUZDIC8qIFdLU2VjdXJp
dHlPcmlnaW4uaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNDA3NjA0MTI0RkYwMjcwMDY4RjIwQSAv
KiBXS1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM0MDc2MDYx
MjRGRjAyNzAwNjhGMjBBIC8qIFdLU3RyaW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzQwNzYw
ODEyNEZGMDI3MDA2OEYyMEEgLyogV0tUeXBlLmggaW4gSGVhZGVycyAqLywKQEAgLTI1MTksNiAr
MjUyOSw3IEBACiAJCQkJQkM3QjYzMzcxMkE0NUFCQTAwRDE3NEE0IC8qIFdLUGFnZUdyb3VwLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCQzdCNjMzRDEyQTQ1RDEyMDBEMTc0QTQgLyogV0tCdW5kbGVQ
YWdlR3JvdXAuaCBpbiBIZWFkZXJzICovLAogCQkJCTM3RjYyM0I4MTJBNTdCNjIwMEUzRkRGNiAv
KiBXS0ZpbmRPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNkMxMTRBMDEyQTg2MDI0MDBF
OUZFRkMgLyogV2ViU2VjdXJpdHlPcmlnaW4uaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1
bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjkxNCw2ICsy
OTI1LDcgQEAKIAkJCQkxQUE0NzkyMzEyQTU5RkQ5MDA4MjM2QzMgLyogUGx1Z2luUHJvY2Vzc01h
Yy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUJDODRFQjE4MTJBNzEwMEMwMDgzRjJEQSAvKiBXZWJQ
cmVmZXJlbmNlc01hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUJDMkRGQkEzMTJBNzYxQTUwMEU3
MzJBMyAvKiBXZWJQcmVmZXJlbmNlc0NGLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUY2QzExNEE4
MTJBODYwN0IwMEU5RkVGQyAvKiBXS1NlY3VyaXR5T3JpZ2luLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJ
bmRleDogV2ViS2l0Mi93aW4vV2ViS2l0Mi52Y3Byb2oKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi93
aW4vV2ViS2l0Mi52Y3Byb2oJKHJldmlzaW9uIDczMjAxKQorKysgV2ViS2l0Mi93aW4vV2ViS2l0
Mi52Y3Byb2oJKHdvcmtpbmcgY29weSkKQEAgLTE5OTUsNiArMTk5NSwxMCBAQAogCQkJCT4KIAkJ
CTwvRmlsZT4KIAkJCTxGaWxlCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxVSVByb2Nlc3NcV2ViU2Vj
dXJpdHlPcmlnaW4uaCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8RmlsZQogCQkJCVJlbGF0aXZl
UGF0aD0iLi5cVUlQcm9jZXNzXFdlYlVJQ2xpZW50LmNwcCIKIAkJCQk+CiAJCQk8L0ZpbGU+CkBA
IC0yMTQ0LDYgKzIxNDgsMTQgQEAKIAkJCQkJCVJlbGF0aXZlUGF0aD0iLi5cVUlQcm9jZXNzXEFQ
SVxDXFdLUHJlZmVyZW5jZXNQcml2YXRlLmgiCiAJCQkJCQk+CiAJCQkJCTwvRmlsZT4KKwkJCQkJ
PEZpbGUKKwkJCQkJCVJlbGF0aXZlUGF0aD0iLi5cVUlQcm9jZXNzXEFQSVxDXFdLU2VjdXJpdHlP
cmlnaW4uY3BwIgorCQkJCQkJPgorCQkJCQk8L0ZpbGU+CisJCQkJCTxGaWxlCisJCQkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXFVJUHJvY2Vzc1xBUElcQ1xXS1NlY3VyaXR5T3JpZ2luLmgiCisJCQkJCQk+
CisJCQkJCTwvRmlsZT4KIAkJCQkJPEZpbHRlcgogCQkJCQkJTmFtZT0id2luIgogCQkJCQkJPgpJ
bmRleDogV2ViS2l0Mi93aW4vV2ViS2l0MkdlbmVyYXRlZC5tYWtlCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdDIvd2luL1dlYktpdDJHZW5lcmF0ZWQubWFrZQkocmV2aXNpb24gNzMyMDEpCisrKyBXZWJL
aXQyL3dpbi9XZWJLaXQyR2VuZXJhdGVkLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3
LDcgQEAgYWxsOgogICAgIHhjb3B5IC95IC9kICIuLlxVSVByb2Nlc3NcQVBJXENcV0tQYWdlTmFt
ZXNwYWNlLmgiICIkKFdFQktJVE9VVFBVVERJUilcaW5jbHVkZVxXZWJLaXQyIgogICAgIHhjb3B5
IC95IC9kICIuLlxVSVByb2Nlc3NcQVBJXENcV0tQcmVmZXJlbmNlcy5oIiAiJChXRUJLSVRPVVRQ
VVRESVIpXGluY2x1ZGVcV2ViS2l0MiIKICAgICB4Y29weSAveSAvZCAiLi5cVUlQcm9jZXNzXEFQ
SVxDXFdLUHJlZmVyZW5jZXNQcml2YXRlLmgiICIkKFdFQktJVE9VVFBVVERJUilcaW5jbHVkZVxX
ZWJLaXQyIgorICAgIHhjb3B5IC95IC9kICIuLlxVSVByb2Nlc3NcQVBJXENcV0tTZWN1cml0eU9y
aWdpbi5oIiAiJChXRUJLSVRPVVRQVVRESVIpXGluY2x1ZGVcV2ViS2l0MiIKICAgICB4Y29weSAv
eSAvZCAiLi5cVUlQcm9jZXNzXEFQSVxDXHdpblxXS0NvbnRleHRQcml2YXRlV2luLmgiICIkKFdF
QktJVE9VVFBVVERJUilcaW5jbHVkZVxXZWJLaXQyIgogICAgIHhjb3B5IC95IC9kICIuLlxVSVBy
b2Nlc3NcQVBJXENcd2luXFdLVmlldy5oIiAiJChXRUJLSVRPVVRQVVRESVIpXGluY2x1ZGVcV2Vi
S2l0MiIKICAgICB4Y29weSAveSAvZCAiLi5cVUlQcm9jZXNzXEFQSVxDXHdpblxXS1ZpZXdQcml2
YXRlLmgiICIkKFdFQktJVE9VVFBVVERJUilcaW5jbHVkZVxXZWJLaXQyIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>