<?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>93175</bug_id>
          
          <creation_ts>2012-08-03 22:38:17 -0700</creation_ts>
          <short_desc>[WK2] Move WebIntentData from Shared to UIProcess</short_desc>
          <delta_ts>2012-08-04 03:29:30 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          <blocked>89072</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kenneth</cc>
    
    <cc>menard</cc>
    
    <cc>rakuco</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>687385</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-08-03 22:38:17 -0700</bug_when>
    <thetext>Move WebIntentData from Shared to UIProcess to prepare for MessagePorts support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687387</commentid>
    <comment_count>1</comment_count>
      <attachid>156516</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-08-03 22:43:48 -0700</bug_when>
    <thetext>Created attachment 156516
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687432</commentid>
    <comment_count>2</comment_count>
      <attachid>156516</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-04 03:29:24 -0700</bug_when>
    <thetext>Comment on attachment 156516
Patch

Clearing flags on attachment: 156516

Committed r124698: &lt;http://trac.webkit.org/changeset/124698&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687433</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-04 03:29:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156516</attachid>
            <date>2012-08-03 22:43:48 -0700</date>
            <delta_ts>2012-08-04 03:29:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>93175_move_webintent.patch</filename>
            <type>text/plain</type>
            <size>16187</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYktp
dDIvQ01ha2VMaXN0cy50eHQKaW5kZXggYTk1ZWJhMS4uNjNhOGNhNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYktpdDIvQ01ha2VMaXN0
cy50eHQKQEAgLTE1OSw3ICsxNTksNiBAQCBTRVQoV2ViS2l0Ml9TT1VSQ0VTCiAgICAgU2hhcmVk
L1dlYkdyYXBoaWNzQ29udGV4dC5jcHAKICAgICBTaGFyZWQvV2ViSGl0VGVzdFJlc3VsdC5jcHAK
ICAgICBTaGFyZWQvV2ViSW1hZ2UuY3BwCi0gICAgU2hhcmVkL1dlYkludGVudERhdGEuY3BwCiAg
ICAgU2hhcmVkL1dlYkludGVudFNlcnZpY2VJbmZvLmNwcAogICAgIFNoYXJlZC9XZWJLZXlib2Fy
ZEV2ZW50LmNwcAogICAgIFNoYXJlZC9XZWJMYXllclRyZWVJbmZvLmNwcApAQCAtMjUzLDYgKzI1
Miw3IEBAIFNFVChXZWJLaXQyX1NPVVJDRVMKICAgICBVSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNl
LmNwcAogICAgIFVJUHJvY2Vzcy9XZWJJY29uRGF0YWJhc2VDbGllbnQuY3BwCiAgICAgVUlQcm9j
ZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcAorICAgIFVJUHJvY2Vzcy9XZWJJbnRlbnREYXRhLmNw
cAogICAgIFVJUHJvY2Vzcy9XZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2VyUHJveHkuY3BwCiAgICAg
VUlQcm9jZXNzL1dlYkxheWVyVHJlZVJlbmRlcmVyLmNwcAogICAgIFVJUHJvY2Vzcy9XZWJMb2Fk
ZXJDbGllbnQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTEzZjMwYi4uODBjNTlhMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM0IEBACisyMDEyLTA4LTAzICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3Bo
ZS5kdW1lekBpbnRlbC5jb20+CisKKyAgICAgICAgW1dLMl0gTW92ZSBXZWJJbnRlbnREYXRhIGZy
b20gU2hhcmVkIHRvIFVJUHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9OTMxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBNb3ZlIFdlYkludGVudERhdGEgZnJvbSBTaGFyZWQgdG8gVUlQcm9jZXNz
IHRvCisgICAgICAgIHByZXBhcmUgZm9yIE1lc3NhZ2VQb3J0cyBzdXBwb3J0IGluIFdLMi4KKwor
ICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06
CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViSW50ZW50RGF0
YS5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50RGF0YS5j
cHAuCisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnRlbnREYXRhOjpX
ZWJJbnRlbnREYXRhKToKKyAgICAgICAgKFdlYktpdDo6V2ViSW50ZW50RGF0YTo6ZGF0YSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkludGVudERhdGE6OnN1Z2dlc3Rpb25zKToKKyAgICAgICAgKFdl
YktpdDo6V2ViSW50ZW50RGF0YTo6ZXh0cmEpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnRlbnRE
YXRhOjpleHRyYXMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJJbnRlbnREYXRhLmg6IFJlbmFt
ZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50RGF0YS5oLgorICAgICAgICAo
V2ViS2l0KToKKyAgICAgICAgKFdlYkludGVudERhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJJ
bnRlbnREYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnRlbnREYXRhOjp+V2Vi
SW50ZW50RGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYkludGVudERhdGE6OmFjdGlvbik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkludGVudERhdGE6OnBheWxvYWRUeXBlKToKKyAgICAgICAgKFdl
YktpdDo6V2ViSW50ZW50RGF0YTo6c2VydmljZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkludGVu
dERhdGE6OnN0b3JlKToKKyAgICAgICAgKFdlYktpdDo6V2ViSW50ZW50RGF0YTo6dHlwZSk6CisK
IDIwMTItMDgtMDMgIEh1Z28gUGFyZW50ZSBMaW1hICA8aHVnby5saW1hQG9wZW5ib3NzYS5vcmc+
CiAKICAgICAgICAgW1F0XVtXSzJdIFRoZXJlJ3Mgbm8gd2F5IHRvIHRlc3QgdGhlIGdlc3R1cmUg
dGFwIG9uIFdUUgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5h
bSBiL1NvdXJjZS9XZWJLaXQyL0dOVW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggZTdhNjRmMC4uZWVm
ZDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvR05VbWFrZWZpbGUubGlzdC5hbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9HTlVtYWtlZmlsZS5saXN0LmFtCkBAIC00NjksOCArNDY5LDYgQEAg
d2Via2l0Ml9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSGl0VGVzdFJl
c3VsdC5oIFwKIAlTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW1hZ2UuY3BwIFwKIAlTb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViSW1hZ2UuaCBcCi0JU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYklu
dGVudERhdGEuY3BwIFwKLQlTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50RGF0YS5oIFwK
IAlTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50U2VydmljZUluZm8uY3BwIFwKIAlTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50U2VydmljZUluZm8uaCBcCiAJU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYktleWJvYXJkRXZlbnQuY3BwIFwKQEAgLTg3MSw2ICs4NjksOCBAQCB3ZWJr
aXQyX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJY29uRGF0YWJh
c2VDbGllbnQuaCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5
LmNwcCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmggXAor
CVNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnRlbnREYXRhLmNwcCBcCisJU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYkludGVudERhdGEuaCBcCiAJU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYktleVZhbHVlU3RvcmFnZU1hbmFnZXJQcm94eS5jcHAgXAogCVNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2VyUHJveHkuaCBcCiAJU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYk1lZGlhQ2FjaGVNYW5hZ2VyUHJveHkuY3BwIFwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJJbnRlbnREYXRhLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJJbnRlbnREYXRhLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOTYxMjhkYi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50
RGF0YS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw3NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDEyIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgot
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
LSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2ViSW50ZW50RGF0YS5oIgotCi0j
aWYgRU5BQkxFKFdFQl9JTlRFTlRTKQotCi0jaW5jbHVkZSAiSW1tdXRhYmxlQXJyYXkuaCIKLSNp
bmNsdWRlICJJbW11dGFibGVEaWN0aW9uYXJ5LmgiCi0jaW5jbHVkZSAiV2ViU3RyaW5nLmgiCi0j
aW5jbHVkZSAiV2ViVVJMLmgiCi0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1XZWJJbnRlbnREYXRh
OjpXZWJJbnRlbnREYXRhKGNvbnN0IEludGVudERhdGEmIHN0b3JlKQotICAgIDogbV9zdG9yZShz
dG9yZSkKLXsKLX0KLQotUGFzc1JlZlB0cjxXZWJTZXJpYWxpemVkU2NyaXB0VmFsdWU+IFdlYklu
dGVudERhdGE6OmRhdGEoKSBjb25zdAotewotICAgIFZlY3Rvcjx1aW50OF90PiBkYXRhQ29weSA9
IG1fc3RvcmUuZGF0YTsKLSAgICByZXR1cm4gV2ViU2VyaWFsaXplZFNjcmlwdFZhbHVlOjphZG9w
dChkYXRhQ29weSk7Ci19Ci0KLVBhc3NSZWZQdHI8SW1tdXRhYmxlQXJyYXk+IFdlYkludGVudERh
dGE6OnN1Z2dlc3Rpb25zKCkgY29uc3QKLXsKLSAgICBjb25zdCBzaXplX3QgbnVtU3VnZ2VzdGlv
bnMgPSBtX3N0b3JlLnN1Z2dlc3Rpb25zLnNpemUoKTsKLSAgICBWZWN0b3I8UmVmUHRyPEFQSU9i
amVjdD4gPiB3a1N1Z2dlc3Rpb25zKG51bVN1Z2dlc3Rpb25zKTsKLSAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgbnVtU3VnZ2VzdGlvbnM7ICsraSkKLSAgICAgICAgd2tTdWdnZXN0aW9uc1tp
XSA9IFdlYlVSTDo6Y3JlYXRlKG1fc3RvcmUuc3VnZ2VzdGlvbnNbaV0pOwotICAgIHJldHVybiBJ
bW11dGFibGVBcnJheTo6YWRvcHQod2tTdWdnZXN0aW9ucyk7Ci19Ci0KLVN0cmluZyBXZWJJbnRl
bnREYXRhOjpleHRyYShjb25zdCBTdHJpbmcmIGtleSkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9z
dG9yZS5leHRyYXMuZ2V0KGtleSk7Ci19Ci0KLVBhc3NSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFy
eT4gV2ViSW50ZW50RGF0YTo6ZXh0cmFzKCkgY29uc3QKLXsKLSAgICBJbW11dGFibGVEaWN0aW9u
YXJ5OjpNYXBUeXBlIHdrRXh0cmFzOwotICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+Ojpjb25z
dF9pdGVyYXRvciBlbmQgPSBtX3N0b3JlLmV4dHJhcy5lbmQoKTsKLSAgICBmb3IgKEhhc2hNYXA8
U3RyaW5nLCBTdHJpbmc+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fc3RvcmUuZXh0cmFzLmJlZ2lu
KCk7IGl0ICE9IGVuZDsgKytpdCkKLSAgICAgICAgd2tFeHRyYXMuc2V0KGl0LT5maXJzdCwgV2Vi
U3RyaW5nOjpjcmVhdGUoaXQtPnNlY29uZCkpOwotICAgIHJldHVybiBJbW11dGFibGVEaWN0aW9u
YXJ5OjphZG9wdCh3a0V4dHJhcyk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5k
aWYgLy8gRU5BQkxFKFdFQl9JTlRFTlRTKQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViSW50ZW50RGF0YS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkludGVudERh
dGEuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGVjZjRhZS4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViSW50ZW50RGF0YS5oCisrKyAvZGV2L251bGwKQEAg
LTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBJbnRlbCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0g
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBXZWJJbnRlbnREYXRh
X2gKLSNkZWZpbmUgV2ViSW50ZW50RGF0YV9oCi0KLSNpZiBFTkFCTEUoV0VCX0lOVEVOVFMpCi0K
LSNpbmNsdWRlICJBUElPYmplY3QuaCIKLSNpbmNsdWRlICJJbnRlbnREYXRhLmgiCi0jaW5jbHVk
ZSAiV2ViU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLWNsYXNzIFdlYkludGVudERhdGEgOiBwdWJsaWMg
QVBJT2JqZWN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgY29uc3QgVHlwZSBBUElUeXBlID0gVHlw
ZUludGVudERhdGE7Ci0KLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJJbnRlbnREYXRhPiBjcmVh
dGUoY29uc3QgSW50ZW50RGF0YSYgc3RvcmUpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IFdlYkludGVudERhdGEoc3RvcmUpKTsKLSAgICB9Ci0KLSAgICB2aXJ0dWFsIH5XZWJJ
bnRlbnREYXRhKCkgeyB9Ci0KLSAgICBjb25zdCBTdHJpbmcmIGFjdGlvbigpIGNvbnN0IHsgcmV0
dXJuIG1fc3RvcmUuYWN0aW9uOyB9Ci0gICAgY29uc3QgU3RyaW5nJiBwYXlsb2FkVHlwZSgpIGNv
bnN0IHsgcmV0dXJuIG1fc3RvcmUudHlwZTsgfQotICAgIGNvbnN0IFdlYkNvcmU6OktVUkwmIHNl
cnZpY2UoKSBjb25zdCB7IHJldHVybiBtX3N0b3JlLnNlcnZpY2U7IH0KLSAgICBQYXNzUmVmUHRy
PFdlYlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gZGF0YSgpIGNvbnN0OwotICAgIFN0cmluZyBleHRy
YShjb25zdCBTdHJpbmcmIGtleSkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxJbW11dGFibGVEaWN0
aW9uYXJ5PiBleHRyYXMoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPEltbXV0YWJsZUFycmF5PiBz
dWdnZXN0aW9ucygpIGNvbnN0OwotCi0gICAgY29uc3QgSW50ZW50RGF0YSYgc3RvcmUoKSBjb25z
dCB7IHJldHVybiBtX3N0b3JlOyB9Ci0KLXByaXZhdGU6Ci0gICAgV2ViSW50ZW50RGF0YShjb25z
dCBJbnRlbnREYXRhJik7Ci0KLSAgICB2aXJ0dWFsIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJu
IEFQSVR5cGU7IH0KLQotICAgIEludGVudERhdGEgbV9zdG9yZTsKLX07Ci0KLX0gLy8gbmFtZXNw
YWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9JTlRFTlRTKQotCi0jZW5kaWYgLy8g
V2ViSW50ZW50RGF0YV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpIGIv
U291cmNlL1dlYktpdDIvVGFyZ2V0LnByaQppbmRleCBlZGVhOWM1Li43MWYwMjdiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJLaXQyL1Rhcmdl
dC5wcmkKQEAgLTExMiw3ICsxMTIsNiBAQCBIRUFERVJTICs9IFwKICAgICBTaGFyZWQvV2ViR3Jh
cGhpY3NDb250ZXh0LmggXAogICAgIFNoYXJlZC9XZWJIaXRUZXN0UmVzdWx0LmggXAogICAgIFNo
YXJlZC9XZWJJbWFnZS5oIFwKLSAgICBTaGFyZWQvV2ViSW50ZW50RGF0YS5oIFwKICAgICBTaGFy
ZWQvV2ViSW50ZW50U2VydmljZUluZm8uaCBcCiAgICAgU2hhcmVkL1dlYkxheWVyVHJlZUluZm8u
aCBcCiAgICAgU2hhcmVkL1dlYk5hdmlnYXRpb25EYXRhU3RvcmUuaCBcCkBAIC0yNjcsNiArMjY2
LDcgQEAgSEVBREVSUyArPSBcCiAgICAgVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZS5oIFwKICAg
ICBVSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlQ2xpZW50LmggXAogICAgIFVJUHJvY2Vzcy9XZWJJ
bnNwZWN0b3JQcm94eS5oIFwKKyAgICBVSVByb2Nlc3MvV2ViSW50ZW50RGF0YS5oIFwKICAgICBV
SVByb2Nlc3MvV2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdlclByb3h5LmggXAogICAgIFVJUHJvY2Vz
cy9XZWJMYXllclRyZWVSZW5kZXJlci5oIFwKICAgICBVSVByb2Nlc3MvV2ViTG9hZGVyQ2xpZW50
LmggXApAQCAtNDk1LDcgKzQ5NSw2IEBAIFNPVVJDRVMgKz0gXAogICAgIFNoYXJlZC9XZWJIaXRU
ZXN0UmVzdWx0LmNwcCBcCiAgICAgU2hhcmVkL1dlYktleWJvYXJkRXZlbnQuY3BwIFwKICAgICBT
aGFyZWQvV2ViSW1hZ2UuY3BwIFwKLSAgICBTaGFyZWQvV2ViSW50ZW50RGF0YS5jcHAgXAogICAg
IFNoYXJlZC9XZWJJbnRlbnRTZXJ2aWNlSW5mby5jcHAgXAogICAgIFNoYXJlZC9XZWJMYXllclRy
ZWVJbmZvLmNwcCBcCiAgICAgU2hhcmVkL1dlYk1vdXNlRXZlbnQuY3BwIFwKQEAgLTYzOCw2ICs2
MzcsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBVSVByb2Nlc3MvV2ViSWNvbkRhdGFiYXNlLmNwcCBc
CiAgICAgVUlQcm9jZXNzL1dlYkljb25EYXRhYmFzZUNsaWVudC5jcHAgXAogICAgIFVJUHJvY2Vz
cy9XZWJJbnNwZWN0b3JQcm94eS5jcHAgXAorICAgIFVJUHJvY2Vzcy9XZWJJbnRlbnREYXRhLmNw
cCBcCiAgICAgVUlQcm9jZXNzL1dlYktleVZhbHVlU3RvcmFnZU1hbmFnZXJQcm94eS5jcHAgXAog
ICAgIFVJUHJvY2Vzcy9XZWJMYXllclRyZWVSZW5kZXJlci5jcHAgXAogICAgIFVJUHJvY2Vzcy9X
ZWJMb2FkZXJDbGllbnQuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJJbnRlbnREYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnRlbnRE
YXRhLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjEyOGRiCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkludGVudERhdGEuY3Bw
CkBAIC0wLDAgKzEsNzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgSW50ZWwgQ29ycG9y
YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJXZWJJbnRlbnREYXRhLmgiCisKKyNpZiBFTkFCTEUoV0VCX0lOVEVOVFMp
CisKKyNpbmNsdWRlICJJbW11dGFibGVBcnJheS5oIgorI2luY2x1ZGUgIkltbXV0YWJsZURpY3Rp
b25hcnkuaCIKKyNpbmNsdWRlICJXZWJTdHJpbmcuaCIKKyNpbmNsdWRlICJXZWJVUkwuaCIKKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK1dlYkludGVudERhdGE6OldlYkludGVudERhdGEoY29uc3Qg
SW50ZW50RGF0YSYgc3RvcmUpCisgICAgOiBtX3N0b3JlKHN0b3JlKQoreworfQorCitQYXNzUmVm
UHRyPFdlYlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gV2ViSW50ZW50RGF0YTo6ZGF0YSgpIGNvbnN0
Cit7CisgICAgVmVjdG9yPHVpbnQ4X3Q+IGRhdGFDb3B5ID0gbV9zdG9yZS5kYXRhOworICAgIHJl
dHVybiBXZWJTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmFkb3B0KGRhdGFDb3B5KTsKK30KKworUGFz
c1JlZlB0cjxJbW11dGFibGVBcnJheT4gV2ViSW50ZW50RGF0YTo6c3VnZ2VzdGlvbnMoKSBjb25z
dAoreworICAgIGNvbnN0IHNpemVfdCBudW1TdWdnZXN0aW9ucyA9IG1fc3RvcmUuc3VnZ2VzdGlv
bnMuc2l6ZSgpOworICAgIFZlY3RvcjxSZWZQdHI8QVBJT2JqZWN0PiA+IHdrU3VnZ2VzdGlvbnMo
bnVtU3VnZ2VzdGlvbnMpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1TdWdnZXN0
aW9uczsgKytpKQorICAgICAgICB3a1N1Z2dlc3Rpb25zW2ldID0gV2ViVVJMOjpjcmVhdGUobV9z
dG9yZS5zdWdnZXN0aW9uc1tpXSk7CisgICAgcmV0dXJuIEltbXV0YWJsZUFycmF5OjphZG9wdCh3
a1N1Z2dlc3Rpb25zKTsKK30KKworU3RyaW5nIFdlYkludGVudERhdGE6OmV4dHJhKGNvbnN0IFN0
cmluZyYga2V5KSBjb25zdAoreworICAgIHJldHVybiBtX3N0b3JlLmV4dHJhcy5nZXQoa2V5KTsK
K30KKworUGFzc1JlZlB0cjxJbW11dGFibGVEaWN0aW9uYXJ5PiBXZWJJbnRlbnREYXRhOjpleHRy
YXMoKSBjb25zdAoreworICAgIEltbXV0YWJsZURpY3Rpb25hcnk6Ok1hcFR5cGUgd2tFeHRyYXM7
CisgICAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG1fc3Rv
cmUuZXh0cmFzLmVuZCgpOworICAgIGZvciAoSGFzaE1hcDxTdHJpbmcsIFN0cmluZz46OmNvbnN0
X2l0ZXJhdG9yIGl0ID0gbV9zdG9yZS5leHRyYXMuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KQor
ICAgICAgICB3a0V4dHJhcy5zZXQoaXQtPmZpcnN0LCBXZWJTdHJpbmc6OmNyZWF0ZShpdC0+c2Vj
b25kKSk7CisgICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KHdrRXh0cmFzKTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0lOVEVO
VFMpCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnRlbnREYXRh
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW50ZW50RGF0YS5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRlY2Y0YWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW50ZW50RGF0YS5oCkBAIC0wLDAgKzEsNzEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV2ViSW50ZW50RGF0YV9oCisjZGVmaW5lIFdlYklu
dGVudERhdGFfaAorCisjaWYgRU5BQkxFKFdFQl9JTlRFTlRTKQorCisjaW5jbHVkZSAiQVBJT2Jq
ZWN0LmgiCisjaW5jbHVkZSAiSW50ZW50RGF0YS5oIgorI2luY2x1ZGUgIldlYlNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisKK25hbWVzcGFjZSBX
ZWJLaXQgeworCitjbGFzcyBXZWJJbnRlbnREYXRhIDogcHVibGljIEFQSU9iamVjdCB7CitwdWJs
aWM6CisgICAgc3RhdGljIGNvbnN0IFR5cGUgQVBJVHlwZSA9IFR5cGVJbnRlbnREYXRhOworCisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViSW50ZW50RGF0YT4gY3JlYXRlKGNvbnN0IEludGVudERh
dGEmIHN0b3JlKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJJbnRlbnRE
YXRhKHN0b3JlKSk7CisgICAgfQorCisgICAgdmlydHVhbCB+V2ViSW50ZW50RGF0YSgpIHsgfQor
CisgICAgY29uc3QgU3RyaW5nJiBhY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3N0b3JlLmFjdGlv
bjsgfQorICAgIGNvbnN0IFN0cmluZyYgcGF5bG9hZFR5cGUoKSBjb25zdCB7IHJldHVybiBtX3N0
b3JlLnR5cGU7IH0KKyAgICBjb25zdCBXZWJDb3JlOjpLVVJMJiBzZXJ2aWNlKCkgY29uc3QgeyBy
ZXR1cm4gbV9zdG9yZS5zZXJ2aWNlOyB9CisgICAgUGFzc1JlZlB0cjxXZWJTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+IGRhdGEoKSBjb25zdDsKKyAgICBTdHJpbmcgZXh0cmEoY29uc3QgU3RyaW5nJiBr
ZXkpIGNvbnN0OworICAgIFBhc3NSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gZXh0cmFzKCkg
Y29uc3Q7CisgICAgUGFzc1JlZlB0cjxJbW11dGFibGVBcnJheT4gc3VnZ2VzdGlvbnMoKSBjb25z
dDsKKworICAgIGNvbnN0IEludGVudERhdGEmIHN0b3JlKCkgY29uc3QgeyByZXR1cm4gbV9zdG9y
ZTsgfQorCitwcml2YXRlOgorICAgIFdlYkludGVudERhdGEoY29uc3QgSW50ZW50RGF0YSYpOwor
CisgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBBUElUeXBlOyB9CisKKyAg
ICBJbnRlbnREYXRhIG1fc3RvcmU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI2Vu
ZGlmIC8vIEVOQUJMRShXRUJfSU5URU5UUykKKworI2VuZGlmIC8vIFdlYkludGVudERhdGFfaAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>