<?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>40570</bug_id>
          
          <creation_ts>2010-06-14 07:59:06 -0700</creation_ts>
          <short_desc>CPP bindings missing some APIs</short_desc>
          <delta_ts>2010-06-19 09:21:20 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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>0</everconfirmed>
          <reporter name="Kartikaya Gupta">lists.bugzilla</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>staikos</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>237818</commentid>
    <comment_count>0</comment_count>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 07:59:06 -0700</bug_when>
    <thetext>The CPP bindings landed in r60784 (see bug 38279) are missing some bindings. Specifically, bindings for the NodeFilter API, some custom methods in HTMLCollection and HTMLOptionsCollection, some EventTarget type-determining methods, and DOMWindow bindings are missing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237820</commentid>
    <comment_count>1</comment_count>
      <attachid>58647</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 08:00:22 -0700</bug_when>
    <thetext>Created attachment 58647
Patch to hook up NodeFilter API to CPP bindings

Patch is lacking ChangeLog modifications; this should be done before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237824</commentid>
    <comment_count>2</comment_count>
      <attachid>58648</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 08:01:38 -0700</bug_when>
    <thetext>Created attachment 58648
Add missing custom methods for HTMLCollection and HTMLOptionsCollection

Patch is missing ChangeLog modification, this needs to be done before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237826</commentid>
    <comment_count>3</comment_count>
      <attachid>58650</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 08:02:32 -0700</bug_when>
    <thetext>Created attachment 58650
Fix CPP bindings for DOMWindow

Patch is missing ChangeLog modification, needs to be done before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237828</commentid>
    <comment_count>4</comment_count>
      <attachid>58652</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 08:07:25 -0700</bug_when>
    <thetext>Created attachment 58652
Patch for EventTarget bindings

This patch has a bug somewhere that I&apos;m currently tracking down, but uploading anyway for pre-review since it&apos;s an ugly patch and any suggestions for improvement would be welcome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237877</commentid>
    <comment_count>5</comment_count>
      <attachid>58666</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 10:00:09 -0700</bug_when>
    <thetext>Created attachment 58666
Patch for EventTarget bindings (v2)

Updated patch for EventTarget bindings, with the bug fixed. As with previous patches, the ChangeLog will need to be updated prior to landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237884</commentid>
    <comment_count>6</comment_count>
      <attachid>58668</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-14 10:10:37 -0700</bug_when>
    <thetext>Created attachment 58668
Fix CPP bindings for DOMWindow (v2)

Updated patch that should apply cleanly on upstream webkit (excludes patch to a file that is only in the olympia branch).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238243</commentid>
    <comment_count>7</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-06-14 22:32:46 -0700</bug_when>
    <thetext>Hey Kats,

can you please upload a single combined patch for the fixes? (Alternative would be to create one bug per patch, but I think a combined one is fine). Also the patch is missing a proper ChangeLog, please create the template using &quot;prepare-ChangeLog --bug=40570&quot; and include it in the patch. I&apos;m happy to r+ them afterwards!

Cheers,
Niko</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238369</commentid>
    <comment_count>8</comment_count>
      <attachid>58774</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-15 07:12:05 -0700</bug_when>
    <thetext>Created attachment 58774
Unified patch with ChangeLog

Merge previous four patches into one, and add a proper ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238703</commentid>
    <comment_count>9</comment_count>
      <attachid>58774</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-06-16 00:33:14 -0700</bug_when>
    <thetext>Comment on attachment 58774
Unified patch with ChangeLog

Looks great, r=me!
The ChangeLog shouldn&apos;t say No tests (OOPS). But I&apos;ll fix that after commitqueeue lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239744</commentid>
    <comment_count>10</comment_count>
      <attachid>59070</attachid>
    <who name="Kartikaya Gupta">lists.bugzilla</who>
    <bug_when>2010-06-17 21:36:04 -0700</bug_when>
    <thetext>Created attachment 59070
Unified patch (v2)

Updated with a few style fixes from Dan Bates as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239745</commentid>
    <comment_count>11</comment_count>
      <attachid>59070</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-17 21:36:23 -0700</bug_when>
    <thetext>Comment on attachment 59070
Unified patch (v2)

Rejecting patch 59070 from commit-queue.

lists.bugzilla@stakface.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/webkitpy/common/config/committers.py.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in WebKitTools/Scripts/webkitpy/common/config/committers.py by adding yourself to the file (no review needed).  Due to bug 30084 the commit-queue will require a restart after your change.  Please contact eseidel@chromium.org to request a commit-queue restart.  After restart the commit-queue will correctly respect your committer rights.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239748</commentid>
    <comment_count>12</comment_count>
      <attachid>59070</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2010-06-17 21:39:34 -0700</bug_when>
    <thetext>Comment on attachment 59070
Unified patch (v2)

Forwarding Niko&apos;s r+, this patch only fixes some minor style nits and removes the &quot;OOPS&quot; line in the change log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240349</commentid>
    <comment_count>13</comment_count>
      <attachid>59070</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-19 09:21:13 -0700</bug_when>
    <thetext>Comment on attachment 59070
Unified patch (v2)

Clearing flags on attachment: 59070

Committed r61492: &lt;http://trac.webkit.org/changeset/61492&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240350</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-19 09:21:20 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58647</attachid>
            <date>2010-06-14 08:00:22 -0700</date>
            <delta_ts>2010-06-15 07:12:05 -0700</delta_ts>
            <desc>Patch to hook up NodeFilter API to CPP bindings</desc>
            <filename>0001-2010-04-23-Nikolas-Zimmermann-nzimmermann-rim.com.patch</filename>
            <type>text/plain</type>
            <size>7734</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSAxNzhhNzljOWYyMDIwYmNlYWExY2EwMWUyMWZlYjE1NjdiZWExMTRiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogV2VkLCA5IEp1biAyMDEwIDEzOjE1OjI1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxLzZdIDIw
MTAtMDQtMjMgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CgogICAg
ICAgIFJldmlld2VkIGJ5IEthcnRpa2F5YSBHdXB0YS4KCiAgICAgICAgSW5pdGlhbCB2ZXJzaW9u
IG9mIE5vZGVGaWx0ZXIgV2ViRE9NIEMrKyBBUEkuCgogICAgICAgICogYmluZGluZ3MvY3BwL1dl
YkRPTU5vZGVGaWx0ZXJDdXN0b20uY3BwOiBBZGRlZAogICAgICAgIChXZWJET01Ob2RlRmlsdGVy
OjphY2NlcHROb2RlKToKICAgICAgICAod2ViS2l0KToKICAgICAgICAqIGJpbmRpbmdzL2NwcC9X
ZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmNwcDogQWRkZWQuCiAgICAgICAgKFdlYk5hdGl2
ZU5vZGVGaWx0ZXJDb25kaXRpb246OldlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24pOgogICAg
ICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjp+V2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbik6CiAgICAgICAgKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmFjY2VwdE5v
ZGUpOgogICAgICAgICogYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24u
aDogQWRkZWQuCiAgICAgICAgKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0ZSk6
CiAgICAgICAgKiBkb20vTm9kZUZpbHRlci5pZGw6Ci0tLQogV2ViQ29yZS9iaW5kaW5ncy9jcHAv
V2ViRE9NTm9kZUZpbHRlckN1c3RvbS5jcHAgICAgfCAgIDQ0ICsrKysrKysrKysrKysrKysrKysr
CiAuLi4vYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uY3BwICB8ICAg
NDAgKysrKysrKysrKysrKysrKysrCiAuLi4vYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0
ZXJDb25kaXRpb24uaCAgICB8ICAgNDQgKysrKysrKysrKysrKysrKysrKysKIFdlYkNvcmUvZG9t
L05vZGVGaWx0ZXIuaWRsICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArKystCiA0IGZp
bGVzIGNoYW5nZWQsIDEzNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1v
ZGUgMTAwNjQ0IFdlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTU5vZGVGaWx0ZXJDdXN0b20uY3Bw
CiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZp
bHRlckNvbmRpdGlvbi5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdzL2Nw
cC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmgKCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Jp
bmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3Mv
Y3BwL1dlYkRPTU5vZGVGaWx0ZXJDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjU2NWZhNjEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2Nw
cC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcApAQCAtMCwwICsxLDQ0IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDEwLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRE9NTm9k
ZUZpbHRlci5oIgorCisjaW5jbHVkZSAiV2ViRE9NTm9kZS5oIgorI2luY2x1ZGUgIldlYk5hdGl2
ZU5vZGVGaWx0ZXJDb25kaXRpb24uaCIKKworc2hvcnQgV2ViRE9NTm9kZUZpbHRlcjo6YWNjZXB0
Tm9kZShjb25zdCBXZWJET01Ob2RlJiBuKQoreworICAgIGlmICghaW1wbCgpKQorICAgICAgICBy
ZXR1cm4gMDsKKworICAgIHJldHVybiBpbXBsKCktPmFjY2VwdE5vZGUoMCwgdG9XZWJDb3JlKG4p
KTsKK30KKworV2ViRE9NTm9kZUZpbHRlciB0b1dlYktpdChXZWJVc2VyTm9kZUZpbHRlciogdmFs
dWUpCit7CisgICAgUmVmUHRyPFdlYkNvcmU6Ok5vZGVGaWx0ZXI+IGxpc3RlbmVyID0gV2ViQ29y
ZTo6Tm9kZUZpbHRlcjo6Y3JlYXRlKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0
ZSh2YWx1ZSkpOworICAgIHJldHVybiBXZWJET01Ob2RlRmlsdGVyKGxpc3RlbmVyLmdldCgpKTsK
K30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJD
b25kaXRpb24uY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2QzMDgxMAot
LS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0
ZXJDb25kaXRpb24uY3BwCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIFJl
c2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2Vy
IEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
ICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w
eSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0
aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24s
IE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oIgorCisjaW5jbHVkZSAiV2ViRE9NTm9k
ZS5oIgorCitXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpXZWJOYXRpdmVOb2RlRmlsdGVy
Q29uZGl0aW9uKFdlYlVzZXJOb2RlRmlsdGVyKiBmaWx0ZXIpCisgICAgOiBXZWJDb3JlOjpOb2Rl
RmlsdGVyQ29uZGl0aW9uKCkKKyAgICAsIG1fZmlsdGVyKGZpbHRlcikKK3sKKyAgICBBU1NFUlQo
bV9maWx0ZXIpOworICAgIG1fZmlsdGVyLT5yZWYoKTsKK30KKworV2ViTmF0aXZlTm9kZUZpbHRl
ckNvbmRpdGlvbjo6fldlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24oKQoreworICAgIG1fZmls
dGVyLT5kZXJlZigpOworfQorCitzaG9ydCBXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjph
Y2NlcHROb2RlKFdlYkNvcmU6OlNjcmlwdFN0YXRlKiwgV2ViQ29yZTo6Tm9kZSogbm9kZSkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9maWx0ZXItPmFjY2VwdE5vZGUodG9XZWJLaXQobm9kZSkpOwor
fQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbi5oIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRp
dGlvbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3NWFlYzkKLS0tIC9k
ZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29u
ZGl0aW9uLmgKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIFJlc2VhcmNo
IEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiAgQ29weXJp
Z2h0IChDKSAyMDAxIFBldGVyIEtlbGx5IChwbWtAcG9zdC5jb20pCisgKiAgQ29weXJpZ2h0IChD
KSAyMDAzLCAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIg
R2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9y
IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogIFRoaXMgbGlicmFy
eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICog
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm
b3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogIEZv
dW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3Rvbiwg
TUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNpZm5kZWYgV2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbl9oCisjZGVmaW5lIFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb25faAorCisjaW5j
bHVkZSAiTm9kZUZpbHRlci5oIgorI2luY2x1ZGUgIldlYkRPTU5vZGVGaWx0ZXIuaCIKKworY2xh
c3MgV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbiA6IHB1YmxpYyBXZWJDb3JlOjpOb2RlRmls
dGVyQ29uZGl0aW9uIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJOYXRpdmVO
b2RlRmlsdGVyQ29uZGl0aW9uPiBjcmVhdGUoV2ViVXNlck5vZGVGaWx0ZXIqIGZpbHRlcikKKyAg
ICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRp
dGlvbihmaWx0ZXIpKTsKKyAgICB9CisKKworICAgIHZpcnR1YWwgfldlYk5hdGl2ZU5vZGVGaWx0
ZXJDb25kaXRpb24oKTsKKworICAgIHZpcnR1YWwgc2hvcnQgYWNjZXB0Tm9kZShXZWJDb3JlOjpT
Y3JpcHRTdGF0ZSosIFdlYkNvcmU6Ok5vZGUqKSBjb25zdDsKKworcHJvdGVjdGVkOgorICAgIFdl
Yk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24oV2ViVXNlck5vZGVGaWx0ZXIqKTsKKyAgICBXZWJV
c2VyTm9kZUZpbHRlciogbV9maWx0ZXI7Cit9OworCisjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvZG9tL05vZGVGaWx0ZXIuaWRsIGIvV2ViQ29yZS9kb20vTm9kZUZpbHRlci5pZGwKaW5kZXgg
MTZmM2YyNi4uNDBjNWJhZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vTm9kZUZpbHRlci5pZGwK
KysrIGIvV2ViQ29yZS9kb20vTm9kZUZpbHRlci5pZGwKQEAgLTIxLDggKzIxLDEyIEBACiBtb2R1
bGUgdHJhdmVyc2FsIHsKIAogICAgIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVsIDI6Ci0gICAg
aW50ZXJmYWNlIFtDdXN0b21NYXJrRnVuY3Rpb24sIEN1c3RvbU5hdGl2ZUNvbnZlcnRlciwgT2Jq
Q1Byb3RvY29sXSBOb2RlRmlsdGVyIHsKLQorICAgIGludGVyZmFjZSBbCisgICAgICAgIEN1c3Rv
bU1hcmtGdW5jdGlvbiwKKyAgICAgICAgQ3VzdG9tTmF0aXZlQ29udmVydGVyLAorICAgICAgICBP
YmpDUHJvdG9jb2wsCisgICAgICAgIFB1cmVJbnRlcmZhY2UKKyAgICBdIE5vZGVGaWx0ZXIgewog
ICAgICAgICAvLyBDb25zdGFudHMgcmV0dXJuZWQgYnkgYWNjZXB0Tm9kZQogICAgICAgICBjb25z
dCBzaG9ydCAgICAgICAgICAgICAgIEZJTFRFUl9BQ0NFUFQgICAgICAgICAgICAgICAgICA9IDE7
CiAgICAgICAgIGNvbnN0IHNob3J0ICAgICAgICAgICAgICAgRklMVEVSX1JFSkVDVCAgICAgICAg
ICAgICAgICAgID0gMjsKLS0gCjEuNi41LjEuMTM2Ny5nY2Q0OAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58648</attachid>
            <date>2010-06-14 08:01:38 -0700</date>
            <delta_ts>2010-06-15 07:12:05 -0700</delta_ts>
            <desc>Add missing custom methods for HTMLCollection and HTMLOptionsCollection</desc>
            <filename>0002-2010-06-10-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>4455</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSBmYWY5OTRmMDU3N2MyYzYyNzNhZmFiMGY3M2NlZGNlMDIxNjhhODI2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogVGh1LCAxMCBKdW4gMjAxMCAxNDo1Njo1MSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMi82XSAy
MDEwLTA2LTEwICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+CgogICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBBZGQgdGhlIGN1c3RvbSBDKysgYmlu
ZGluZyBpbXBsZW1lbnRhdGlvbnMgZm9yIEhUTUxDb2xsZWN0aW9uJ3MgaXRlbSBhbmQgbmFtZWRJ
dGVtIG1ldGhvZHMsIGFzIHdlbGwgYXMgdGhlIEhUTUxPcHRpb25zQ29sbGVjdGlvbidzIGxlbmd0
aCBhbmQgc2V0TGVuZ3RoIG1ldGhvZHMuCgogICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQoK
ICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFk
ZGVkLgogICAgICAgIChXZWJET01IVE1MQ29sbGVjdGlvbjo6aXRlbSk6CiAgICAgICAgKFdlYkRP
TUhUTUxDb2xsZWN0aW9uOjpuYW1lZEl0ZW0pOgogICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRP
TUhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgogICAgICAgIChXZWJET01I
VE1MT3B0aW9uc0NvbGxlY3Rpb246Omxlbmd0aCk6CiAgICAgICAgKFdlYkRPTUhUTUxPcHRpb25z
Q29sbGVjdGlvbjo6c2V0TGVuZ3RoKToKLS0tCiAuLi4vYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxD
b2xsZWN0aW9uQ3VzdG9tLmNwcCAgICB8ICAgNDMgKysrKysrKysrKysrKysrKysrKysKIC4uLi9j
cHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcCAgICAgIHwgICA0MiArKysr
KysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDg1IGluc2VydGlvbnMoKyksIDAgZGVs
ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9N
SFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5k
aW5ncy9jcHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcAoKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCBi
L1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTcwOWRhCi0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCkBA
IC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIFJlc2VhcmNoIEluIE1vdGlvbiBM
aW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5
IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAq
IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVp
dGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFu
eSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB
TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisg
KiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisg
KiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBm
aWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJv
c3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJXZWJET01IVE1MQ29sbGVjdGlvbi5oIgorCisjaW5jbHVkZSAiQXRvbWljU3RyaW5n
LmgiCisjaW5jbHVkZSAiSFRNTENvbGxlY3Rpb24uaCIKKyNpbmNsdWRlICJXZWJET01Ob2RlLmgi
CisjaW5jbHVkZSA8d3RmL0dldFB0ci5oPgorCisKK1dlYkRPTU5vZGUgV2ViRE9NSFRNTENvbGxl
Y3Rpb246Oml0ZW0odW5zaWduZWQgaW5kZXgpCit7CisgICAgaWYgKCFpbXBsKCkpCisgICAgICAg
IHJldHVybiBXZWJET01Ob2RlKCk7CisKKyAgICByZXR1cm4gdG9XZWJLaXQoV1RGOjpnZXRQdHIo
aW1wbCgpLT5pdGVtKGluZGV4KSkpOworfQorCitXZWJET01Ob2RlIFdlYkRPTUhUTUxDb2xsZWN0
aW9uOjpuYW1lZEl0ZW0oY29uc3QgV2ViRE9NU3RyaW5nJiBuYW1lKQoreworICAgIGlmICghaW1w
bCgpKQorICAgICAgICByZXR1cm4gV2ViRE9NTm9kZSgpOworCisgICAgcmV0dXJuIHRvV2ViS2l0
KFdURjo6Z2V0UHRyKGltcGwoKS0+bmFtZWRJdGVtKG5hbWUpKSk7Cit9CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3Bw
IGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9t
LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTJlYjI1Ci0tLSAvZGV2
L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0
aW9uQ3VzdG9tLmNwcApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSBSZXNl
YXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDEwLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh
bmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMg
ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg
R05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxp
YnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlm
dGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmgiCisK
KyNpbmNsdWRlICJIVE1MT3B0aW9uc0NvbGxlY3Rpb24uaCIKKyNpbmNsdWRlICJXZWJFeGNlcHRp
b25IYW5kbGVyLmgiCisKK3Vuc2lnbmVkIFdlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbjo6bGVu
Z3RoKCkgY29uc3QKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAg
ICByZXR1cm4gaW1wbCgpLT5sZW5ndGgoKTsKK30KKwordm9pZCBXZWJET01IVE1MT3B0aW9uc0Nv
bGxlY3Rpb246OnNldExlbmd0aCh1bnNpZ25lZCBsZW5ndGgpCit7CisgICAgaWYgKCFpbXBsKCkp
CisgICAgICAgIHJldHVybjsKKworICAgIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGUgZWMgPSAwOwor
ICAgIGltcGwoKS0+c2V0TGVuZ3RoKGxlbmd0aCwgZWMpOworICAgIHdlYkRPTVJhaXNlRXJyb3Io
c3RhdGljX2Nhc3Q8V2ViRE9NRXhjZXB0aW9uQ29kZT4oZWMpKTsKK30KLS0gCjEuNi41LjEuMTM2
Ny5nY2Q0OAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58650</attachid>
            <date>2010-06-14 08:02:32 -0700</date>
            <delta_ts>2010-06-14 10:10:37 -0700</delta_ts>
            <desc>Fix CPP bindings for DOMWindow</desc>
            <filename>0003-2010-06-11-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>7391</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSA4ZWNlNThkMWNlNmE1ZGYzZjlhOGY5MTNlODQ0MmQ5NzQzNWM0NGUzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogRnJpLCAxMSBKdW4gMjAxMCAxNjoxMDowOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMy82XSAy
MDEwLTA2LTExICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+CgogICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBBZGQgbW9yZSBjb21wbGV0ZSBDKysg
YmluZGluZ3MgZm9yIHRoZSB3aW5kb3cgb2JqZWN0LiBJbnN0ZWFkIG9mIG1hcHBpbmcgZXZlcnl0
aGluZyBiYWNrIHRvIEFic3RyYWN0VmlldywganVzdCB1c2UgRE9NV2luZG93IGRpcmVjdGx5LiBU
aGlzIHdheSBtZXRob2RzIG9uIERPTVdpbmRvdyB0aGF0IGFyZSBzdXBwb3NlZCB0byBiZSBleHBv
c2VkIChlLmcuIGdldENvbXB1dGVkU3R5bGUsIGFkZEV2ZW50TGlzdGVuZXIpIGFyZSBhY2Nlc3Np
YmxlLgoKICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKCiAgICAgICAgKiBiaW5kaW5ncy9j
cHAvV2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRkZWQuCiAgICAgICAgKFdlYkRPTURPTVdp
bmRvdzo6YWRkRXZlbnRMaXN0ZW5lcik6CiAgICAgICAgKFdlYkRPTURPTVdpbmRvdzo6cmVtb3Zl
RXZlbnRMaXN0ZW5lcik6CiAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JD
UFAucG06CiAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWpzY2RvbS5wbDoKICAg
ICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKLS0tCiBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJE
T01ET01XaW5kb3dDdXN0b20uY3BwIHwgICA0MyArKysrKysrKysrKysrKysrKysrKysrKysKIFdl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtICAgfCAgIDE1ICsrLS0t
LS0tLQogV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWpzY2RvbS5wbCAgICB8ICAg
MTAgKysrKy0tCiBXZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbCAgICAgICAgICAgICAgICAgICAg
IHwgICAgMiArLQogNCBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlv
bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01X
aW5kb3dDdXN0b20uY3BwCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9N
RE9NV2luZG93Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTURPTVdpbmRv
d0N1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWRkOWVjNAot
LS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTURPTVdpbmRvd0N1
c3RvbS5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgUmVzZWFyY2gg
SW4gTW90aW9uIExpbWl0ZWQgMjAxMC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3Vy
IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl
IHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh
aWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5
OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZs
b29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIldlYkRPTURPTVdpbmRvdy5oIgorCisjaW5jbHVkZSAiRE9NV2lu
ZG93LmgiCisjaW5jbHVkZSAiV2ViRE9NRXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIldlYk5h
dGl2ZUV2ZW50TGlzdGVuZXIuaCIKKwordm9pZCBXZWJET01ET01XaW5kb3c6OmFkZEV2ZW50TGlz
dGVuZXIoY29uc3QgV2ViRE9NU3RyaW5nJiB0eXBlLCBjb25zdCBXZWJET01FdmVudExpc3RlbmVy
JiBsaXN0ZW5lciwgYm9vbCB1c2VDYXB0dXJlKQoreworICAgIGlmICghaW1wbCgpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpZiAodG9XZWJDb3JlKGxpc3RlbmVyKSkKKyAgICAgICAgaW1wbCgp
LT5hZGRFdmVudExpc3RlbmVyKHR5cGUsIHRvV2ViQ29yZShsaXN0ZW5lciksIHVzZUNhcHR1cmUp
OworfQorCit2b2lkIFdlYkRPTURPTVdpbmRvdzo6cmVtb3ZlRXZlbnRMaXN0ZW5lcihjb25zdCBX
ZWJET01TdHJpbmcmIHR5cGUsIGNvbnN0IFdlYkRPTUV2ZW50TGlzdGVuZXImIGxpc3RlbmVyLCBi
b29sIHVzZUNhcHR1cmUpCit7CisgICAgaWYgKCFpbXBsKCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGlmICh0b1dlYkNvcmUobGlzdGVuZXIpKQorICAgICAgICBpbXBsKCktPnJlbW92ZUV2ZW50
TGlzdGVuZXIodHlwZSwgdG9XZWJDb3JlKGxpc3RlbmVyKSwgdXNlQ2FwdHVyZSk7Cit9CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbSBiL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtCmluZGV4IGY0NDFiMGUu
LmM4NDI1YTMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9yQ1BQLnBtCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQ
LnBtCkBAIC0xNDUsNyArMTQ1LDYgQEAgc3ViIEdldENsYXNzTmFtZQogCiAgICAgIyBzcGVjaWFs
IGNhc2VzCiAgICAgcmV0dXJuICJXZWJET01TdHJpbmciIGlmICRjb2RlR2VuZXJhdG9yLT5Jc1N0
cmluZ1R5cGUoJG5hbWUpIG9yICRuYW1lIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiOwotICAg
IHJldHVybiAiV2ViRE9NQWJzdHJhY3RWaWV3IiBpZiAkbmFtZSBlcSAiRE9NV2luZG93IjsKICAg
ICByZXR1cm4gIldlYkRPTU9iamVjdCIgaWYgJG5hbWUgZXEgIkRPTU9iamVjdCI7CiAgICAgcmV0
dXJuICJib29sIiBpZiAkbmFtZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICRuYW1lIGlmICRj
b2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUoJG5hbWUpOwpAQCAtMTU1LDEwICsxNTQsNyBA
QCBzdWIgR2V0Q2xhc3NOYW1lCiAKIHN1YiBHZXRJbXBsQ2xhc3NOYW1lCiB7Ci0gICAgbXkgJG5h
bWUgPSAkY29kZUdlbmVyYXRvci0+U3RyaXBNb2R1bGUoc2hpZnQpOwotCi0gICAgcmV0dXJuICJE
T01XaW5kb3ciIGlmICRuYW1lIGVxICJBYnN0cmFjdFZpZXciOwotICAgIHJldHVybiAkbmFtZTsK
KyAgICByZXR1cm4gJGNvZGVHZW5lcmF0b3ItPlN0cmlwTW9kdWxlKHNoaWZ0KTsKIH0KIAogc3Vi
IEdldFBhcmVudEltcGxDbGFzc05hbWUKQEAgLTIwMyw3ICsxOTksOCBAQCBzdWIgU2hvdWxkU2tp
cFR5cGVJbkltcGxlbWVudGF0aW9uCiAKICAgICByZXR1cm4gMSBpZiAkdHlwZUluZm8tPnNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUFyZ3VtZW50SGFuZGxpbmcifQogICAg
ICAgICAgICAgIG9yICR0eXBlSW5mby0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
Q3VzdG9tR2V0dGVyIn0KLSAgICAgICAgICAgICBvciAkdHlwZUluZm8tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57Ik5lZWRzVXNlckdlc3R1cmVDaGVjayJ9OworICAgICAgICAgICAg
IG9yICR0eXBlSW5mby0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTmVlZHNVc2Vy
R2VzdHVyZUNoZWNrIn0KKyAgICAgICAgICAgICBvciAkdHlwZUluZm8tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNQUEN1c3RvbSJ9OwogCiAgICAgIyBGSVhNRTogV2UgZG9uJ3Qg
Z2VuZXJhdGUgYmluZGluZ3MgZm9yIFNWRyByZWxhdGVkIGludGVyZmFjZXMgeWV0CiAgICAgcmV0
dXJuIDEgaWYgJHR5cGVJbmZvLT5zaWduYXR1cmUtPm5hbWUgPX4gL2dldFNWR0RvY3VtZW50LzsK
QEAgLTI5NywxMiArMjk0LDYgQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgaWYgKCR0eXBlIGVxICJET01XaW5kb3ciKSB7Ci0gICAgICAgICRp
bXBsSW5jbHVkZXN7IkRPTVdpbmRvdy5oIn0gPSAxOwotICAgICAgICAkaW1wbEluY2x1ZGVzeyJX
ZWJET01BYnN0cmFjdFZpZXcuaCJ9ID0gMTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQogICAg
IGlmICgkdHlwZSBlcSAiRXZlbnRMaXN0ZW5lciIpIHsKICAgICAgICAgJGltcGxJbmNsdWRlc3si
V2ViTmF0aXZlRXZlbnRMaXN0ZW5lci5oIn0gPSAxOwogICAgICAgICByZXR1cm47CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtanNjZG9tLnBsIGIvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWpzY2RvbS5wbAppbmRleCA2YjZjZjZkLi44ZGEz
NjdkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtanNjZG9t
LnBsCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9nZW5lcmF0ZS1qc2Nkb20ucGwKQEAg
LTY0LDEwICs2NCwxMCBAQCBmb3JlYWNoIG15ICRpZGxGaWxlIChAQVJHVikgewogICAgICMgR2Vu
ZXJhdGUgZGVzaXJlZCBvdXRwdXQgZm9yIGdpdmVuIElETCBmaWxlLgogICAgIG15ICRjbGFzc2Vz
ID0gJGRvY3VtZW50LT5jbGFzc2VzOwogICAgIGZvcmVhY2ggbXkgJGNsYXNzIChAJGNsYXNzZXMp
IHsKLSAgICAgICAgbmV4dCBpZiAoQHskY2xhc3MtPnBhcmVudHN9ID4gMCB8fCAkY2xhc3MtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJMZWdhY3lQYXJlbnQifSk7Ci0KICAgICAgICAgbXkgJG5hbWUg
PSAkY2xhc3MtPm5hbWU7CiAgICAgICAgICRuYW1lID1+IHMvW2EtekEtWjAtOV0qOjovLzsKKwor
ICAgICAgICBuZXh0IGlmICghKCRuYW1lIGVxICJET01XaW5kb3ciKSAmJiAoQHskY2xhc3MtPnBh
cmVudHN9ID4gMCB8fCAkY2xhc3MtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJMZWdhY3lQYXJlbnQi
fSkpOwogICAgICAgICBuZXh0IGlmICgkbmFtZSBlcSAiVm9pZENhbGxiYWNrIiB8fCAkbmFtZSBl
cSAiQWJzdHJhY3RXb3JrZXIiKTsKIAogICAgICAgICBwcmludCAiR2VuZXJhdGluZyAkb3V0cHV0
QmFzZSBiaW5kaW5ncyBjb2RlIGZvciBJREwgaW50ZXJmYWNlIFwiIiAuICRjbGFzcy0+bmFtZSAu
ICJcIi4uLlxuIiBpZiAkdmVyYm9zZTsKQEAgLTk4LDcgKzk4LDExIEBAIGZvcmVhY2ggbXkgJGlk
bEZpbGUgKEBBUkdWKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50cywgIiAgICBKU0M6OkV4
ZWNTdGF0ZSogZXhlYyA9IHRvSlMoY3R4KTtcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dHMsICIgICAgSlNDOjpBUElFbnRyeVNoaW0gZW50cnlTaGltKGV4ZWMpO1xuXG4iKTsKICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnRzLCAiICAgIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCA9IEpTQzo6YXNHbG9iYWxPYmplY3QodG9KUyhleGVjLCBkb21HbG9iYWwpKTtcbiIpOwot
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudHMsICIgICAgSlNDOjpKU1ZhbHVlIHZhbHVlID0gdG9K
UyhleGVjLCBzdGF0aWNfY2FzdDxXZWJDb3JlOjpKU0RPTUdsb2JhbE9iamVjdCo+KGdsb2JhbE9i
amVjdCksIHdlYmNvcmVPYmplY3QpO1xuIik7CisgICAgICAgIGlmICgkbmFtZSBlcSAiRE9NV2lu
ZG93IikgeworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRzLCAiICAgIEpTQzo6SlNWYWx1
ZSB2YWx1ZSA9IFdlYkNvcmU6OnRvSlMoZXhlYywgc3RhdGljX2Nhc3Q8V2ViQ29yZTo6SlNET01H
bG9iYWxPYmplY3QqPihnbG9iYWxPYmplY3QpLCB3ZWJjb3JlT2JqZWN0KTtcbiIpOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRzLCAiICAgIEpTQzo6SlNW
YWx1ZSB2YWx1ZSA9IHRvSlMoZXhlYywgc3RhdGljX2Nhc3Q8V2ViQ29yZTo6SlNET01HbG9iYWxP
YmplY3QqPihnbG9iYWxPYmplY3QpLCB3ZWJjb3JlT2JqZWN0KTtcbiIpOworICAgICAgICB9CiAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50cywgIiAgICByZXR1cm4gdG9SZWYoZXhlYywgdmFsdWUp
O1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50cywgIn1cbiIpOwogICAgICAgICBpZiAo
JGNvbmRpdGlvbmFsKSB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbCBi
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCmluZGV4IGI0NzY1MTQuLmM2NzlhYzQgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCisrKyBiL1dlYkNvcmUvcGFnZS9ET01X
aW5kb3cuaWRsCkBAIC01NCw3ICs1NCw3IEBAIG1vZHVsZSB3aW5kb3cgewogICAgICAgICBhdHRy
aWJ1dGUgW1JlcGxhY2VhYmxlXSBCYXJJbmZvIHRvb2xiYXI7CiAgICAgICAgIGF0dHJpYnV0ZSBb
UmVwbGFjZWFibGVdIE5hdmlnYXRvciBuYXZpZ2F0b3I7CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVw
bGFjZWFibGVdIE5hdmlnYXRvciBjbGllbnRJbmZvcm1hdGlvbjsKLSAgICAgICAgYXR0cmlidXRl
IFtEb05vdENoZWNrRG9tYWluU2VjdXJpdHksIEpTQ0N1c3RvbSwgVjhDdXN0b21TZXR0ZXIsIFY4
RGlzYWxsb3dTaGFkb3dpbmddIExvY2F0aW9uIGxvY2F0aW9uOworICAgICAgICBhdHRyaWJ1dGUg
W0RvTm90Q2hlY2tEb21haW5TZWN1cml0eSwgSlNDQ3VzdG9tLCBWOEN1c3RvbVNldHRlciwgVjhE
aXNhbGxvd1NoYWRvd2luZywgQ1BQQ3VzdG9tXSBMb2NhdGlvbiBsb2NhdGlvbjsKIAogICAgICAg
ICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlLCBDdXN0b21HZXR0ZXIsIFY4Q3VzdG9tU2V0dGVyXSBF
dmVudCBldmVudDsKIAotLSAKMS42LjUuMS4xMzY3LmdjZDQ4Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58652</attachid>
            <date>2010-06-14 08:07:25 -0700</date>
            <delta_ts>2010-06-14 10:00:09 -0700</delta_ts>
            <desc>Patch for EventTarget bindings</desc>
            <filename>0004-2010-06-11-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>8307</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSBmZDIyNmJlNGQ3MTA4MzA5OGFjYTFkNGNiMTQyMTIwYWZiM2NkZGVmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogRnJpLCAxMSBKdW4gMjAxMCAxNjoxMTozNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggNC82XSAy
MDEwLTA2LTExICBLYXJ0aWtheWEgR3VwdGEgIDxrYWd1cHRhQHJpbS5jb20+CgogICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBBZGQgbWV0aG9kcyB0byB0aGUgRXZl
bnRUYXJnZXQgQysrIGJpbmRpbmdzIHNvIHRoYXQgYSBXZWJET01FdmVudFRhcmdldCBjYW4gYmUg
Y29udmVydGVkIHRvIGEgc3BlY2lmaWMgdHlwZSB0aGF0IGltcGxlbWVudHMgRXZlbnRUYXJnZXQu
IEFsc28gZW5zdXJlIHRoYXQgdGhlIGJpbmRpbmdzIHRoYXQgZXh0ZW5kIGZyb20gV2ViRE9NRXZl
bnRUYXJnZXQgZG9uJ3QgZHVwbGljYXRlIHRoZSBkLXB0ciBiZWNhdXNlIG90aGVyd2lzZSBkZXJl
ZmVyZW5jaW5nIGFuZCBkZXN0cnVjdGlvbiBkb2Vzbid0IGhhcHBlbiBjb3JyZWN0bHkgd2hlbiB0
aGUgdXNlciBoYXMgYSBoYW5kbGUgdG8gV2ViRE9NRXZlbnRUYXJnZXQuCgogICAgICAgIE5vIG5l
dyB0ZXN0cy4gKE9PUFMhKQoKICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdl
dC5jcHA6CiAgICAgICAgKHRvV2ViS2l0KToKICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01F
dmVudFRhcmdldC5oOgogICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQ
LnBtOgotLS0KIFdlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNwcCAgIHwg
ICA2OCArKysrKysrKysrKysrKysrKysrKystLS0tLQogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2Vi
RE9NRXZlbnRUYXJnZXQuaCAgICAgfCAgIDMwICsrKysrKysrKysrLQogV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0gfCAgIDEyICsrLS0KIDMgZmlsZXMgY2hhbmdl
ZCwgOTAgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9j
cHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwCmluZGV4IDJlYWVmMDAuLjVhNjcyYjcgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNwcAorKysgYi9XZWJD
b3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5jcHAKQEAgLTIyLDYgKzIyLDcgQEAK
ICNpbmNsdWRlICJXZWJET01FdmVudFRhcmdldC5oIgogCiAjaW5jbHVkZSAiRE9NQXBwbGljYXRp
b25DYWNoZS5oIgorI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkRlZGljYXRlZFdv
cmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJFdmVudFNvdXJjZS5oIgogI2luY2x1ZGUgIk1lc3Nh
Z2VQb3J0LmgiCkBAIC0zMSw2ICszMiw3IEBACiAjaW5jbHVkZSAiU2hhcmVkV29ya2VyQ29udGV4
dC5oIgogI2luY2x1ZGUgIlRocmVhZENoZWNrLmgiCiAjaW5jbHVkZSAiV2ViRE9NRE9NQXBwbGlj
YXRpb25DYWNoZS5oIgorI2luY2x1ZGUgIldlYkRPTURPTVdpbmRvdy5oIgogI2luY2x1ZGUgIldl
YkRPTURlZGljYXRlZFdvcmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJXZWJET01FdmVudFNvdXJj
ZS5oIgogI2luY2x1ZGUgIldlYkRPTU1lc3NhZ2VQb3J0LmgiCkBAIC04OCw2ICs5MCw0NSBAQCBX
ZWJDb3JlOjpFdmVudFRhcmdldCogV2ViRE9NRXZlbnRUYXJnZXQ6OmltcGwoKSBjb25zdAogICAg
IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmltcGwuZ2V0KCkgOiAwOwogfQogCisjZGVmaW5lIENP
TlZFUlRfVE8odHlwZSkgXAorV2ViRE9NIyN0eXBlIFdlYkRPTUV2ZW50VGFyZ2V0Ojp0byMjdHlw
ZSgpIFwKK3sgXAorICAgIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0YXJnZXQgPSBpbXBsKCk7IFwK
KyAgICByZXR1cm4gV2ViRE9NIyN0eXBlKHRhcmdldCA/IDAgOiB0YXJnZXQtPnRvIyN0eXBlKCkp
OyBcCit9CisKK0NPTlZFUlRfVE8oTm9kZSkKK0NPTlZFUlRfVE8oRE9NV2luZG93KQorQ09OVkVS
VF9UTyhYTUxIdHRwUmVxdWVzdCkKK0NPTlZFUlRfVE8oWE1MSHR0cFJlcXVlc3RVcGxvYWQpCitD
T05WRVJUX1RPKE1lc3NhZ2VQb3J0KQorCisjaWYgRU5BQkxFKEVWRU5UU09VUkNFKQorQ09OVkVS
VF9UTyhFdmVudFNvdXJjZSkKKyNlbmRpZgorCisjaWYgRU5BQkxFKE9GRkxJTkVfV0VCX0FQUExJ
Q0FUSU9OUykKK0NPTlZFUlRfVE8oRE9NQXBwbGljYXRpb25DYWNoZSkKKyNlbmRpZgorCisjaWYg
RU5BQkxFKFdPUktFUlMpCitDT05WRVJUX1RPKFdvcmtlcikKK0NPTlZFUlRfVE8oRGVkaWNhdGVk
V29ya2VyQ29udGV4dCkKKyNlbmRpZgorCisjaWYgRU5BQkxFKFNIQVJFRF9XT1JLRVJTKQorQ09O
VkVSVF9UTyhTaGFyZWRXb3JrZXIpCitDT05WRVJUX1RPKFNoYXJlZFdvcmtlckNvbnRleHQpCisj
ZW5kaWYKKworI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorQ09OVkVSVF9UTyhOb3RpZmljYXRp
b24pCisjZW5kaWYKKworI2lmIEVOQUJMRShXRUJfU09DS0VUUykKK0NPTlZFUlRfVE8oV2ViU29j
a2V0KQorI2VuZGlmCisKIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0b1dlYkNvcmUoY29uc3QgV2Vi
RE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiB7CiAgICAgcmV0dXJuIHdyYXBwZXIuaW1wbCgpOwpA
QCAtOTUsNiArMTM2LDIxIEBAIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0b1dlYkNvcmUoY29uc3Qg
V2ViRE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiAKIFdlYkRPTUV2ZW50VGFyZ2V0IHRvV2ViS2l0
KFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB2YWx1ZSkKIHsKKyAgICBpZiAoV2ViQ29yZTo6Tm9kZSog
bm9kZSA9IHZhbHVlLT50b05vZGUoKSkKKyAgICAgICAgcmV0dXJuIHRvV2ViS2l0KG5vZGUpOwor
CisgICAgaWYgKFdlYkNvcmU6OkRPTVdpbmRvdyogd2luZG93ID0gdmFsdWUtPnRvRE9NV2luZG93
KCkpCisgICAgICAgIHJldHVybiB0b1dlYktpdCh3aW5kb3cpOworCisgICAgaWYgKFdlYkNvcmU6
OlhNTEh0dHBSZXF1ZXN0KiB4aHIgPSB2YWx1ZS0+dG9YTUxIdHRwUmVxdWVzdCgpKQorICAgICAg
ICByZXR1cm4gdG9XZWJLaXQoeGhyKTsKKworICAgIGlmIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVz
dFVwbG9hZCogdXBsb2FkID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVlc3RVcGxvYWQoKSkKKyAgICAg
ICAgcmV0dXJuIHRvV2ViS2l0KHVwbG9hZCk7CisKKyAgICBpZiAoV2ViQ29yZTo6TWVzc2FnZVBv
cnQqIG1lc3NhZ2VQb3J0ID0gdmFsdWUtPnRvTWVzc2FnZVBvcnQoKSkKKyAgICAgICAgcmV0dXJu
IHRvV2ViS2l0KG1lc3NhZ2VQb3J0KTsKKwogI2lmIEVOQUJMRShFVkVOVFNPVVJDRSkKICAgICBp
ZiAoV2ViQ29yZTo6RXZlbnRTb3VyY2UqIGV2ZW50U291cmNlID0gdmFsdWUtPnRvRXZlbnRTb3Vy
Y2UoKSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGV2ZW50U291cmNlKTsKQEAgLTEwNywyMyAr
MTYzLDExIEBAIFdlYkRPTUV2ZW50VGFyZ2V0IHRvV2ViS2l0KFdlYkNvcmU6OkV2ZW50VGFyZ2V0
KiB2YWx1ZSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGluc3RhbmNlKTsKICNlbmRpZgogCi0g
ICAgaWYgKFdlYkNvcmU6Ok5vZGUqIG5vZGUgPSB2YWx1ZS0+dG9Ob2RlKCkpCi0gICAgICAgIHJl
dHVybiB0b1dlYktpdChub2RlKTsKLQotICAgIGlmIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVzdCog
eGhyID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVlc3QoKSkKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0
KHhocik7Ci0KLSAgICBpZiAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3RVcGxvYWQqIHVwbG9hZCA9
IHZhbHVlLT50b1hNTEh0dHBSZXF1ZXN0VXBsb2FkKCkpCi0gICAgICAgIHJldHVybiB0b1dlYktp
dCh1cGxvYWQpOwotCiAjaWYgRU5BQkxFKE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKICAgICBp
ZiAoV2ViQ29yZTo6RE9NQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSB2YWx1ZS0+dG9ET01BcHBs
aWNhdGlvbkNhY2hlKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktpdChjYWNoZSk7CiAjZW5kaWYK
IAotICAgIGlmIChXZWJDb3JlOjpNZXNzYWdlUG9ydCogbWVzc2FnZVBvcnQgPSB2YWx1ZS0+dG9N
ZXNzYWdlUG9ydCgpKQotICAgICAgICByZXR1cm4gdG9XZWJLaXQobWVzc2FnZVBvcnQpOwotCiAj
aWYgRU5BQkxFKFdPUktFUlMpCiAgICAgaWYgKFdlYkNvcmU6Oldvcmtlciogd29ya2VyID0gdmFs
dWUtPnRvV29ya2VyKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktpdCh3b3JrZXIpOwpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaCBiL1dlYkNvcmUv
YmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmgKaW5kZXggZjUzNjBjYS4uOWIwMWU2ZCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaAorKysg
Yi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oCkBAIC0yNiw2ICsyNiwy
MCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBFdmVudFRhcmdldDsKIH07CiAKK2NsYXNz
IFdlYkRPTU5vZGU7CitjbGFzcyBXZWJET01ET01XaW5kb3c7CitjbGFzcyBXZWJET01YTUxIdHRw
UmVxdWVzdDsKK2NsYXNzIFdlYkRPTVhNTEh0dHBSZXF1ZXN0VXBsb2FkOworY2xhc3MgV2ViRE9N
TWVzc2FnZVBvcnQ7CitjbGFzcyBXZWJET01FdmVudFNvdXJjZTsKK2NsYXNzIFdlYkRPTURPTUFw
cGxpY2F0aW9uQ2FjaGU7CitjbGFzcyBXZWJET01Xb3JrZXI7CitjbGFzcyBXZWJET01EZWRpY2F0
ZWRXb3JrZXJDb250ZXh0OworY2xhc3MgV2ViRE9NU2hhcmVkV29ya2VyOworY2xhc3MgV2ViRE9N
U2hhcmVkV29ya2VyQ29udGV4dDsKK2NsYXNzIFdlYkRPTU5vdGlmaWNhdGlvbjsKK2NsYXNzIFdl
YkRPTVdlYlNvY2tldDsKKwogY2xhc3MgV2ViRE9NRXZlbnRUYXJnZXQgOiBwdWJsaWMgV2ViRE9N
T2JqZWN0IHsKIHB1YmxpYzoKICAgICBXZWJET01FdmVudFRhcmdldCgpOwpAQCAtMzUsOCArNDks
MjAgQEAgcHVibGljOgogCiAgICAgV2ViQ29yZTo6RXZlbnRUYXJnZXQqIGltcGwoKSBjb25zdDsK
IAotICAgIC8vIEZJWE1FOiBBZGQgYSBwb3NzaWJpbGl0eSB0byBjaGVjayB3aGF0IGtpbmQgb2Yg
RXZlbnRUYXJnZXQgd2UgaGF2ZSwKLSAgICAvLyB0byBiZSBhYmxlIHRvIGNhc3QgZWcuIGEgV2Vi
RE9NRXZlbnRUYXJnZXQgdG8gYSBXZWJET01Ob2RlCisgICAgV2ViRE9NTm9kZSB0b05vZGUoKTsK
KyAgICBXZWJET01ET01XaW5kb3cgdG9ET01XaW5kb3coKTsKKyAgICBXZWJET01YTUxIdHRwUmVx
dWVzdCB0b1hNTEh0dHBSZXF1ZXN0KCk7CisgICAgV2ViRE9NWE1MSHR0cFJlcXVlc3RVcGxvYWQg
dG9YTUxIdHRwUmVxdWVzdFVwbG9hZCgpOworICAgIFdlYkRPTU1lc3NhZ2VQb3J0IHRvTWVzc2Fn
ZVBvcnQoKTsKKworICAgIFdlYkRPTUV2ZW50U291cmNlIHRvRXZlbnRTb3VyY2UoKTsKKyAgICBX
ZWJET01ET01BcHBsaWNhdGlvbkNhY2hlIHRvRE9NQXBwbGljYXRpb25DYWNoZSgpOworICAgIFdl
YkRPTVdvcmtlciB0b1dvcmtlcigpOworICAgIFdlYkRPTURlZGljYXRlZFdvcmtlckNvbnRleHQg
dG9EZWRpY2F0ZWRXb3JrZXJDb250ZXh0KCk7CisgICAgV2ViRE9NU2hhcmVkV29ya2VyIHRvU2hh
cmVkV29ya2VyKCk7CisgICAgV2ViRE9NU2hhcmVkV29ya2VyQ29udGV4dCB0b1NoYXJlZFdvcmtl
ckNvbnRleHQoKTsKKyAgICBXZWJET01Ob3RpZmljYXRpb24gdG9Ob3RpZmljYXRpb24oKTsKKyAg
ICBXZWJET01XZWJTb2NrZXQgdG9XZWJTb2NrZXQoKTsKIAogcHJvdGVjdGVkOgogICAgIHN0cnVj
dCBXZWJET01FdmVudFRhcmdldFByaXZhdGU7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9yQ1BQLnBtCmluZGV4IGM4NDI1YTMuLjVhZWEzNjggMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtCisrKyBiL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtCkBAIC0zNzksMTIgKzM3OSwxMiBA
QCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIGV4cGxp
Y2l0ICRjbGFzc05hbWUoJGltcGxDbGFzc05hbWVXaXRoTmFtZXNwYWNlKik7XG4iKTsKIAogICAg
ICMgQ29weSBjb25zdHJ1Y3RvciBvbiBjbGFzc2VzIHdoaWNoIGhhdmUgdGhlIGQtcHRyCi0gICAg
aWYgKEB7JGRhdGFOb2RlLT5wYXJlbnRzfSBlcSAwKSB7CisgICAgaWYgKCRwYXJlbnROYW1lIGVx
ICJXZWJET01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgJGNs
YXNzTmFtZShjb25zdCAkY2xhc3NOYW1lJik7XG4iKTsKICAgICB9CiAKICAgICAjIERlc3RydWN0
b3IKLSAgICBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApIHsKKyAgICBpZiAoJHBhcmVu
dE5hbWUgZXEgIldlYkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwg
IiAgICB+JGNsYXNzTmFtZSgpO1xuIik7CiAgICAgfQogCkBAIC00OTYsNyArNDk2LDcgQEAgc3Vi
IEdlbmVyYXRlSGVhZGVyCiAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIlxuIik7CiAgICAgcHVz
aChAaGVhZGVyQ29udGVudCwgIiAgICAkaW1wbENsYXNzTmFtZVdpdGhOYW1lc3BhY2UqIGltcGwo
KSBjb25zdDtcbiIpOwogCi0gICAgaWYgKEB7JGRhdGFOb2RlLT5wYXJlbnRzfSBlcSAwKSB7Cisg
ICAgaWYgKCRwYXJlbnROYW1lIGVxICJXZWJET01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICJcbnByb3RlY3RlZDpcbiIpOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCAiICAgIHN0cnVjdCAke2NsYXNzTmFtZX1Qcml2YXRlO1xuIik7CiAgICAgICAgIHB1c2go
QGhlYWRlckNvbnRlbnQsICIgICAgJHtjbGFzc05hbWV9UHJpdmF0ZSogbV9pbXBsO1xuIik7CkBA
IC01OTgsNyArNTk4LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+XG5cbiIpOwogCiAgICAgIyBQcml2
YXRlIGRhdGFzdHJ1Y3R1cmUsIGVuY2Fwc3VsYXRpbmcgV2ViQ29yZSB0eXBlcwotICAgIGlmIChA
eyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkYmFzZUNsYXNzIGVxICJXZWJE
T01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAic3RydWN0ICR7Y2xhc3NO
YW1lfTo6JHtjbGFzc05hbWV9UHJpdmF0ZSB7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgJHtjbGFzc05hbWV9UHJpdmF0ZSgkaW1wbENsYXNzTmFtZVdpdGhOYW1lc3BhY2Uq
IG9iamVjdCA9IDApXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIDog
aW1wbChvYmplY3QpXG4iKTsKQEAgLTYxMSwxMiArNjExLDEyIEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAgICAgIyBDb25zdHJ1Y3RvcgogICAgIHB1c2goQGltcGxDb250ZW50LCAiJHtj
bGFzc05hbWV9OjokY2xhc3NOYW1lKClcbiIpOwogICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IDogJHtiYXNlQ2xhc3N9KClcbiIpOwotICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICwgbV9p
bXBsKDApXG4iKSBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApOworICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgICwgbV9pbXBsKDApXG4iKSBpZiAoJGJhc2VDbGFzcyBlcSAiV2ViRE9N
T2JqZWN0Iik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIn1cblxuIik7CiAKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiR7Y2xhc3NOYW1l
fTo6JGNsYXNzTmFtZSgkaW1wbENsYXNzTmFtZVdpdGhOYW1lc3BhY2UqIGltcGwpXG4iKTsKLSAg
ICBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApIHsKKyAgICBpZiAoJGJhc2VDbGFzcyBl
cSAiV2ViRE9NT2JqZWN0IikgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICA6ICR7
YmFzZUNsYXNzfSgpXG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgLCBtX2lt
cGwobmV3ICR7Y2xhc3NOYW1lfVByaXZhdGUoaW1wbCkpXG4iKTsKICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICJ7XG4iKTsKLS0gCjEuNi41LjEuMTM2Ny5nY2Q0OAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58666</attachid>
            <date>2010-06-14 10:00:09 -0700</date>
            <delta_ts>2010-06-15 07:12:05 -0700</delta_ts>
            <desc>Patch for EventTarget bindings (v2)</desc>
            <filename>0001-2010-06-11-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>8303</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSBiOWFiZWRhN2I0NWYzZmQ5YzA2ZmJkYzNlMjZmMjlmN2NhMDBkZGE3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogRnJpLCAxMSBKdW4gMjAxMCAxNjoxMTozNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIDIwMTAt
MDYtMTEgIEthcnRpa2F5YSBHdXB0YSAgPGthZ3VwdGFAcmltLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIEFkZCBtZXRob2RzIHRvIHRoZSBFdmVudFRh
cmdldCBDKysgYmluZGluZ3Mgc28gdGhhdCBhIFdlYkRPTUV2ZW50VGFyZ2V0IGNhbiBiZSBjb252
ZXJ0ZWQgdG8gYSBzcGVjaWZpYyB0eXBlIHRoYXQgaW1wbGVtZW50cyBFdmVudFRhcmdldC4gQWxz
byBlbnN1cmUgdGhhdCB0aGUgYmluZGluZ3MgdGhhdCBleHRlbmQgZnJvbSBXZWJET01FdmVudFRh
cmdldCBkb24ndCBkdXBsaWNhdGUgdGhlIGQtcHRyIGJlY2F1c2Ugb3RoZXJ3aXNlIGRlcmVmZXJl
bmNpbmcgYW5kIGRlc3RydWN0aW9uIGRvZXNuJ3QgaGFwcGVuIGNvcnJlY3RseSB3aGVuIHRoZSB1
c2VyIGhhcyBhIGhhbmRsZSB0byBXZWJET01FdmVudFRhcmdldC4KCiAgICAgICAgTm8gbmV3IHRl
c3RzLiAoT09QUyEpCgogICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNw
cDoKICAgICAgICAodG9XZWJLaXQpOgogICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50
VGFyZ2V0Lmg6CiAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG06
Ci0tLQogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwICAgfCAgIDY4
ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tCiBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01F
dmVudFRhcmdldC5oICAgICB8ICAgMzAgKysrKysrKysrKystCiBXZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbSB8ICAgMTIgKystLQogMyBmaWxlcyBjaGFuZ2VkLCA5
MCBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Jp
bmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9X
ZWJET01FdmVudFRhcmdldC5jcHAKaW5kZXggMmVhZWYwMC4uOWFhMWRjNiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwCisrKyBiL1dlYkNvcmUv
YmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNwcApAQCAtMjIsNiArMjIsNyBAQAogI2lu
Y2x1ZGUgIldlYkRPTUV2ZW50VGFyZ2V0LmgiCiAKICNpbmNsdWRlICJET01BcHBsaWNhdGlvbkNh
Y2hlLmgiCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRGVkaWNhdGVkV29ya2Vy
Q29udGV4dC5oIgogI2luY2x1ZGUgIkV2ZW50U291cmNlLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBv
cnQuaCIKQEAgLTMxLDYgKzMyLDcgQEAKICNpbmNsdWRlICJTaGFyZWRXb3JrZXJDb250ZXh0Lmgi
CiAjaW5jbHVkZSAiVGhyZWFkQ2hlY2suaCIKICNpbmNsdWRlICJXZWJET01ET01BcHBsaWNhdGlv
bkNhY2hlLmgiCisjaW5jbHVkZSAiV2ViRE9NRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiV2ViRE9N
RGVkaWNhdGVkV29ya2VyQ29udGV4dC5oIgogI2luY2x1ZGUgIldlYkRPTUV2ZW50U291cmNlLmgi
CiAjaW5jbHVkZSAiV2ViRE9NTWVzc2FnZVBvcnQuaCIKQEAgLTg4LDYgKzkwLDQ1IEBAIFdlYkNv
cmU6OkV2ZW50VGFyZ2V0KiBXZWJET01FdmVudFRhcmdldDo6aW1wbCgpIGNvbnN0CiAgICAgcmV0
dXJuIG1faW1wbCA/IG1faW1wbC0+aW1wbC5nZXQoKSA6IDA7CiB9CiAKKyNkZWZpbmUgQ09OVkVS
VF9UTyh0eXBlKSBcCitXZWJET00jI3R5cGUgV2ViRE9NRXZlbnRUYXJnZXQ6OnRvIyN0eXBlKCkg
XAoreyBcCisgICAgV2ViQ29yZTo6RXZlbnRUYXJnZXQqIHRhcmdldCA9IGltcGwoKTsgXAorICAg
IHJldHVybiBXZWJET00jI3R5cGUodGFyZ2V0ID8gdGFyZ2V0LT50byMjdHlwZSgpIDogMCk7IFwK
K30KKworQ09OVkVSVF9UTyhOb2RlKQorQ09OVkVSVF9UTyhET01XaW5kb3cpCitDT05WRVJUX1RP
KFhNTEh0dHBSZXF1ZXN0KQorQ09OVkVSVF9UTyhYTUxIdHRwUmVxdWVzdFVwbG9hZCkKK0NPTlZF
UlRfVE8oTWVzc2FnZVBvcnQpCisKKyNpZiBFTkFCTEUoRVZFTlRTT1VSQ0UpCitDT05WRVJUX1RP
KEV2ZW50U291cmNlKQorI2VuZGlmCisKKyNpZiBFTkFCTEUoT0ZGTElORV9XRUJfQVBQTElDQVRJ
T05TKQorQ09OVkVSVF9UTyhET01BcHBsaWNhdGlvbkNhY2hlKQorI2VuZGlmCisKKyNpZiBFTkFC
TEUoV09SS0VSUykKK0NPTlZFUlRfVE8oV29ya2VyKQorQ09OVkVSVF9UTyhEZWRpY2F0ZWRXb3Jr
ZXJDb250ZXh0KQorI2VuZGlmCisKKyNpZiBFTkFCTEUoU0hBUkVEX1dPUktFUlMpCitDT05WRVJU
X1RPKFNoYXJlZFdvcmtlcikKK0NPTlZFUlRfVE8oU2hhcmVkV29ya2VyQ29udGV4dCkKKyNlbmRp
ZgorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCitDT05WRVJUX1RPKE5vdGlmaWNhdGlvbikK
KyNlbmRpZgorCisjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQorQ09OVkVSVF9UTyhXZWJTb2NrZXQp
CisjZW5kaWYKKwogV2ViQ29yZTo6RXZlbnRUYXJnZXQqIHRvV2ViQ29yZShjb25zdCBXZWJET01F
dmVudFRhcmdldCYgd3JhcHBlcikKIHsKICAgICByZXR1cm4gd3JhcHBlci5pbXBsKCk7CkBAIC05
NSw2ICsxMzYsMjEgQEAgV2ViQ29yZTo6RXZlbnRUYXJnZXQqIHRvV2ViQ29yZShjb25zdCBXZWJE
T01FdmVudFRhcmdldCYgd3JhcHBlcikKIAogV2ViRE9NRXZlbnRUYXJnZXQgdG9XZWJLaXQoV2Vi
Q29yZTo6RXZlbnRUYXJnZXQqIHZhbHVlKQogeworICAgIGlmIChXZWJDb3JlOjpOb2RlKiBub2Rl
ID0gdmFsdWUtPnRvTm9kZSgpKQorICAgICAgICByZXR1cm4gdG9XZWJLaXQobm9kZSk7CisKKyAg
ICBpZiAoV2ViQ29yZTo6RE9NV2luZG93KiB3aW5kb3cgPSB2YWx1ZS0+dG9ET01XaW5kb3coKSkK
KyAgICAgICAgcmV0dXJuIHRvV2ViS2l0KHdpbmRvdyk7CisKKyAgICBpZiAoV2ViQ29yZTo6WE1M
SHR0cFJlcXVlc3QqIHhociA9IHZhbHVlLT50b1hNTEh0dHBSZXF1ZXN0KCkpCisgICAgICAgIHJl
dHVybiB0b1dlYktpdCh4aHIpOworCisgICAgaWYgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0VXBs
b2FkKiB1cGxvYWQgPSB2YWx1ZS0+dG9YTUxIdHRwUmVxdWVzdFVwbG9hZCgpKQorICAgICAgICBy
ZXR1cm4gdG9XZWJLaXQodXBsb2FkKTsKKworICAgIGlmIChXZWJDb3JlOjpNZXNzYWdlUG9ydCog
bWVzc2FnZVBvcnQgPSB2YWx1ZS0+dG9NZXNzYWdlUG9ydCgpKQorICAgICAgICByZXR1cm4gdG9X
ZWJLaXQobWVzc2FnZVBvcnQpOworCiAjaWYgRU5BQkxFKEVWRU5UU09VUkNFKQogICAgIGlmIChX
ZWJDb3JlOjpFdmVudFNvdXJjZSogZXZlbnRTb3VyY2UgPSB2YWx1ZS0+dG9FdmVudFNvdXJjZSgp
KQogICAgICAgICByZXR1cm4gdG9XZWJLaXQoZXZlbnRTb3VyY2UpOwpAQCAtMTA3LDIzICsxNjMs
MTEgQEAgV2ViRE9NRXZlbnRUYXJnZXQgdG9XZWJLaXQoV2ViQ29yZTo6RXZlbnRUYXJnZXQqIHZh
bHVlKQogICAgICAgICByZXR1cm4gdG9XZWJLaXQoaW5zdGFuY2UpOwogI2VuZGlmCiAKLSAgICBp
ZiAoV2ViQ29yZTo6Tm9kZSogbm9kZSA9IHZhbHVlLT50b05vZGUoKSkKLSAgICAgICAgcmV0dXJu
IHRvV2ViS2l0KG5vZGUpOwotCi0gICAgaWYgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0KiB4aHIg
PSB2YWx1ZS0+dG9YTUxIdHRwUmVxdWVzdCgpKQotICAgICAgICByZXR1cm4gdG9XZWJLaXQoeGhy
KTsKLQotICAgIGlmIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVzdFVwbG9hZCogdXBsb2FkID0gdmFs
dWUtPnRvWE1MSHR0cFJlcXVlc3RVcGxvYWQoKSkKLSAgICAgICAgcmV0dXJuIHRvV2ViS2l0KHVw
bG9hZCk7Ci0KICNpZiBFTkFCTEUoT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKQogICAgIGlmIChX
ZWJDb3JlOjpET01BcHBsaWNhdGlvbkNhY2hlKiBjYWNoZSA9IHZhbHVlLT50b0RPTUFwcGxpY2F0
aW9uQ2FjaGUoKSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGNhY2hlKTsKICNlbmRpZgogCi0g
ICAgaWYgKFdlYkNvcmU6Ok1lc3NhZ2VQb3J0KiBtZXNzYWdlUG9ydCA9IHZhbHVlLT50b01lc3Nh
Z2VQb3J0KCkpCi0gICAgICAgIHJldHVybiB0b1dlYktpdChtZXNzYWdlUG9ydCk7Ci0KICNpZiBF
TkFCTEUoV09SS0VSUykKICAgICBpZiAoV2ViQ29yZTo6V29ya2VyKiB3b3JrZXIgPSB2YWx1ZS0+
dG9Xb3JrZXIoKSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KHdvcmtlcik7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oIGIvV2ViQ29yZS9iaW5k
aW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaAppbmRleCBmNTM2MGNhLi45YjAxZTZkIDEwMDY0
NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oCisrKyBiL1dl
YkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmgKQEAgLTI2LDYgKzI2LDIwIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEV2ZW50VGFyZ2V0OwogfTsKIAorY2xhc3MgV2Vi
RE9NTm9kZTsKK2NsYXNzIFdlYkRPTURPTVdpbmRvdzsKK2NsYXNzIFdlYkRPTVhNTEh0dHBSZXF1
ZXN0OworY2xhc3MgV2ViRE9NWE1MSHR0cFJlcXVlc3RVcGxvYWQ7CitjbGFzcyBXZWJET01NZXNz
YWdlUG9ydDsKK2NsYXNzIFdlYkRPTUV2ZW50U291cmNlOworY2xhc3MgV2ViRE9NRE9NQXBwbGlj
YXRpb25DYWNoZTsKK2NsYXNzIFdlYkRPTVdvcmtlcjsKK2NsYXNzIFdlYkRPTURlZGljYXRlZFdv
cmtlckNvbnRleHQ7CitjbGFzcyBXZWJET01TaGFyZWRXb3JrZXI7CitjbGFzcyBXZWJET01TaGFy
ZWRXb3JrZXJDb250ZXh0OworY2xhc3MgV2ViRE9NTm90aWZpY2F0aW9uOworY2xhc3MgV2ViRE9N
V2ViU29ja2V0OworCiBjbGFzcyBXZWJET01FdmVudFRhcmdldCA6IHB1YmxpYyBXZWJET01PYmpl
Y3QgewogcHVibGljOgogICAgIFdlYkRPTUV2ZW50VGFyZ2V0KCk7CkBAIC0zNSw4ICs0OSwyMCBA
QCBwdWJsaWM6CiAKICAgICBXZWJDb3JlOjpFdmVudFRhcmdldCogaW1wbCgpIGNvbnN0OwogCi0g
ICAgLy8gRklYTUU6IEFkZCBhIHBvc3NpYmlsaXR5IHRvIGNoZWNrIHdoYXQga2luZCBvZiBFdmVu
dFRhcmdldCB3ZSBoYXZlLAotICAgIC8vIHRvIGJlIGFibGUgdG8gY2FzdCBlZy4gYSBXZWJET01F
dmVudFRhcmdldCB0byBhIFdlYkRPTU5vZGUKKyAgICBXZWJET01Ob2RlIHRvTm9kZSgpOworICAg
IFdlYkRPTURPTVdpbmRvdyB0b0RPTVdpbmRvdygpOworICAgIFdlYkRPTVhNTEh0dHBSZXF1ZXN0
IHRvWE1MSHR0cFJlcXVlc3QoKTsKKyAgICBXZWJET01YTUxIdHRwUmVxdWVzdFVwbG9hZCB0b1hN
TEh0dHBSZXF1ZXN0VXBsb2FkKCk7CisgICAgV2ViRE9NTWVzc2FnZVBvcnQgdG9NZXNzYWdlUG9y
dCgpOworCisgICAgV2ViRE9NRXZlbnRTb3VyY2UgdG9FdmVudFNvdXJjZSgpOworICAgIFdlYkRP
TURPTUFwcGxpY2F0aW9uQ2FjaGUgdG9ET01BcHBsaWNhdGlvbkNhY2hlKCk7CisgICAgV2ViRE9N
V29ya2VyIHRvV29ya2VyKCk7CisgICAgV2ViRE9NRGVkaWNhdGVkV29ya2VyQ29udGV4dCB0b0Rl
ZGljYXRlZFdvcmtlckNvbnRleHQoKTsKKyAgICBXZWJET01TaGFyZWRXb3JrZXIgdG9TaGFyZWRX
b3JrZXIoKTsKKyAgICBXZWJET01TaGFyZWRXb3JrZXJDb250ZXh0IHRvU2hhcmVkV29ya2VyQ29u
dGV4dCgpOworICAgIFdlYkRPTU5vdGlmaWNhdGlvbiB0b05vdGlmaWNhdGlvbigpOworICAgIFdl
YkRPTVdlYlNvY2tldCB0b1dlYlNvY2tldCgpOwogCiBwcm90ZWN0ZWQ6CiAgICAgc3RydWN0IFdl
YkRPTUV2ZW50VGFyZ2V0UHJpdmF0ZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JDUFAucG0KaW5kZXggYzg0MjVhMy4uNWFlYTM2OCAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0KKysrIGIvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0KQEAgLTM3OSwxMiArMzc5LDEyIEBAIHN1
YiBHZW5lcmF0ZUhlYWRlcgogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgZXhwbGljaXQg
JGNsYXNzTmFtZSgkaW1wbENsYXNzTmFtZVdpdGhOYW1lc3BhY2UqKTtcbiIpOwogCiAgICAgIyBD
b3B5IGNvbnN0cnVjdG9yIG9uIGNsYXNzZXMgd2hpY2ggaGF2ZSB0aGUgZC1wdHIKLSAgICBpZiAo
QHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApIHsKKyAgICBpZiAoJHBhcmVudE5hbWUgZXEgIldl
YkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICAkY2xhc3NO
YW1lKGNvbnN0ICRjbGFzc05hbWUmKTtcbiIpOwogICAgIH0KIAogICAgICMgRGVzdHJ1Y3Rvcgot
ICAgIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkcGFyZW50TmFt
ZSBlcSAiV2ViRE9NT2JqZWN0IikgewogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAg
IH4kY2xhc3NOYW1lKCk7XG4iKTsKICAgICB9CiAKQEAgLTQ5Niw3ICs0OTYsNyBAQCBzdWIgR2Vu
ZXJhdGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG4iKTsKICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgICRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSogaW1wbCgpIGNv
bnN0O1xuIik7CiAKLSAgICBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApIHsKKyAgICBp
ZiAoJHBhcmVudE5hbWUgZXEgIldlYkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVzaChAaGVhZGVy
Q29udGVudCwgIlxucHJvdGVjdGVkOlxuIik7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQs
ICIgICAgc3RydWN0ICR7Y2xhc3NOYW1lfVByaXZhdGU7XG4iKTsKICAgICAgICAgcHVzaChAaGVh
ZGVyQ29udGVudCwgIiAgICAke2NsYXNzTmFtZX1Qcml2YXRlKiBtX2ltcGw7XG4iKTsKQEAgLTU5
OCw3ICs1OTgsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIHB1c2goQGltcGxD
b250ZW50LCAiI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD5cblxuIik7CiAKICAgICAjIFByaXZhdGUg
ZGF0YXN0cnVjdHVyZSwgZW5jYXBzdWxhdGluZyBXZWJDb3JlIHR5cGVzCi0gICAgaWYgKEB7JGRh
dGFOb2RlLT5wYXJlbnRzfSBlcSAwKSB7CisgICAgaWYgKCRiYXNlQ2xhc3MgZXEgIldlYkRPTU9i
amVjdCIpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJzdHJ1Y3QgJHtjbGFzc05hbWV9
Ojoke2NsYXNzTmFtZX1Qcml2YXRlIHtcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwg
IiAgICAke2NsYXNzTmFtZX1Qcml2YXRlKCRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSogb2Jq
ZWN0ID0gMClcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgOiBpbXBs
KG9iamVjdClcbiIpOwpAQCAtNjExLDEyICs2MTEsMTIgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICAjIENvbnN0cnVjdG9yCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIke2NsYXNz
TmFtZX06OiRjbGFzc05hbWUoKVxuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgOiAk
e2Jhc2VDbGFzc30oKVxuIik7Ci0gICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgLCBtX2ltcGwo
MClcbiIpIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCk7CisgICAgcHVzaChAaW1wbENv
bnRlbnQsICIgICAgLCBtX2ltcGwoMClcbiIpIGlmICgkYmFzZUNsYXNzIGVxICJXZWJET01PYmpl
Y3QiKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwogICAgIHB1c2goQGltcGxDb250
ZW50LCAifVxuXG4iKTsKIAogICAgIHB1c2goQGltcGxDb250ZW50LCAiJHtjbGFzc05hbWV9Ojok
Y2xhc3NOYW1lKCRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSogaW1wbClcbiIpOwotICAgIGlm
IChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkYmFzZUNsYXNzIGVxICJX
ZWJET01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIDogJHtiYXNl
Q2xhc3N9KClcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAsIG1faW1wbChu
ZXcgJHtjbGFzc05hbWV9UHJpdmF0ZShpbXBsKSlcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIntcbiIpOwotLSAKMS42LjUuMS4xMzY3LmdjZDQ4Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58668</attachid>
            <date>2010-06-14 10:10:37 -0700</date>
            <delta_ts>2010-06-15 07:12:05 -0700</delta_ts>
            <desc>Fix CPP bindings for DOMWindow (v2)</desc>
            <filename>0001-2010-06-14-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>5430</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSAzMDE1YWMzYzJhN2YwYzIxZWEyMzBlZWQ1Y2ZhNTM4NTkwMTcyNjAzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogTW9uLCAxNCBKdW4gMjAxMCAxMzowNTozOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIDIwMTAt
MDYtMTQgIEthcnRpa2F5YSBHdXB0YSAgPGthZ3VwdGFAcmltLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIEFkZCBtb3JlIGNvbXBsZXRlIEMrKyBiaW5k
aW5ncyBmb3IgdGhlIHdpbmRvdyBvYmplY3QuIEluc3RlYWQgb2YgbWFwcGluZyBldmVyeXRoaW5n
IGJhY2sgdG8gQWJzdHJhY3RWaWV3LCBqdXN0IHVzZSBET01XaW5kb3cgZGlyZWN0bHkuIFRoaXMg
d2F5IG1ldGhvZHMgb24gRE9NV2luZG93IHRoYXQgYXJlIHN1cHBvc2VkIHRvIGJlIGV4cG9zZWQg
KGUuZy4gZ2V0Q29tcHV0ZWRTdHlsZSwgYWRkRXZlbnRMaXN0ZW5lcikgYXJlIGFjY2Vzc2libGUu
CgogICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQoKICAgICAgICAqIGJpbmRpbmdzL2NwcC9X
ZWJET01ET01XaW5kb3dDdXN0b20uY3BwOiBBZGRlZC4KICAgICAgICAoV2ViRE9NRE9NV2luZG93
OjphZGRFdmVudExpc3RlbmVyKToKICAgICAgICAoV2ViRE9NRE9NV2luZG93OjpyZW1vdmVFdmVu
dExpc3RlbmVyKToKICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5w
bToKICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKLS0tCiBXZWJDb3JlL2JpbmRpbmdzL2Nw
cC9XZWJET01ET01XaW5kb3dDdXN0b20uY3BwIHwgICA0MyArKysrKysrKysrKysrKysrKysrKysr
KysKIFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtICAgfCAgIDE1
ICsrLS0tLS0tLQogV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwgICAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKy0KIDMgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRp
b25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRE9N
V2luZG93Q3VzdG9tLmNwcAoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRP
TURPTVdpbmRvd0N1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01XaW5k
b3dDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkZDllYzQK
LS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01XaW5kb3dD
dXN0b20uY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIFJlc2VhcmNo
IEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91
ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0
cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAq
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFy
eTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBG
bG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNpbmNsdWRlICJXZWJET01ET01XaW5kb3cuaCIKKworI2luY2x1ZGUgIkRPTVdp
bmRvdy5oIgorI2luY2x1ZGUgIldlYkRPTUV2ZW50TGlzdGVuZXIuaCIKKyNpbmNsdWRlICJXZWJO
YXRpdmVFdmVudExpc3RlbmVyLmgiCisKK3ZvaWQgV2ViRE9NRE9NV2luZG93OjphZGRFdmVudExp
c3RlbmVyKGNvbnN0IFdlYkRPTVN0cmluZyYgdHlwZSwgY29uc3QgV2ViRE9NRXZlbnRMaXN0ZW5l
ciYgbGlzdGVuZXIsIGJvb2wgdXNlQ2FwdHVyZSkKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKHRvV2ViQ29yZShsaXN0ZW5lcikpCisgICAgICAgIGltcGwo
KS0+YWRkRXZlbnRMaXN0ZW5lcih0eXBlLCB0b1dlYkNvcmUobGlzdGVuZXIpLCB1c2VDYXB0dXJl
KTsKK30KKwordm9pZCBXZWJET01ET01XaW5kb3c6OnJlbW92ZUV2ZW50TGlzdGVuZXIoY29uc3Qg
V2ViRE9NU3RyaW5nJiB0eXBlLCBjb25zdCBXZWJET01FdmVudExpc3RlbmVyJiBsaXN0ZW5lciwg
Ym9vbCB1c2VDYXB0dXJlKQoreworICAgIGlmICghaW1wbCgpKQorICAgICAgICByZXR1cm47CisK
KyAgICBpZiAodG9XZWJDb3JlKGxpc3RlbmVyKSkKKyAgICAgICAgaW1wbCgpLT5yZW1vdmVFdmVu
dExpc3RlbmVyKHR5cGUsIHRvV2ViQ29yZShsaXN0ZW5lciksIHVzZUNhcHR1cmUpOworfQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0gYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbQppbmRleCBmNDQxYjBl
Li5jODQyNWEzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckNQUC5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQ
UC5wbQpAQCAtMTQ1LDcgKzE0NSw2IEBAIHN1YiBHZXRDbGFzc05hbWUKIAogICAgICMgc3BlY2lh
bCBjYXNlcwogICAgIHJldHVybiAiV2ViRE9NU3RyaW5nIiBpZiAkY29kZUdlbmVyYXRvci0+SXNT
dHJpbmdUeXBlKCRuYW1lKSBvciAkbmFtZSBlcSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIjsKLSAg
ICByZXR1cm4gIldlYkRPTUFic3RyYWN0VmlldyIgaWYgJG5hbWUgZXEgIkRPTVdpbmRvdyI7CiAg
ICAgcmV0dXJuICJXZWJET01PYmplY3QiIGlmICRuYW1lIGVxICJET01PYmplY3QiOwogICAgIHJl
dHVybiAiYm9vbCIgaWYgJG5hbWUgZXEgImJvb2xlYW4iOwogICAgIHJldHVybiAkbmFtZSBpZiAk
Y29kZUdlbmVyYXRvci0+SXNQcmltaXRpdmVUeXBlKCRuYW1lKTsKQEAgLTE1NSwxMCArMTU0LDcg
QEAgc3ViIEdldENsYXNzTmFtZQogCiBzdWIgR2V0SW1wbENsYXNzTmFtZQogewotICAgIG15ICRu
YW1lID0gJGNvZGVHZW5lcmF0b3ItPlN0cmlwTW9kdWxlKHNoaWZ0KTsKLQotICAgIHJldHVybiAi
RE9NV2luZG93IiBpZiAkbmFtZSBlcSAiQWJzdHJhY3RWaWV3IjsKLSAgICByZXR1cm4gJG5hbWU7
CisgICAgcmV0dXJuICRjb2RlR2VuZXJhdG9yLT5TdHJpcE1vZHVsZShzaGlmdCk7CiB9CiAKIHN1
YiBHZXRQYXJlbnRJbXBsQ2xhc3NOYW1lCkBAIC0yMDMsNyArMTk5LDggQEAgc3ViIFNob3VsZFNr
aXBUeXBlSW5JbXBsZW1lbnRhdGlvbgogCiAgICAgcmV0dXJuIDEgaWYgJHR5cGVJbmZvLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Bcmd1bWVudEhhbmRsaW5nIn0KICAg
ICAgICAgICAgICBvciAkdHlwZUluZm8tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkN1c3RvbUdldHRlciJ9Ci0gICAgICAgICAgICAgb3IgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJOZWVkc1VzZXJHZXN0dXJlQ2hlY2sifTsKKyAgICAgICAgICAg
ICBvciAkdHlwZUluZm8tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5lZWRzVXNl
ckdlc3R1cmVDaGVjayJ9CisgICAgICAgICAgICAgb3IgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJDUFBDdXN0b20ifTsKIAogICAgICMgRklYTUU6IFdlIGRvbid0
IGdlbmVyYXRlIGJpbmRpbmdzIGZvciBTVkcgcmVsYXRlZCBpbnRlcmZhY2VzIHlldAogICAgIHJl
dHVybiAxIGlmICR0eXBlSW5mby0+c2lnbmF0dXJlLT5uYW1lID1+IC9nZXRTVkdEb2N1bWVudC87
CkBAIC0yOTcsMTIgKzI5NCw2IEBAIHN1YiBBZGRJbmNsdWRlc0ZvclR5cGUKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIGlmICgkdHlwZSBlcSAiRE9NV2luZG93IikgewotICAgICAgICAk
aW1wbEluY2x1ZGVzeyJET01XaW5kb3cuaCJ9ID0gMTsKLSAgICAgICAgJGltcGxJbmNsdWRlc3si
V2ViRE9NQWJzdHJhY3RWaWV3LmgifSA9IDE7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KICAg
ICBpZiAoJHR5cGUgZXEgIkV2ZW50TGlzdGVuZXIiKSB7CiAgICAgICAgICRpbXBsSW5jbHVkZXN7
IldlYk5hdGl2ZUV2ZW50TGlzdGVuZXIuaCJ9ID0gMTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwgYi9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmlkbAppbmRleCBiNDc2NTE0Li5jNjc5YWM0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmlkbAorKysgYi9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbApAQCAtNTQsNyArNTQs
NyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgYXR0cmlidXRlIFtSZXBsYWNlYWJsZV0gQmFy
SW5mbyB0b29sYmFyOwogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlXSBOYXZpZ2F0b3Ig
bmF2aWdhdG9yOwogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlXSBOYXZpZ2F0b3IgY2xp
ZW50SW5mb3JtYXRpb247Ci0gICAgICAgIGF0dHJpYnV0ZSBbRG9Ob3RDaGVja0RvbWFpblNlY3Vy
aXR5LCBKU0NDdXN0b20sIFY4Q3VzdG9tU2V0dGVyLCBWOERpc2FsbG93U2hhZG93aW5nXSBMb2Nh
dGlvbiBsb2NhdGlvbjsKKyAgICAgICAgYXR0cmlidXRlIFtEb05vdENoZWNrRG9tYWluU2VjdXJp
dHksIEpTQ0N1c3RvbSwgVjhDdXN0b21TZXR0ZXIsIFY4RGlzYWxsb3dTaGFkb3dpbmcsIENQUEN1
c3RvbV0gTG9jYXRpb24gbG9jYXRpb247CiAKICAgICAgICAgYXR0cmlidXRlIFtSZXBsYWNlYWJs
ZSwgQ3VzdG9tR2V0dGVyLCBWOEN1c3RvbVNldHRlcl0gRXZlbnQgZXZlbnQ7CiAKLS0gCjEuNi41
LjEuMTM2Ny5nY2Q0OAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58774</attachid>
            <date>2010-06-15 07:12:05 -0700</date>
            <delta_ts>2010-06-17 21:36:04 -0700</delta_ts>
            <desc>Unified patch with ChangeLog</desc>
            <filename>0001-2010-06-15-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>26526</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSAwZDZmOWFjOTg3ODA5YWZjYmZkNDFkODI5NTU2MGQzYWRhNjFmZDdhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogVHVlLCAxNSBKdW4gMjAxMCAxMDowMzo0OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIDIwMTAt
MDYtMTUgIEthcnRpa2F5YSBHdXB0YSAgPGthZ3VwdGFAcmltLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIENQUCBiaW5kaW5ncyBtaXNzaW5nIHNvbWUg
QVBJcwogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDU3
MAoKICAgICAgICBBZGQgbWlzc2luZyBDKysgRE9NIEFQSSBiaW5kaW5ncy4gU3BlY2lmaWNhbGx5
OgogICAgICAgIC0gTm9kZUZpbHRlciBjYWxsYmFjayBzdXBwb3J0CiAgICAgICAgLSBNaXNzaW5n
IGN1c3RvbSBtZXRob2QgaW1wbGVtZW50YXRpb25zIGluIEhUTUxDb2xsZWN0aW9uIGFuZCBIVE1M
T3B0aW9uc0NvbGxlY3Rpb24KICAgICAgICAtIE1pc3NpbmcgRXZlbnRUYXJnZXQgc3RhdGljIHR5
cGUtZGV0ZXJtaW5hdGlvbiBtZXRob2RzCiAgICAgICAgLSBGaXggQ1BQIGJpbmRpbmcgZ2VuZXJh
dG9yIHRvIG5vdCBnZW5lcmF0ZSBkLXB0cnMgZm9yIGNsYXNzZXMgdGhhdCBleHRlbmQgRXZlbnRU
YXJnZXQgYW5kIGp1c3QgdXNlIHRoZSBwYXJlbnQncyBkLXB0ciBpbnN0ZWFkCiAgICAgICAgLSBT
d2l0Y2ggYmluZGluZyBnZW5lcmF0b3IgdG8gdXNlIERPTVdpbmRvdyBpbnN0ZWFkIG9mIEFic3Ry
YWN0VmlldyBzbyB0aGF0IG5lY2Vzc2FyeSBXM0MtZGVmaW5lZCBtZXRob2RzIChlLmcuIGdldENv
bXB1dGVkU3R5bGUpIGFyZSBhY2Nlc3NpYmxlLgoKICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BT
ISkKCiAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRk
ZWQuCiAgICAgICAgKFdlYkRPTURPTVdpbmRvdzo6YWRkRXZlbnRMaXN0ZW5lcik6CiAgICAgICAg
KFdlYkRPTURPTVdpbmRvdzo6cmVtb3ZlRXZlbnRMaXN0ZW5lcik6CiAgICAgICAgKiBiaW5kaW5n
cy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwOgogICAgICAgICh0b1dlYktpdCk6CiAgICAgICAg
KiBiaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaDoKICAgICAgICAqIGJpbmRpbmdzL2Nw
cC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgogICAgICAgIChXZWJET01I
VE1MQ29sbGVjdGlvbjo6aXRlbSk6CiAgICAgICAgKFdlYkRPTUhUTUxDb2xsZWN0aW9uOjpuYW1l
ZEl0ZW0pOgogICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlv
bkN1c3RvbS5jcHA6IEFkZGVkLgogICAgICAgIChXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb246
Omxlbmd0aCk6CiAgICAgICAgKFdlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbjo6c2V0TGVuZ3Ro
KToKICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcDogQWRk
ZWQuCiAgICAgICAgKFdlYkRPTU5vZGVGaWx0ZXI6OmFjY2VwdE5vZGUpOgogICAgICAgICh0b1dl
YktpdCk6CiAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlv
bi5jcHA6IEFkZGVkLgogICAgICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpXZWJO
YXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uKToKICAgICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbjo6fldlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24pOgogICAgICAgIChXZWJOYXRp
dmVOb2RlRmlsdGVyQ29uZGl0aW9uOjphY2NlcHROb2RlKToKICAgICAgICAqIGJpbmRpbmdzL2Nw
cC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmg6IEFkZGVkLgogICAgICAgIChXZWJOYXRp
dmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpjcmVhdGUpOgogICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy9Db2RlR2VuZXJhdG9yQ1BQLnBtOgogICAgICAgICogZG9tL05vZGVGaWx0ZXIuaWRsOgogICAg
ICAgICogcGFnZS9ET01XaW5kb3cuaWRsOgotLS0KIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0MSArKysrKysrKysrKysKIFdlYkNvcmUvYmlu
ZGluZ3MvY3BwL1dlYkRPTURPTVdpbmRvd0N1c3RvbS5jcHAgICAgIHwgICA0MyArKysrKysrKysr
KysKIFdlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNwcCAgICAgICAgIHwg
ICA2OCArKysrKysrKysrKysrKysrLS0tLQogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZl
bnRUYXJnZXQuaCAgICAgICAgICAgfCAgIDMwICsrKysrKysrLQogLi4uL2JpbmRpbmdzL2NwcC9X
ZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAgICAgfCAgIDQzICsrKysrKysrKysrKwogLi4u
L2NwcC9XZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwICAgICAgfCAgIDQyICsr
KysrKysrKysrKwogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NTm9kZUZpbHRlckN1c3RvbS5j
cHAgICAgfCAgIDQ0ICsrKysrKysrKysrKysKIC4uLi9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9k
ZUZpbHRlckNvbmRpdGlvbi5jcHAgIHwgICA0MCArKysrKysrKysrKysKIC4uLi9iaW5kaW5ncy9j
cHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oICAgIHwgICA0NCArKysrKysrKysrKysr
CiBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbSAgICAgICB8ICAg
MjcgKysrLS0tLS0KIFdlYkNvcmUvZG9tL05vZGVGaWx0ZXIuaWRsICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgOCArKy0KIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgMiArLQogMTIgZmlsZXMgY2hhbmdlZCwgMzk3IGluc2VydGlvbnMo
KyksIDM1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFdlYkNvcmUvYmluZGluZ3Mv
Y3BwL1dlYkRPTURPTVdpbmRvd0N1c3RvbS5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3Jl
L2JpbmRpbmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb25D
dXN0b20uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9N
Tm9kZUZpbHRlckN1c3RvbS5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdz
L2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmNwcAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFdlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uaAoKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGEy
YWRjMi4uZTk5ZWY1OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29y
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NCBAQAorMjAxMC0wNi0xNSAgS2FydGlrYXlhIEd1cHRh
ICA8a2FndXB0YUByaW0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIENQUCBiaW5kaW5ncyBtaXNzaW5nIHNvbWUgQVBJcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA1NzAKKworICAgICAgICBBZGQg
bWlzc2luZyBDKysgRE9NIEFQSSBiaW5kaW5ncy4gU3BlY2lmaWNhbGx5OgorICAgICAgICAtIE5v
ZGVGaWx0ZXIgY2FsbGJhY2sgc3VwcG9ydAorICAgICAgICAtIE1pc3NpbmcgY3VzdG9tIG1ldGhv
ZCBpbXBsZW1lbnRhdGlvbnMgaW4gSFRNTENvbGxlY3Rpb24gYW5kIEhUTUxPcHRpb25zQ29sbGVj
dGlvbgorICAgICAgICAtIE1pc3NpbmcgRXZlbnRUYXJnZXQgc3RhdGljIHR5cGUtZGV0ZXJtaW5h
dGlvbiBtZXRob2RzCisgICAgICAgIC0gRml4IENQUCBiaW5kaW5nIGdlbmVyYXRvciB0byBub3Qg
Z2VuZXJhdGUgZC1wdHJzIGZvciBjbGFzc2VzIHRoYXQgZXh0ZW5kIEV2ZW50VGFyZ2V0IGFuZCBq
dXN0IHVzZSB0aGUgcGFyZW50J3MgZC1wdHIgaW5zdGVhZAorICAgICAgICAtIFN3aXRjaCBiaW5k
aW5nIGdlbmVyYXRvciB0byB1c2UgRE9NV2luZG93IGluc3RlYWQgb2YgQWJzdHJhY3RWaWV3IHNv
IHRoYXQgbmVjZXNzYXJ5IFczQy1kZWZpbmVkIG1ldGhvZHMgKGUuZy4gZ2V0Q29tcHV0ZWRTdHls
ZSkgYXJlIGFjY2Vzc2libGUuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoT09QUyEpCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRkZWQuCisg
ICAgICAgIChXZWJET01ET01XaW5kb3c6OmFkZEV2ZW50TGlzdGVuZXIpOgorICAgICAgICAoV2Vi
RE9NRE9NV2luZG93OjpyZW1vdmVFdmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9j
cHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwOgorICAgICAgICAodG9XZWJLaXQpOgorICAgICAgICAq
IGJpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oOgorICAgICAgICAqIGJpbmRpbmdzL2Nw
cC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViRE9N
SFRNTENvbGxlY3Rpb246Oml0ZW0pOgorICAgICAgICAoV2ViRE9NSFRNTENvbGxlY3Rpb246Om5h
bWVkSXRlbSk6CisgICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVj
dGlvbkN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0
aW9uOjpsZW5ndGgpOgorICAgICAgICAoV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpzZXRM
ZW5ndGgpOgorICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJET01Ob2RlRmlsdGVyOjphY2NlcHROb2RlKToKKyAgICAg
ICAgKHRvV2ViS2l0KToKKyAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRl
ckNvbmRpdGlvbi5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRp
dGlvbjo6V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6CisgICAgICAgIChXZWJOYXRpdmVO
b2RlRmlsdGVyQ29uZGl0aW9uOjp+V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbik6CisgICAg
ICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjphY2NlcHROb2RlKToKKyAgICAgICAg
KiBiaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0ZSk6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtOgorICAgICAgICAqIGRvbS9Ob2Rl
RmlsdGVyLmlkbDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisKIDIwMTAtMDYtMDcg
IE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgU2FtIFdlaW5pZy4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dl
YkRPTURPTVdpbmRvd0N1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01X
aW5kb3dDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkZDll
YzQKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01XaW5k
b3dDdXN0b20uY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIFJlc2Vh
cmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2Vu
ZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQg
eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
KyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g
IFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0
aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJXZWJET01ET01XaW5kb3cuaCIKKworI2luY2x1ZGUgIkRP
TVdpbmRvdy5oIgorI2luY2x1ZGUgIldlYkRPTUV2ZW50TGlzdGVuZXIuaCIKKyNpbmNsdWRlICJX
ZWJOYXRpdmVFdmVudExpc3RlbmVyLmgiCisKK3ZvaWQgV2ViRE9NRE9NV2luZG93OjphZGRFdmVu
dExpc3RlbmVyKGNvbnN0IFdlYkRPTVN0cmluZyYgdHlwZSwgY29uc3QgV2ViRE9NRXZlbnRMaXN0
ZW5lciYgbGlzdGVuZXIsIGJvb2wgdXNlQ2FwdHVyZSkKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgaWYgKHRvV2ViQ29yZShsaXN0ZW5lcikpCisgICAgICAgIGlt
cGwoKS0+YWRkRXZlbnRMaXN0ZW5lcih0eXBlLCB0b1dlYkNvcmUobGlzdGVuZXIpLCB1c2VDYXB0
dXJlKTsKK30KKwordm9pZCBXZWJET01ET01XaW5kb3c6OnJlbW92ZUV2ZW50TGlzdGVuZXIoY29u
c3QgV2ViRE9NU3RyaW5nJiB0eXBlLCBjb25zdCBXZWJET01FdmVudExpc3RlbmVyJiBsaXN0ZW5l
ciwgYm9vbCB1c2VDYXB0dXJlKQoreworICAgIGlmICghaW1wbCgpKQorICAgICAgICByZXR1cm47
CisKKyAgICBpZiAodG9XZWJDb3JlKGxpc3RlbmVyKSkKKyAgICAgICAgaW1wbCgpLT5yZW1vdmVF
dmVudExpc3RlbmVyKHR5cGUsIHRvV2ViQ29yZShsaXN0ZW5lciksIHVzZUNhcHR1cmUpOworfQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwIGIv
V2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3BwCmluZGV4IDJlYWVmMDAu
LjlhYTFkYzYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFy
Z2V0LmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5jcHAK
QEAgLTIyLDYgKzIyLDcgQEAKICNpbmNsdWRlICJXZWJET01FdmVudFRhcmdldC5oIgogCiAjaW5j
bHVkZSAiRE9NQXBwbGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgogI2lu
Y2x1ZGUgIkRlZGljYXRlZFdvcmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJFdmVudFNvdXJjZS5o
IgogI2luY2x1ZGUgIk1lc3NhZ2VQb3J0LmgiCkBAIC0zMSw2ICszMiw3IEBACiAjaW5jbHVkZSAi
U2hhcmVkV29ya2VyQ29udGV4dC5oIgogI2luY2x1ZGUgIlRocmVhZENoZWNrLmgiCiAjaW5jbHVk
ZSAiV2ViRE9NRE9NQXBwbGljYXRpb25DYWNoZS5oIgorI2luY2x1ZGUgIldlYkRPTURPTVdpbmRv
dy5oIgogI2luY2x1ZGUgIldlYkRPTURlZGljYXRlZFdvcmtlckNvbnRleHQuaCIKICNpbmNsdWRl
ICJXZWJET01FdmVudFNvdXJjZS5oIgogI2luY2x1ZGUgIldlYkRPTU1lc3NhZ2VQb3J0LmgiCkBA
IC04OCw2ICs5MCw0NSBAQCBXZWJDb3JlOjpFdmVudFRhcmdldCogV2ViRE9NRXZlbnRUYXJnZXQ6
OmltcGwoKSBjb25zdAogICAgIHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmltcGwuZ2V0KCkgOiAw
OwogfQogCisjZGVmaW5lIENPTlZFUlRfVE8odHlwZSkgXAorV2ViRE9NIyN0eXBlIFdlYkRPTUV2
ZW50VGFyZ2V0Ojp0byMjdHlwZSgpIFwKK3sgXAorICAgIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0
YXJnZXQgPSBpbXBsKCk7IFwKKyAgICByZXR1cm4gV2ViRE9NIyN0eXBlKHRhcmdldCA/IHRhcmdl
dC0+dG8jI3R5cGUoKSA6IDApOyBcCit9CisKK0NPTlZFUlRfVE8oTm9kZSkKK0NPTlZFUlRfVE8o
RE9NV2luZG93KQorQ09OVkVSVF9UTyhYTUxIdHRwUmVxdWVzdCkKK0NPTlZFUlRfVE8oWE1MSHR0
cFJlcXVlc3RVcGxvYWQpCitDT05WRVJUX1RPKE1lc3NhZ2VQb3J0KQorCisjaWYgRU5BQkxFKEVW
RU5UU09VUkNFKQorQ09OVkVSVF9UTyhFdmVudFNvdXJjZSkKKyNlbmRpZgorCisjaWYgRU5BQkxF
KE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKK0NPTlZFUlRfVE8oRE9NQXBwbGljYXRpb25DYWNo
ZSkKKyNlbmRpZgorCisjaWYgRU5BQkxFKFdPUktFUlMpCitDT05WRVJUX1RPKFdvcmtlcikKK0NP
TlZFUlRfVE8oRGVkaWNhdGVkV29ya2VyQ29udGV4dCkKKyNlbmRpZgorCisjaWYgRU5BQkxFKFNI
QVJFRF9XT1JLRVJTKQorQ09OVkVSVF9UTyhTaGFyZWRXb3JrZXIpCitDT05WRVJUX1RPKFNoYXJl
ZFdvcmtlckNvbnRleHQpCisjZW5kaWYKKworI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQorQ09O
VkVSVF9UTyhOb3RpZmljYXRpb24pCisjZW5kaWYKKworI2lmIEVOQUJMRShXRUJfU09DS0VUUykK
K0NPTlZFUlRfVE8oV2ViU29ja2V0KQorI2VuZGlmCisKIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0
b1dlYkNvcmUoY29uc3QgV2ViRE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiB7CiAgICAgcmV0dXJu
IHdyYXBwZXIuaW1wbCgpOwpAQCAtOTUsNiArMTM2LDIxIEBAIFdlYkNvcmU6OkV2ZW50VGFyZ2V0
KiB0b1dlYkNvcmUoY29uc3QgV2ViRE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiAKIFdlYkRPTUV2
ZW50VGFyZ2V0IHRvV2ViS2l0KFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB2YWx1ZSkKIHsKKyAgICBp
ZiAoV2ViQ29yZTo6Tm9kZSogbm9kZSA9IHZhbHVlLT50b05vZGUoKSkKKyAgICAgICAgcmV0dXJu
IHRvV2ViS2l0KG5vZGUpOworCisgICAgaWYgKFdlYkNvcmU6OkRPTVdpbmRvdyogd2luZG93ID0g
dmFsdWUtPnRvRE9NV2luZG93KCkpCisgICAgICAgIHJldHVybiB0b1dlYktpdCh3aW5kb3cpOwor
CisgICAgaWYgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0KiB4aHIgPSB2YWx1ZS0+dG9YTUxIdHRw
UmVxdWVzdCgpKQorICAgICAgICByZXR1cm4gdG9XZWJLaXQoeGhyKTsKKworICAgIGlmIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdFVwbG9hZCogdXBsb2FkID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVl
c3RVcGxvYWQoKSkKKyAgICAgICAgcmV0dXJuIHRvV2ViS2l0KHVwbG9hZCk7CisKKyAgICBpZiAo
V2ViQ29yZTo6TWVzc2FnZVBvcnQqIG1lc3NhZ2VQb3J0ID0gdmFsdWUtPnRvTWVzc2FnZVBvcnQo
KSkKKyAgICAgICAgcmV0dXJuIHRvV2ViS2l0KG1lc3NhZ2VQb3J0KTsKKwogI2lmIEVOQUJMRShF
VkVOVFNPVVJDRSkKICAgICBpZiAoV2ViQ29yZTo6RXZlbnRTb3VyY2UqIGV2ZW50U291cmNlID0g
dmFsdWUtPnRvRXZlbnRTb3VyY2UoKSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGV2ZW50U291
cmNlKTsKQEAgLTEwNywyMyArMTYzLDExIEBAIFdlYkRPTUV2ZW50VGFyZ2V0IHRvV2ViS2l0KFdl
YkNvcmU6OkV2ZW50VGFyZ2V0KiB2YWx1ZSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGluc3Rh
bmNlKTsKICNlbmRpZgogCi0gICAgaWYgKFdlYkNvcmU6Ok5vZGUqIG5vZGUgPSB2YWx1ZS0+dG9O
b2RlKCkpCi0gICAgICAgIHJldHVybiB0b1dlYktpdChub2RlKTsKLQotICAgIGlmIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdCogeGhyID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVlc3QoKSkKLSAgICAg
ICAgcmV0dXJuIHRvV2ViS2l0KHhocik7Ci0KLSAgICBpZiAoV2ViQ29yZTo6WE1MSHR0cFJlcXVl
c3RVcGxvYWQqIHVwbG9hZCA9IHZhbHVlLT50b1hNTEh0dHBSZXF1ZXN0VXBsb2FkKCkpCi0gICAg
ICAgIHJldHVybiB0b1dlYktpdCh1cGxvYWQpOwotCiAjaWYgRU5BQkxFKE9GRkxJTkVfV0VCX0FQ
UExJQ0FUSU9OUykKICAgICBpZiAoV2ViQ29yZTo6RE9NQXBwbGljYXRpb25DYWNoZSogY2FjaGUg
PSB2YWx1ZS0+dG9ET01BcHBsaWNhdGlvbkNhY2hlKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktp
dChjYWNoZSk7CiAjZW5kaWYKIAotICAgIGlmIChXZWJDb3JlOjpNZXNzYWdlUG9ydCogbWVzc2Fn
ZVBvcnQgPSB2YWx1ZS0+dG9NZXNzYWdlUG9ydCgpKQotICAgICAgICByZXR1cm4gdG9XZWJLaXQo
bWVzc2FnZVBvcnQpOwotCiAjaWYgRU5BQkxFKFdPUktFUlMpCiAgICAgaWYgKFdlYkNvcmU6Oldv
cmtlciogd29ya2VyID0gdmFsdWUtPnRvV29ya2VyKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktp
dCh3b3JrZXIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRU
YXJnZXQuaCBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmgKaW5kZXgg
ZjUzNjBjYS4uOWIwMWU2ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9N
RXZlbnRUYXJnZXQuaAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdl
dC5oCkBAIC0yNiw2ICsyNiwyMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBFdmVudFRh
cmdldDsKIH07CiAKK2NsYXNzIFdlYkRPTU5vZGU7CitjbGFzcyBXZWJET01ET01XaW5kb3c7Citj
bGFzcyBXZWJET01YTUxIdHRwUmVxdWVzdDsKK2NsYXNzIFdlYkRPTVhNTEh0dHBSZXF1ZXN0VXBs
b2FkOworY2xhc3MgV2ViRE9NTWVzc2FnZVBvcnQ7CitjbGFzcyBXZWJET01FdmVudFNvdXJjZTsK
K2NsYXNzIFdlYkRPTURPTUFwcGxpY2F0aW9uQ2FjaGU7CitjbGFzcyBXZWJET01Xb3JrZXI7Citj
bGFzcyBXZWJET01EZWRpY2F0ZWRXb3JrZXJDb250ZXh0OworY2xhc3MgV2ViRE9NU2hhcmVkV29y
a2VyOworY2xhc3MgV2ViRE9NU2hhcmVkV29ya2VyQ29udGV4dDsKK2NsYXNzIFdlYkRPTU5vdGlm
aWNhdGlvbjsKK2NsYXNzIFdlYkRPTVdlYlNvY2tldDsKKwogY2xhc3MgV2ViRE9NRXZlbnRUYXJn
ZXQgOiBwdWJsaWMgV2ViRE9NT2JqZWN0IHsKIHB1YmxpYzoKICAgICBXZWJET01FdmVudFRhcmdl
dCgpOwpAQCAtMzUsOCArNDksMjAgQEAgcHVibGljOgogCiAgICAgV2ViQ29yZTo6RXZlbnRUYXJn
ZXQqIGltcGwoKSBjb25zdDsKIAotICAgIC8vIEZJWE1FOiBBZGQgYSBwb3NzaWJpbGl0eSB0byBj
aGVjayB3aGF0IGtpbmQgb2YgRXZlbnRUYXJnZXQgd2UgaGF2ZSwKLSAgICAvLyB0byBiZSBhYmxl
IHRvIGNhc3QgZWcuIGEgV2ViRE9NRXZlbnRUYXJnZXQgdG8gYSBXZWJET01Ob2RlCisgICAgV2Vi
RE9NTm9kZSB0b05vZGUoKTsKKyAgICBXZWJET01ET01XaW5kb3cgdG9ET01XaW5kb3coKTsKKyAg
ICBXZWJET01YTUxIdHRwUmVxdWVzdCB0b1hNTEh0dHBSZXF1ZXN0KCk7CisgICAgV2ViRE9NWE1M
SHR0cFJlcXVlc3RVcGxvYWQgdG9YTUxIdHRwUmVxdWVzdFVwbG9hZCgpOworICAgIFdlYkRPTU1l
c3NhZ2VQb3J0IHRvTWVzc2FnZVBvcnQoKTsKKworICAgIFdlYkRPTUV2ZW50U291cmNlIHRvRXZl
bnRTb3VyY2UoKTsKKyAgICBXZWJET01ET01BcHBsaWNhdGlvbkNhY2hlIHRvRE9NQXBwbGljYXRp
b25DYWNoZSgpOworICAgIFdlYkRPTVdvcmtlciB0b1dvcmtlcigpOworICAgIFdlYkRPTURlZGlj
YXRlZFdvcmtlckNvbnRleHQgdG9EZWRpY2F0ZWRXb3JrZXJDb250ZXh0KCk7CisgICAgV2ViRE9N
U2hhcmVkV29ya2VyIHRvU2hhcmVkV29ya2VyKCk7CisgICAgV2ViRE9NU2hhcmVkV29ya2VyQ29u
dGV4dCB0b1NoYXJlZFdvcmtlckNvbnRleHQoKTsKKyAgICBXZWJET01Ob3RpZmljYXRpb24gdG9O
b3RpZmljYXRpb24oKTsKKyAgICBXZWJET01XZWJTb2NrZXQgdG9XZWJTb2NrZXQoKTsKIAogcHJv
dGVjdGVkOgogICAgIHN0cnVjdCBXZWJET01FdmVudFRhcmdldFByaXZhdGU7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAgYi9X
ZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzk3MDlkYQotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcApAQCAt
MCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGlt
aXRlZCAyMDEwLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg
bGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhl
IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJ
VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICog
TGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICog
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmls
ZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0
b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5j
bHVkZSAiV2ViRE9NSFRNTENvbGxlY3Rpb24uaCIKKworI2luY2x1ZGUgIkF0b21pY1N0cmluZy5o
IgorI2luY2x1ZGUgIkhUTUxDb2xsZWN0aW9uLmgiCisjaW5jbHVkZSAiV2ViRE9NTm9kZS5oIgor
I2luY2x1ZGUgPHd0Zi9HZXRQdHIuaD4KKworCitXZWJET01Ob2RlIFdlYkRPTUhUTUxDb2xsZWN0
aW9uOjppdGVtKHVuc2lnbmVkIGluZGV4KQoreworICAgIGlmICghaW1wbCgpKQorICAgICAgICBy
ZXR1cm4gV2ViRE9NTm9kZSgpOworCisgICAgcmV0dXJuIHRvV2ViS2l0KFdURjo6Z2V0UHRyKGlt
cGwoKS0+aXRlbShpbmRleCkpKTsKK30KKworV2ViRE9NTm9kZSBXZWJET01IVE1MQ29sbGVjdGlv
bjo6bmFtZWRJdGVtKGNvbnN0IFdlYkRPTVN0cmluZyYgbmFtZSkKK3sKKyAgICBpZiAoIWltcGwo
KSkKKyAgICAgICAgcmV0dXJuIFdlYkRPTU5vZGUoKTsKKworICAgIHJldHVybiB0b1dlYktpdChX
VEY6OmdldFB0cihpbXBsKCktPm5hbWVkSXRlbShuYW1lKSkpOworfQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcCBi
L1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5j
cHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UyZWIyNQotLS0gL2Rldi9u
dWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlv
bkN1c3RvbS5jcHAKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgUmVzZWFy
Y2ggSW4gTW90aW9uIExpbWl0ZWQgMjAxMC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbi5oIgorCisj
aW5jbHVkZSAiSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmgiCisjaW5jbHVkZSAiV2ViRXhjZXB0aW9u
SGFuZGxlci5oIgorCit1bnNpZ25lZCBXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb246Omxlbmd0
aCgpIGNvbnN0Cit7CisgICAgaWYgKCFpbXBsKCkpCisgICAgICAgIHJldHVybiAwOworCisgICAg
cmV0dXJuIGltcGwoKS0+bGVuZ3RoKCk7Cit9CisKK3ZvaWQgV2ViRE9NSFRNTE9wdGlvbnNDb2xs
ZWN0aW9uOjpzZXRMZW5ndGgodW5zaWduZWQgbGVuZ3RoKQoreworICAgIGlmICghaW1wbCgpKQor
ICAgICAgICByZXR1cm47CisKKyAgICBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGVjID0gMDsKKyAg
ICBpbXBsKCktPnNldExlbmd0aChsZW5ndGgsIGVjKTsKKyAgICB3ZWJET01SYWlzZUVycm9yKHN0
YXRpY19jYXN0PFdlYkRPTUV4Y2VwdGlvbkNvZGU+KGVjKSk7Cit9CmRpZmYgLS1naXQgYS9XZWJD
b3JlL2JpbmRpbmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcCBiL1dlYkNvcmUvYmlu
ZGluZ3MvY3BwL1dlYkRPTU5vZGVGaWx0ZXJDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjU2NWZhNjEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRp
bmdzL2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcApAQCAtMCwwICsxLDQ0IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDEwLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2Vi
RE9NTm9kZUZpbHRlci5oIgorCisjaW5jbHVkZSAiV2ViRE9NTm9kZS5oIgorI2luY2x1ZGUgIldl
Yk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uaCIKKworc2hvcnQgV2ViRE9NTm9kZUZpbHRlcjo6
YWNjZXB0Tm9kZShjb25zdCBXZWJET01Ob2RlJiBuKQoreworICAgIGlmICghaW1wbCgpKQorICAg
ICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBpbXBsKCktPmFjY2VwdE5vZGUoMCwgdG9XZWJD
b3JlKG4pKTsKK30KKworV2ViRE9NTm9kZUZpbHRlciB0b1dlYktpdChXZWJVc2VyTm9kZUZpbHRl
ciogdmFsdWUpCit7CisgICAgUmVmUHRyPFdlYkNvcmU6Ok5vZGVGaWx0ZXI+IGxpc3RlbmVyID0g
V2ViQ29yZTo6Tm9kZUZpbHRlcjo6Y3JlYXRlKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246
OmNyZWF0ZSh2YWx1ZSkpOworICAgIHJldHVybiBXZWJET01Ob2RlRmlsdGVyKGxpc3RlbmVyLmdl
dCgpKTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVG
aWx0ZXJDb25kaXRpb24uY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZp
bHRlckNvbmRpdGlvbi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2Qz
MDgxMAotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5v
ZGVGaWx0ZXJDb25kaXRpb24uY3BwCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg
TGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNl
bnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlz
IGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVk
IGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxv
bmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUK
KyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBC
b3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oIgorCisjaW5jbHVkZSAiV2Vi
RE9NTm9kZS5oIgorCitXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpXZWJOYXRpdmVOb2Rl
RmlsdGVyQ29uZGl0aW9uKFdlYlVzZXJOb2RlRmlsdGVyKiBmaWx0ZXIpCisgICAgOiBXZWJDb3Jl
OjpOb2RlRmlsdGVyQ29uZGl0aW9uKCkKKyAgICAsIG1fZmlsdGVyKGZpbHRlcikKK3sKKyAgICBB
U1NFUlQobV9maWx0ZXIpOworICAgIG1fZmlsdGVyLT5yZWYoKTsKK30KKworV2ViTmF0aXZlTm9k
ZUZpbHRlckNvbmRpdGlvbjo6fldlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24oKQoreworICAg
IG1fZmlsdGVyLT5kZXJlZigpOworfQorCitzaG9ydCBXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0
aW9uOjphY2NlcHROb2RlKFdlYkNvcmU6OlNjcmlwdFN0YXRlKiwgV2ViQ29yZTo6Tm9kZSogbm9k
ZSkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9maWx0ZXItPmFjY2VwdE5vZGUodG9XZWJLaXQobm9k
ZSkpOworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZp
bHRlckNvbmRpdGlvbi5oIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRl
ckNvbmRpdGlvbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3NWFlYzkK
LS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmls
dGVyQ29uZGl0aW9uLmgKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIFJl
c2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiAg
Q29weXJpZ2h0IChDKSAyMDAxIFBldGVyIEtlbGx5IChwbWtAcG9zdC5jb20pCisgKiAgQ29weXJp
Z2h0IChDKSAyMDAzLCAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
ZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQor
ICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJv
c3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNpZm5kZWYgV2ViTmF0aXZlTm9kZUZp
bHRlckNvbmRpdGlvbl9oCisjZGVmaW5lIFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb25faAor
CisjaW5jbHVkZSAiTm9kZUZpbHRlci5oIgorI2luY2x1ZGUgIldlYkRPTU5vZGVGaWx0ZXIuaCIK
KworY2xhc3MgV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbiA6IHB1YmxpYyBXZWJDb3JlOjpO
b2RlRmlsdGVyQ29uZGl0aW9uIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJO
YXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uPiBjcmVhdGUoV2ViVXNlck5vZGVGaWx0ZXIqIGZpbHRl
cikKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViTmF0aXZlTm9kZUZpbHRl
ckNvbmRpdGlvbihmaWx0ZXIpKTsKKyAgICB9CisKKworICAgIHZpcnR1YWwgfldlYk5hdGl2ZU5v
ZGVGaWx0ZXJDb25kaXRpb24oKTsKKworICAgIHZpcnR1YWwgc2hvcnQgYWNjZXB0Tm9kZShXZWJD
b3JlOjpTY3JpcHRTdGF0ZSosIFdlYkNvcmU6Ok5vZGUqKSBjb25zdDsKKworcHJvdGVjdGVkOgor
ICAgIFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24oV2ViVXNlck5vZGVGaWx0ZXIqKTsKKyAg
ICBXZWJVc2VyTm9kZUZpbHRlciogbV9maWx0ZXI7Cit9OworCisjZW5kaWYKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtIGIvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0KaW5kZXggZjQ0MWIwZS4uNWFlYTM2
OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAu
cG0KKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0KQEAg
LTE0NSw3ICsxNDUsNiBAQCBzdWIgR2V0Q2xhc3NOYW1lCiAKICAgICAjIHNwZWNpYWwgY2FzZXMK
ICAgICByZXR1cm4gIldlYkRPTVN0cmluZyIgaWYgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlw
ZSgkbmFtZSkgb3IgJG5hbWUgZXEgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSI7Ci0gICAgcmV0dXJu
ICJXZWJET01BYnN0cmFjdFZpZXciIGlmICRuYW1lIGVxICJET01XaW5kb3ciOwogICAgIHJldHVy
biAiV2ViRE9NT2JqZWN0IiBpZiAkbmFtZSBlcSAiRE9NT2JqZWN0IjsKICAgICByZXR1cm4gImJv
b2wiIGlmICRuYW1lIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gJG5hbWUgaWYgJGNvZGVHZW5l
cmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkbmFtZSk7CkBAIC0xNTUsMTAgKzE1NCw3IEBAIHN1YiBH
ZXRDbGFzc05hbWUKIAogc3ViIEdldEltcGxDbGFzc05hbWUKIHsKLSAgICBteSAkbmFtZSA9ICRj
b2RlR2VuZXJhdG9yLT5TdHJpcE1vZHVsZShzaGlmdCk7Ci0KLSAgICByZXR1cm4gIkRPTVdpbmRv
dyIgaWYgJG5hbWUgZXEgIkFic3RyYWN0VmlldyI7Ci0gICAgcmV0dXJuICRuYW1lOworICAgIHJl
dHVybiAkY29kZUdlbmVyYXRvci0+U3RyaXBNb2R1bGUoc2hpZnQpOwogfQogCiBzdWIgR2V0UGFy
ZW50SW1wbENsYXNzTmFtZQpAQCAtMjAzLDcgKzE5OSw4IEBAIHN1YiBTaG91bGRTa2lwVHlwZUlu
SW1wbGVtZW50YXRpb24KIAogICAgIHJldHVybiAxIGlmICR0eXBlSW5mby0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tQXJndW1lbnRIYW5kbGluZyJ9CiAgICAgICAgICAg
ICAgb3IgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21H
ZXR0ZXIifQotICAgICAgICAgICAgIG9yICR0eXBlSW5mby0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiTmVlZHNVc2VyR2VzdHVyZUNoZWNrIn07CisgICAgICAgICAgICAgb3IgJHR5
cGVJbmZvLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOZWVkc1VzZXJHZXN0dXJl
Q2hlY2sifQorICAgICAgICAgICAgIG9yICR0eXBlSW5mby0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiQ1BQQ3VzdG9tIn07CiAKICAgICAjIEZJWE1FOiBXZSBkb24ndCBnZW5lcmF0
ZSBiaW5kaW5ncyBmb3IgU1ZHIHJlbGF0ZWQgaW50ZXJmYWNlcyB5ZXQKICAgICByZXR1cm4gMSBp
ZiAkdHlwZUluZm8tPnNpZ25hdHVyZS0+bmFtZSA9fiAvZ2V0U1ZHRG9jdW1lbnQvOwpAQCAtMjk3
LDEyICsyOTQsNiBAQCBzdWIgQWRkSW5jbHVkZXNGb3JUeXBlCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBpZiAoJHR5cGUgZXEgIkRPTVdpbmRvdyIpIHsKLSAgICAgICAgJGltcGxJbmNs
dWRlc3siRE9NV2luZG93LmgifSA9IDE7Ci0gICAgICAgICRpbXBsSW5jbHVkZXN7IldlYkRPTUFi
c3RyYWN0Vmlldy5oIn0gPSAxOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCiAgICAgaWYgKCR0
eXBlIGVxICJFdmVudExpc3RlbmVyIikgewogICAgICAgICAkaW1wbEluY2x1ZGVzeyJXZWJOYXRp
dmVFdmVudExpc3RlbmVyLmgifSA9IDE7CiAgICAgICAgIHJldHVybjsKQEAgLTM4OCwxMiArMzc5
LDEyIEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
ZXhwbGljaXQgJGNsYXNzTmFtZSgkaW1wbENsYXNzTmFtZVdpdGhOYW1lc3BhY2UqKTtcbiIpOwog
CiAgICAgIyBDb3B5IGNvbnN0cnVjdG9yIG9uIGNsYXNzZXMgd2hpY2ggaGF2ZSB0aGUgZC1wdHIK
LSAgICBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDApIHsKKyAgICBpZiAoJHBhcmVudE5h
bWUgZXEgIldlYkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAg
ICAkY2xhc3NOYW1lKGNvbnN0ICRjbGFzc05hbWUmKTtcbiIpOwogICAgIH0KIAogICAgICMgRGVz
dHJ1Y3RvcgotICAgIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgk
cGFyZW50TmFtZSBlcSAiV2ViRE9NT2JqZWN0IikgewogICAgICAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCAiICAgIH4kY2xhc3NOYW1lKCk7XG4iKTsKICAgICB9CiAKQEAgLTUwNSw3ICs0OTYsNyBA
QCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXG4iKTsKICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgICRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSog
aW1wbCgpIGNvbnN0O1xuIik7CiAKLSAgICBpZiAoQHskZGF0YU5vZGUtPnBhcmVudHN9IGVxIDAp
IHsKKyAgICBpZiAoJHBhcmVudE5hbWUgZXEgIldlYkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVz
aChAaGVhZGVyQ29udGVudCwgIlxucHJvdGVjdGVkOlxuIik7CiAgICAgICAgIHB1c2goQGhlYWRl
ckNvbnRlbnQsICIgICAgc3RydWN0ICR7Y2xhc3NOYW1lfVByaXZhdGU7XG4iKTsKICAgICAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIiAgICAke2NsYXNzTmFtZX1Qcml2YXRlKiBtX2ltcGw7XG4i
KTsKQEAgLTYwNyw3ICs1OTgsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIHB1
c2goQGltcGxDb250ZW50LCAiI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD5cblxuIik7CiAKICAgICAj
IFByaXZhdGUgZGF0YXN0cnVjdHVyZSwgZW5jYXBzdWxhdGluZyBXZWJDb3JlIHR5cGVzCi0gICAg
aWYgKEB7JGRhdGFOb2RlLT5wYXJlbnRzfSBlcSAwKSB7CisgICAgaWYgKCRiYXNlQ2xhc3MgZXEg
IldlYkRPTU9iamVjdCIpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJzdHJ1Y3QgJHtj
bGFzc05hbWV9Ojoke2NsYXNzTmFtZX1Qcml2YXRlIHtcbiIpOwogICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICAke2NsYXNzTmFtZX1Qcml2YXRlKCRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVz
cGFjZSogb2JqZWN0ID0gMClcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAg
ICAgOiBpbXBsKG9iamVjdClcbiIpOwpAQCAtNjIwLDEyICs2MTEsMTIgQEAgc3ViIEdlbmVyYXRl
SW1wbGVtZW50YXRpb24KICAgICAjIENvbnN0cnVjdG9yCiAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIke2NsYXNzTmFtZX06OiRjbGFzc05hbWUoKVxuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgOiAke2Jhc2VDbGFzc30oKVxuIik7Ci0gICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAg
LCBtX2ltcGwoMClcbiIpIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCk7CisgICAgcHVz
aChAaW1wbENvbnRlbnQsICIgICAgLCBtX2ltcGwoMClcbiIpIGlmICgkYmFzZUNsYXNzIGVxICJX
ZWJET01PYmplY3QiKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwogICAgIHB1c2go
QGltcGxDb250ZW50LCAifVxuXG4iKTsKIAogICAgIHB1c2goQGltcGxDb250ZW50LCAiJHtjbGFz
c05hbWV9OjokY2xhc3NOYW1lKCRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSogaW1wbClcbiIp
OwotICAgIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkYmFzZUNs
YXNzIGVxICJXZWJET01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IDogJHtiYXNlQ2xhc3N9KClcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAs
IG1faW1wbChuZXcgJHtjbGFzc05hbWV9UHJpdmF0ZShpbXBsKSlcbiIpOwogICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgIntcbiIpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vTm9kZUZpbHRl
ci5pZGwgYi9XZWJDb3JlL2RvbS9Ob2RlRmlsdGVyLmlkbAppbmRleCAxNmYzZjI2Li40MGM1YmFk
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Ob2RlRmlsdGVyLmlkbAorKysgYi9XZWJDb3JlL2Rv
bS9Ob2RlRmlsdGVyLmlkbApAQCAtMjEsOCArMjEsMTIgQEAKIG1vZHVsZSB0cmF2ZXJzYWwgewog
CiAgICAgLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwgMjoKLSAgICBpbnRlcmZhY2UgW0N1c3Rv
bU1hcmtGdW5jdGlvbiwgQ3VzdG9tTmF0aXZlQ29udmVydGVyLCBPYmpDUHJvdG9jb2xdIE5vZGVG
aWx0ZXIgewotCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ3VzdG9tTWFya0Z1bmN0aW9uLAor
ICAgICAgICBDdXN0b21OYXRpdmVDb252ZXJ0ZXIsCisgICAgICAgIE9iakNQcm90b2NvbCwKKyAg
ICAgICAgUHVyZUludGVyZmFjZQorICAgIF0gTm9kZUZpbHRlciB7CiAgICAgICAgIC8vIENvbnN0
YW50cyByZXR1cm5lZCBieSBhY2NlcHROb2RlCiAgICAgICAgIGNvbnN0IHNob3J0ICAgICAgICAg
ICAgICAgRklMVEVSX0FDQ0VQVCAgICAgICAgICAgICAgICAgID0gMTsKICAgICAgICAgY29uc3Qg
c2hvcnQgICAgICAgICAgICAgICBGSUxURVJfUkVKRUNUICAgICAgICAgICAgICAgICAgPSAyOwpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwgYi9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmlkbAppbmRleCBiNDc2NTE0Li5jNjc5YWM0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmlkbAorKysgYi9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbApAQCAtNTQs
NyArNTQsNyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgYXR0cmlidXRlIFtSZXBsYWNlYWJs
ZV0gQmFySW5mbyB0b29sYmFyOwogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlXSBOYXZp
Z2F0b3IgbmF2aWdhdG9yOwogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlXSBOYXZpZ2F0
b3IgY2xpZW50SW5mb3JtYXRpb247Ci0gICAgICAgIGF0dHJpYnV0ZSBbRG9Ob3RDaGVja0RvbWFp
blNlY3VyaXR5LCBKU0NDdXN0b20sIFY4Q3VzdG9tU2V0dGVyLCBWOERpc2FsbG93U2hhZG93aW5n
XSBMb2NhdGlvbiBsb2NhdGlvbjsKKyAgICAgICAgYXR0cmlidXRlIFtEb05vdENoZWNrRG9tYWlu
U2VjdXJpdHksIEpTQ0N1c3RvbSwgVjhDdXN0b21TZXR0ZXIsIFY4RGlzYWxsb3dTaGFkb3dpbmcs
IENQUEN1c3RvbV0gTG9jYXRpb24gbG9jYXRpb247CiAKICAgICAgICAgYXR0cmlidXRlIFtSZXBs
YWNlYWJsZSwgQ3VzdG9tR2V0dGVyLCBWOEN1c3RvbVNldHRlcl0gRXZlbnQgZXZlbnQ7CiAKLS0g
CjEuNi41LjEuMTM2Ny5nY2Q0OAoK
</data>
<flag name="review"
          id="45224"
          type_id="1"
          status="+"
          setter="zimmermann"
    />
    <flag name="commit-queue"
          id="45225"
          type_id="3"
          status="+"
          setter="zimmermann"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59070</attachid>
            <date>2010-06-17 21:36:04 -0700</date>
            <delta_ts>2010-06-19 09:21:13 -0700</delta_ts>
            <desc>Unified patch (v2)</desc>
            <filename>0001-2010-06-15-Kartikaya-Gupta-kagupta-rim.com.patch</filename>
            <type>text/plain</type>
            <size>26450</size>
            <attacher name="Kartikaya Gupta">lists.bugzilla</attacher>
            
              <data encoding="base64">RnJvbSBhMGFmODdkMDUyZDE5MWU3ZDhmMjJlYWU1ZGI0YmUxMzRmMTI5ZGE0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXJ0aWtheWEgR3VwdGEgPGthZ3VwdGFAcmltLmNvbT4KRGF0
ZTogVHVlLCAxNSBKdW4gMjAxMCAxMDowMzo0OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIDIwMTAt
MDYtMTUgIEthcnRpa2F5YSBHdXB0YSAgPGthZ3VwdGFAcmltLmNvbT4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTmlrb2xhcyBaaW1tZXJtYW5uLgoKICAgICAgICBDUFAgYmluZGluZ3MgbWlzc2luZyBz
b21lIEFQSXMKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA1NzAKCiAgICAgICAgQWRkIG1pc3NpbmcgQysrIERPTSBBUEkgYmluZGluZ3MuIFNwZWNpZmlj
YWxseToKICAgICAgICAtIE5vZGVGaWx0ZXIgY2FsbGJhY2sgc3VwcG9ydAogICAgICAgIC0gTWlz
c2luZyBjdXN0b20gbWV0aG9kIGltcGxlbWVudGF0aW9ucyBpbiBIVE1MQ29sbGVjdGlvbiBhbmQg
SFRNTE9wdGlvbnNDb2xsZWN0aW9uCiAgICAgICAgLSBNaXNzaW5nIEV2ZW50VGFyZ2V0IHN0YXRp
YyB0eXBlLWRldGVybWluYXRpb24gbWV0aG9kcwogICAgICAgIC0gRml4IENQUCBiaW5kaW5nIGdl
bmVyYXRvciB0byBub3QgZ2VuZXJhdGUgZC1wdHJzIGZvciBjbGFzc2VzIHRoYXQgZXh0ZW5kIEV2
ZW50VGFyZ2V0IGFuZCBqdXN0IHVzZSB0aGUgcGFyZW50J3MgZC1wdHIgaW5zdGVhZAogICAgICAg
IC0gU3dpdGNoIGJpbmRpbmcgZ2VuZXJhdG9yIHRvIHVzZSBET01XaW5kb3cgaW5zdGVhZCBvZiBB
YnN0cmFjdFZpZXcgc28gdGhhdCBuZWNlc3NhcnkgVzNDLWRlZmluZWQgbWV0aG9kcyAoZS5nLiBn
ZXRDb21wdXRlZFN0eWxlKSBhcmUgYWNjZXNzaWJsZS4KCiAgICAgICAgKiBiaW5kaW5ncy9jcHAv
V2ViRE9NRE9NV2luZG93Q3VzdG9tLmNwcDogQWRkZWQuCiAgICAgICAgKFdlYkRPTURPTVdpbmRv
dzo6YWRkRXZlbnRMaXN0ZW5lcik6CiAgICAgICAgKFdlYkRPTURPTVdpbmRvdzo6cmVtb3ZlRXZl
bnRMaXN0ZW5lcik6CiAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuY3Bw
OgogICAgICAgICh0b1dlYktpdCk6CiAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRU
YXJnZXQuaDoKICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3Rv
bS5jcHA6IEFkZGVkLgogICAgICAgIChXZWJET01IVE1MQ29sbGVjdGlvbjo6aXRlbSk6CiAgICAg
ICAgKFdlYkRPTUhUTUxDb2xsZWN0aW9uOjpuYW1lZEl0ZW0pOgogICAgICAgICogYmluZGluZ3Mv
Y3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHA6IEFkZGVkLgogICAgICAg
IChXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb246Omxlbmd0aCk6CiAgICAgICAgKFdlYkRPTUhU
TUxPcHRpb25zQ29sbGVjdGlvbjo6c2V0TGVuZ3RoKToKICAgICAgICAqIGJpbmRpbmdzL2NwcC9X
ZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcDogQWRkZWQuCiAgICAgICAgKFdlYkRPTU5vZGVGaWx0
ZXI6OmFjY2VwdE5vZGUpOgogICAgICAgICh0b1dlYktpdCk6CiAgICAgICAgKiBiaW5kaW5ncy9j
cHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5jcHA6IEFkZGVkLgogICAgICAgIChXZWJO
YXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uKToK
ICAgICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbjo6fldlYk5hdGl2ZU5vZGVGaWx0
ZXJDb25kaXRpb24pOgogICAgICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjphY2Nl
cHROb2RlKToKICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0
aW9uLmg6IEFkZGVkLgogICAgICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpjcmVh
dGUpOgogICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtOgogICAg
ICAgICogZG9tL05vZGVGaWx0ZXIuaWRsOgogICAgICAgICogcGFnZS9ET01XaW5kb3cuaWRsOgot
LS0KIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAzOSArKysrKysrKysrKwogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRE9NV2luZG93Q3Vz
dG9tLmNwcCAgICAgfCAgIDQzICsrKysrKysrKysrKwogV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2Vi
RE9NRXZlbnRUYXJnZXQuY3BwICAgICAgICAgfCAgIDY4ICsrKysrKysrKysrKysrKystLS0tCiBX
ZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oICAgICAgICAgICB8ICAgMzAg
KysrKysrKystCiAuLi4vYmluZGluZ3MvY3BwL1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNw
cCAgICB8ICAgNDIgKysrKysrKysrKysrCiAuLi4vY3BwL1dlYkRPTUhUTUxPcHRpb25zQ29sbGVj
dGlvbkN1c3RvbS5jcHAgICAgICB8ICAgNDIgKysrKysrKysrKysrCiBXZWJDb3JlL2JpbmRpbmdz
L2NwcC9XZWJET01Ob2RlRmlsdGVyQ3VzdG9tLmNwcCAgICB8ICAgNDQgKysrKysrKysrKysrKwog
Li4uL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmNwcCAgfCAgIDQw
ICsrKysrKysrKysrKwogLi4uL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0
aW9uLmggICAgfCAgIDQzICsrKysrKysrKysrKwogV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JDUFAucG0gICAgICAgfCAgIDI3ICsrKy0tLS0tCiBXZWJDb3JlL2RvbS9Ob2Rl
RmlsdGVyLmlkbCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDggKystCiBXZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmlkbCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KIDEyIGZp
bGVzIGNoYW5nZWQsIDM5MyBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01ET01XaW5kb3dDdXN0b20uY3Bw
CiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NSFRNTENvbGxl
Y3Rpb25DdXN0b20uY3BwCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAv
V2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFdlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTU5vZGVGaWx0ZXJDdXN0b20uY3BwCiBjcmVhdGUg
bW9kZSAxMDA2NDQgV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRp
dGlvbi5jcHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJOYXRp
dmVOb2RlRmlsdGVyQ29uZGl0aW9uLmgKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGRhMmFkYzIuLjk5ODVlMjMgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAK
KzIwMTAtMDYtMTUgIEthcnRpa2F5YSBHdXB0YSAgPGthZ3VwdGFAcmltLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOaWtvbGFzIFppbW1lcm1hbm4uCisKKyAgICAgICAgQ1BQIGJpbmRpbmdz
IG1pc3Npbmcgc29tZSBBUElzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MDU3MAorCisgICAgICAgIEFkZCBtaXNzaW5nIEMrKyBET00gQVBJIGJpbmRp
bmdzLiBTcGVjaWZpY2FsbHk6CisgICAgICAgIC0gTm9kZUZpbHRlciBjYWxsYmFjayBzdXBwb3J0
CisgICAgICAgIC0gTWlzc2luZyBjdXN0b20gbWV0aG9kIGltcGxlbWVudGF0aW9ucyBpbiBIVE1M
Q29sbGVjdGlvbiBhbmQgSFRNTE9wdGlvbnNDb2xsZWN0aW9uCisgICAgICAgIC0gTWlzc2luZyBF
dmVudFRhcmdldCBzdGF0aWMgdHlwZS1kZXRlcm1pbmF0aW9uIG1ldGhvZHMKKyAgICAgICAgLSBG
aXggQ1BQIGJpbmRpbmcgZ2VuZXJhdG9yIHRvIG5vdCBnZW5lcmF0ZSBkLXB0cnMgZm9yIGNsYXNz
ZXMgdGhhdCBleHRlbmQgRXZlbnRUYXJnZXQgYW5kIGp1c3QgdXNlIHRoZSBwYXJlbnQncyBkLXB0
ciBpbnN0ZWFkCisgICAgICAgIC0gU3dpdGNoIGJpbmRpbmcgZ2VuZXJhdG9yIHRvIHVzZSBET01X
aW5kb3cgaW5zdGVhZCBvZiBBYnN0cmFjdFZpZXcgc28gdGhhdCBuZWNlc3NhcnkgVzNDLWRlZmlu
ZWQgbWV0aG9kcyAoZS5nLiBnZXRDb21wdXRlZFN0eWxlKSBhcmUgYWNjZXNzaWJsZS4KKworICAg
ICAgICAqIGJpbmRpbmdzL2NwcC9XZWJET01ET01XaW5kb3dDdXN0b20uY3BwOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkRPTURPTVdpbmRvdzo6YWRkRXZlbnRMaXN0ZW5lcik6CisgICAgICAgIChXZWJE
T01ET01XaW5kb3c6OnJlbW92ZUV2ZW50TGlzdGVuZXIpOgorICAgICAgICAqIGJpbmRpbmdzL2Nw
cC9XZWJET01FdmVudFRhcmdldC5jcHA6CisgICAgICAgICh0b1dlYktpdCk6CisgICAgICAgICog
YmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0Lmg6CisgICAgICAgICogYmluZGluZ3MvY3Bw
L1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJET01I
VE1MQ29sbGVjdGlvbjo6aXRlbSk6CisgICAgICAgIChXZWJET01IVE1MQ29sbGVjdGlvbjo6bmFt
ZWRJdGVtKToKKyAgICAgICAgKiBiaW5kaW5ncy9jcHAvV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0
aW9uQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rp
b246Omxlbmd0aCk6CisgICAgICAgIChXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb246OnNldExl
bmd0aCk6CisgICAgICAgICogYmluZGluZ3MvY3BwL1dlYkRPTU5vZGVGaWx0ZXJDdXN0b20uY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkRPTU5vZGVGaWx0ZXI6OmFjY2VwdE5vZGUpOgorICAgICAg
ICAodG9XZWJLaXQpOgorICAgICAgICAqIGJpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVy
Q29uZGl0aW9uLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0
aW9uOjpXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uKToKKyAgICAgICAgKFdlYk5hdGl2ZU5v
ZGVGaWx0ZXJDb25kaXRpb246On5XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uKToKKyAgICAg
ICAgKFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246OmFjY2VwdE5vZGUpOgorICAgICAgICAq
IGJpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmg6IEFkZGVkLgorICAg
ICAgICAoV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG06CisgICAgICAgICogZG9tL05vZGVG
aWx0ZXIuaWRsOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmlkbDoKKwogMjAxMC0wNi0wNyAg
Tmlrb2xhcyBaaW1tZXJtYW5uICA8bnppbW1lcm1hbm5AcmltLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBTYW0gV2VpbmlnLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2Vi
RE9NRE9NV2luZG93Q3VzdG9tLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTURPTVdp
bmRvd0N1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWRkOWVj
NAotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTURPTVdpbmRv
d0N1c3RvbS5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgUmVzZWFy
Y2ggSW4gTW90aW9uIExpbWl0ZWQgMjAxMC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor
ICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKKyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo
IEZsb29yLAorICogQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYkRPTURPTVdpbmRvdy5oIgorCisjaW5jbHVkZSAiRE9N
V2luZG93LmgiCisjaW5jbHVkZSAiV2ViRE9NRXZlbnRMaXN0ZW5lci5oIgorI2luY2x1ZGUgIldl
Yk5hdGl2ZUV2ZW50TGlzdGVuZXIuaCIKKwordm9pZCBXZWJET01ET01XaW5kb3c6OmFkZEV2ZW50
TGlzdGVuZXIoY29uc3QgV2ViRE9NU3RyaW5nJiB0eXBlLCBjb25zdCBXZWJET01FdmVudExpc3Rl
bmVyJiBsaXN0ZW5lciwgYm9vbCB1c2VDYXB0dXJlKQoreworICAgIGlmICghaW1wbCgpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBpZiAodG9XZWJDb3JlKGxpc3RlbmVyKSkKKyAgICAgICAgaW1w
bCgpLT5hZGRFdmVudExpc3RlbmVyKHR5cGUsIHRvV2ViQ29yZShsaXN0ZW5lciksIHVzZUNhcHR1
cmUpOworfQorCit2b2lkIFdlYkRPTURPTVdpbmRvdzo6cmVtb3ZlRXZlbnRMaXN0ZW5lcihjb25z
dCBXZWJET01TdHJpbmcmIHR5cGUsIGNvbnN0IFdlYkRPTUV2ZW50TGlzdGVuZXImIGxpc3RlbmVy
LCBib29sIHVzZUNhcHR1cmUpCit7CisgICAgaWYgKCFpbXBsKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIGlmICh0b1dlYkNvcmUobGlzdGVuZXIpKQorICAgICAgICBpbXBsKCktPnJlbW92ZUV2
ZW50TGlzdGVuZXIodHlwZSwgdG9XZWJDb3JlKGxpc3RlbmVyKSwgdXNlQ2FwdHVyZSk7Cit9CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5jcHAgYi9X
ZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5jcHAKaW5kZXggMmVhZWYwMC4u
YjI0YmM4NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJn
ZXQuY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmNwcApA
QCAtMjIsNiArMjIsNyBAQAogI2luY2x1ZGUgIldlYkRPTUV2ZW50VGFyZ2V0LmgiCiAKICNpbmNs
dWRlICJET01BcHBsaWNhdGlvbkNhY2hlLmgiCisjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5j
bHVkZSAiRGVkaWNhdGVkV29ya2VyQ29udGV4dC5oIgogI2luY2x1ZGUgIkV2ZW50U291cmNlLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVBvcnQuaCIKQEAgLTMxLDYgKzMyLDcgQEAKICNpbmNsdWRlICJT
aGFyZWRXb3JrZXJDb250ZXh0LmgiCiAjaW5jbHVkZSAiVGhyZWFkQ2hlY2suaCIKICNpbmNsdWRl
ICJXZWJET01ET01BcHBsaWNhdGlvbkNhY2hlLmgiCisjaW5jbHVkZSAiV2ViRE9NRE9NV2luZG93
LmgiCiAjaW5jbHVkZSAiV2ViRE9NRGVkaWNhdGVkV29ya2VyQ29udGV4dC5oIgogI2luY2x1ZGUg
IldlYkRPTUV2ZW50U291cmNlLmgiCiAjaW5jbHVkZSAiV2ViRE9NTWVzc2FnZVBvcnQuaCIKQEAg
LTg4LDYgKzkwLDQ1IEBAIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiBXZWJET01FdmVudFRhcmdldDo6
aW1wbCgpIGNvbnN0CiAgICAgcmV0dXJuIG1faW1wbCA/IG1faW1wbC0+aW1wbC5nZXQoKSA6IDA7
CiB9CiAKKyNkZWZpbmUgQ29udmVydFRvKHR5cGUpIFwKK1dlYkRPTSMjdHlwZSBXZWJET01FdmVu
dFRhcmdldDo6dG8jI3R5cGUoKSBcCit7IFwKKyAgICBXZWJDb3JlOjpFdmVudFRhcmdldCogdGFy
Z2V0ID0gaW1wbCgpOyBcCisgICAgcmV0dXJuIFdlYkRPTSMjdHlwZSh0YXJnZXQgPyB0YXJnZXQt
PnRvIyN0eXBlKCkgOiAwKTsgXAorfQorCitDb252ZXJ0VG8oTm9kZSkKK0NvbnZlcnRUbyhET01X
aW5kb3cpCitDb252ZXJ0VG8oWE1MSHR0cFJlcXVlc3QpCitDb252ZXJ0VG8oWE1MSHR0cFJlcXVl
c3RVcGxvYWQpCitDb252ZXJ0VG8oTWVzc2FnZVBvcnQpCisKKyNpZiBFTkFCTEUoRVZFTlRTT1VS
Q0UpCitDb252ZXJ0VG8oRXZlbnRTb3VyY2UpCisjZW5kaWYKKworI2lmIEVOQUJMRShPRkZMSU5F
X1dFQl9BUFBMSUNBVElPTlMpCitDb252ZXJ0VG8oRE9NQXBwbGljYXRpb25DYWNoZSkKKyNlbmRp
ZgorCisjaWYgRU5BQkxFKFdPUktFUlMpCitDb252ZXJ0VG8oV29ya2VyKQorQ29udmVydFRvKERl
ZGljYXRlZFdvcmtlckNvbnRleHQpCisjZW5kaWYKKworI2lmIEVOQUJMRShTSEFSRURfV09SS0VS
UykKK0NvbnZlcnRUbyhTaGFyZWRXb3JrZXIpCitDb252ZXJ0VG8oU2hhcmVkV29ya2VyQ29udGV4
dCkKKyNlbmRpZgorCisjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCitDb252ZXJ0VG8oTm90aWZp
Y2F0aW9uKQorI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCitDb252ZXJ0VG8oV2Vi
U29ja2V0KQorI2VuZGlmCisKIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0b1dlYkNvcmUoY29uc3Qg
V2ViRE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiB7CiAgICAgcmV0dXJuIHdyYXBwZXIuaW1wbCgp
OwpAQCAtOTUsNiArMTM2LDIxIEBAIFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB0b1dlYkNvcmUoY29u
c3QgV2ViRE9NRXZlbnRUYXJnZXQmIHdyYXBwZXIpCiAKIFdlYkRPTUV2ZW50VGFyZ2V0IHRvV2Vi
S2l0KFdlYkNvcmU6OkV2ZW50VGFyZ2V0KiB2YWx1ZSkKIHsKKyAgICBpZiAoV2ViQ29yZTo6Tm9k
ZSogbm9kZSA9IHZhbHVlLT50b05vZGUoKSkKKyAgICAgICAgcmV0dXJuIHRvV2ViS2l0KG5vZGUp
OworCisgICAgaWYgKFdlYkNvcmU6OkRPTVdpbmRvdyogd2luZG93ID0gdmFsdWUtPnRvRE9NV2lu
ZG93KCkpCisgICAgICAgIHJldHVybiB0b1dlYktpdCh3aW5kb3cpOworCisgICAgaWYgKFdlYkNv
cmU6OlhNTEh0dHBSZXF1ZXN0KiB4aHIgPSB2YWx1ZS0+dG9YTUxIdHRwUmVxdWVzdCgpKQorICAg
ICAgICByZXR1cm4gdG9XZWJLaXQoeGhyKTsKKworICAgIGlmIChXZWJDb3JlOjpYTUxIdHRwUmVx
dWVzdFVwbG9hZCogdXBsb2FkID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVlc3RVcGxvYWQoKSkKKyAg
ICAgICAgcmV0dXJuIHRvV2ViS2l0KHVwbG9hZCk7CisKKyAgICBpZiAoV2ViQ29yZTo6TWVzc2Fn
ZVBvcnQqIG1lc3NhZ2VQb3J0ID0gdmFsdWUtPnRvTWVzc2FnZVBvcnQoKSkKKyAgICAgICAgcmV0
dXJuIHRvV2ViS2l0KG1lc3NhZ2VQb3J0KTsKKwogI2lmIEVOQUJMRShFVkVOVFNPVVJDRSkKICAg
ICBpZiAoV2ViQ29yZTo6RXZlbnRTb3VyY2UqIGV2ZW50U291cmNlID0gdmFsdWUtPnRvRXZlbnRT
b3VyY2UoKSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGV2ZW50U291cmNlKTsKQEAgLTEwNywy
MyArMTYzLDExIEBAIFdlYkRPTUV2ZW50VGFyZ2V0IHRvV2ViS2l0KFdlYkNvcmU6OkV2ZW50VGFy
Z2V0KiB2YWx1ZSkKICAgICAgICAgcmV0dXJuIHRvV2ViS2l0KGluc3RhbmNlKTsKICNlbmRpZgog
Ci0gICAgaWYgKFdlYkNvcmU6Ok5vZGUqIG5vZGUgPSB2YWx1ZS0+dG9Ob2RlKCkpCi0gICAgICAg
IHJldHVybiB0b1dlYktpdChub2RlKTsKLQotICAgIGlmIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVz
dCogeGhyID0gdmFsdWUtPnRvWE1MSHR0cFJlcXVlc3QoKSkKLSAgICAgICAgcmV0dXJuIHRvV2Vi
S2l0KHhocik7Ci0KLSAgICBpZiAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3RVcGxvYWQqIHVwbG9h
ZCA9IHZhbHVlLT50b1hNTEh0dHBSZXF1ZXN0VXBsb2FkKCkpCi0gICAgICAgIHJldHVybiB0b1dl
YktpdCh1cGxvYWQpOwotCiAjaWYgRU5BQkxFKE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKICAg
ICBpZiAoV2ViQ29yZTo6RE9NQXBwbGljYXRpb25DYWNoZSogY2FjaGUgPSB2YWx1ZS0+dG9ET01B
cHBsaWNhdGlvbkNhY2hlKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktpdChjYWNoZSk7CiAjZW5k
aWYKIAotICAgIGlmIChXZWJDb3JlOjpNZXNzYWdlUG9ydCogbWVzc2FnZVBvcnQgPSB2YWx1ZS0+
dG9NZXNzYWdlUG9ydCgpKQotICAgICAgICByZXR1cm4gdG9XZWJLaXQobWVzc2FnZVBvcnQpOwot
CiAjaWYgRU5BQkxFKFdPUktFUlMpCiAgICAgaWYgKFdlYkNvcmU6Oldvcmtlciogd29ya2VyID0g
dmFsdWUtPnRvV29ya2VyKCkpCiAgICAgICAgIHJldHVybiB0b1dlYktpdCh3b3JrZXIpOwpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaCBiL1dlYkNv
cmUvYmluZGluZ3MvY3BwL1dlYkRPTUV2ZW50VGFyZ2V0LmgKaW5kZXggZjUzNjBjYS4uZDUxNDM3
MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NRXZlbnRUYXJnZXQuaAor
KysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01FdmVudFRhcmdldC5oCkBAIC0yNiw2ICsy
NiwyMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBFdmVudFRhcmdldDsKIH07CiAKK2Ns
YXNzIFdlYkRPTURlZGljYXRlZFdvcmtlckNvbnRleHQ7CitjbGFzcyBXZWJET01ET01BcHBsaWNh
dGlvbkNhY2hlOworY2xhc3MgV2ViRE9NRE9NV2luZG93OworY2xhc3MgV2ViRE9NRXZlbnRTb3Vy
Y2U7CitjbGFzcyBXZWJET01NZXNzYWdlUG9ydDsKK2NsYXNzIFdlYkRPTU5vZGU7CitjbGFzcyBX
ZWJET01Ob3RpZmljYXRpb247CitjbGFzcyBXZWJET01TaGFyZWRXb3JrZXI7CitjbGFzcyBXZWJE
T01TaGFyZWRXb3JrZXJDb250ZXh0OworY2xhc3MgV2ViRE9NV2ViU29ja2V0OworY2xhc3MgV2Vi
RE9NV29ya2VyOworY2xhc3MgV2ViRE9NWE1MSHR0cFJlcXVlc3Q7CitjbGFzcyBXZWJET01YTUxI
dHRwUmVxdWVzdFVwbG9hZDsKKwogY2xhc3MgV2ViRE9NRXZlbnRUYXJnZXQgOiBwdWJsaWMgV2Vi
RE9NT2JqZWN0IHsKIHB1YmxpYzoKICAgICBXZWJET01FdmVudFRhcmdldCgpOwpAQCAtMzUsOCAr
NDksMjAgQEAgcHVibGljOgogCiAgICAgV2ViQ29yZTo6RXZlbnRUYXJnZXQqIGltcGwoKSBjb25z
dDsKIAotICAgIC8vIEZJWE1FOiBBZGQgYSBwb3NzaWJpbGl0eSB0byBjaGVjayB3aGF0IGtpbmQg
b2YgRXZlbnRUYXJnZXQgd2UgaGF2ZSwKLSAgICAvLyB0byBiZSBhYmxlIHRvIGNhc3QgZWcuIGEg
V2ViRE9NRXZlbnRUYXJnZXQgdG8gYSBXZWJET01Ob2RlCisgICAgV2ViRE9NTm9kZSB0b05vZGUo
KTsKKyAgICBXZWJET01ET01XaW5kb3cgdG9ET01XaW5kb3coKTsKKyAgICBXZWJET01YTUxIdHRw
UmVxdWVzdCB0b1hNTEh0dHBSZXF1ZXN0KCk7CisgICAgV2ViRE9NWE1MSHR0cFJlcXVlc3RVcGxv
YWQgdG9YTUxIdHRwUmVxdWVzdFVwbG9hZCgpOworICAgIFdlYkRPTU1lc3NhZ2VQb3J0IHRvTWVz
c2FnZVBvcnQoKTsKKworICAgIFdlYkRPTUV2ZW50U291cmNlIHRvRXZlbnRTb3VyY2UoKTsKKyAg
ICBXZWJET01ET01BcHBsaWNhdGlvbkNhY2hlIHRvRE9NQXBwbGljYXRpb25DYWNoZSgpOworICAg
IFdlYkRPTVdvcmtlciB0b1dvcmtlcigpOworICAgIFdlYkRPTURlZGljYXRlZFdvcmtlckNvbnRl
eHQgdG9EZWRpY2F0ZWRXb3JrZXJDb250ZXh0KCk7CisgICAgV2ViRE9NU2hhcmVkV29ya2VyIHRv
U2hhcmVkV29ya2VyKCk7CisgICAgV2ViRE9NU2hhcmVkV29ya2VyQ29udGV4dCB0b1NoYXJlZFdv
cmtlckNvbnRleHQoKTsKKyAgICBXZWJET01Ob3RpZmljYXRpb24gdG9Ob3RpZmljYXRpb24oKTsK
KyAgICBXZWJET01XZWJTb2NrZXQgdG9XZWJTb2NrZXQoKTsKIAogcHJvdGVjdGVkOgogICAgIHN0
cnVjdCBXZWJET01FdmVudFRhcmdldFByaXZhdGU7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRp
bmdzL2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdz
L2NwcC9XZWJET01IVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uM2YzMzc4YwotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvYmluZGlu
Z3MvY3BwL1dlYkRPTUhUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcApAQCAtMCwwICsxLDQyIEBACisv
KgorICogQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDEwLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5
b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVy
bXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxp
c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24g
MiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K
KyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3
aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu
IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZl
IHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4g
IElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4s
IDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEz
MDEsIFVTQS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViRE9NSFRN
TENvbGxlY3Rpb24uaCIKKworI2luY2x1ZGUgIkF0b21pY1N0cmluZy5oIgorI2luY2x1ZGUgIkhU
TUxDb2xsZWN0aW9uLmgiCisjaW5jbHVkZSAiV2ViRE9NTm9kZS5oIgorI2luY2x1ZGUgPHd0Zi9H
ZXRQdHIuaD4KKworV2ViRE9NTm9kZSBXZWJET01IVE1MQ29sbGVjdGlvbjo6aXRlbSh1bnNpZ25l
ZCBpbmRleCkKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAgICAgICAgcmV0dXJuIFdlYkRPTU5vZGUo
KTsKKworICAgIHJldHVybiB0b1dlYktpdChXVEY6OmdldFB0cihpbXBsKCktPml0ZW0oaW5kZXgp
KSk7Cit9CisKK1dlYkRPTU5vZGUgV2ViRE9NSFRNTENvbGxlY3Rpb246Om5hbWVkSXRlbShjb25z
dCBXZWJET01TdHJpbmcmIG5hbWUpCit7CisgICAgaWYgKCFpbXBsKCkpCisgICAgICAgIHJldHVy
biBXZWJET01Ob2RlKCk7CisKKyAgICByZXR1cm4gdG9XZWJLaXQoV1RGOjpnZXRQdHIoaW1wbCgp
LT5uYW1lZEl0ZW0obmFtZSkpKTsKK30KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvY3Bw
L1dlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdz
L2NwcC9XZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlMmViMjUKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3Jl
L2JpbmRpbmdzL2NwcC9XZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwCkBAIC0w
LDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1p
dGVkIDIwMTAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhl
cgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg
aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBM
aWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZ
b3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxl
IENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3Rv
biwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJXZWJET01IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaCIKKworI2luY2x1ZGUgIkhUTUxPcHRp
b25zQ29sbGVjdGlvbi5oIgorI2luY2x1ZGUgIldlYkV4Y2VwdGlvbkhhbmRsZXIuaCIKKwordW5z
aWduZWQgV2ViRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpsZW5ndGgoKSBjb25zdAoreworICAg
IGlmICghaW1wbCgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBpbXBsKCktPmxl
bmd0aCgpOworfQorCit2b2lkIFdlYkRPTUhUTUxPcHRpb25zQ29sbGVjdGlvbjo6c2V0TGVuZ3Ro
KHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgV2ViQ29yZTo6RXhjZXB0aW9uQ29kZSBlYyA9IDA7CisgICAgaW1wbCgpLT5zZXRMZW5n
dGgobGVuZ3RoLCBlYyk7CisgICAgd2ViRE9NUmFpc2VFcnJvcihzdGF0aWNfY2FzdDxXZWJET01F
eGNlcHRpb25Db2RlPihlYykpOworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9jcHAv
V2ViRE9NTm9kZUZpbHRlckN1c3RvbS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJET01O
b2RlRmlsdGVyQ3VzdG9tLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41
NjVmYTYxCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViRE9NTm9k
ZUZpbHRlckN1c3RvbS5jcHAKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
UmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQgMjAxMC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVS
LCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIs
IElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisg
KiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYkRPTU5vZGVGaWx0ZXIuaCIK
KworI2luY2x1ZGUgIldlYkRPTU5vZGUuaCIKKyNpbmNsdWRlICJXZWJOYXRpdmVOb2RlRmlsdGVy
Q29uZGl0aW9uLmgiCisKK3Nob3J0IFdlYkRPTU5vZGVGaWx0ZXI6OmFjY2VwdE5vZGUoY29uc3Qg
V2ViRE9NTm9kZSYgbikKK3sKKyAgICBpZiAoIWltcGwoKSkKKyAgICAgICAgcmV0dXJuIDA7CisK
KyAgICByZXR1cm4gaW1wbCgpLT5hY2NlcHROb2RlKDAsIHRvV2ViQ29yZShuKSk7Cit9CisKK1dl
YkRPTU5vZGVGaWx0ZXIgdG9XZWJLaXQoV2ViVXNlck5vZGVGaWx0ZXIqIHZhbHVlKQoreworICAg
IFJlZlB0cjxXZWJDb3JlOjpOb2RlRmlsdGVyPiBsaXN0ZW5lciA9IFdlYkNvcmU6Ok5vZGVGaWx0
ZXI6OmNyZWF0ZShXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uOjpjcmVhdGUodmFsdWUpKTsK
KyAgICByZXR1cm4gV2ViRE9NTm9kZUZpbHRlcihsaXN0ZW5lci5nZXQoKSk7Cit9CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uLmNw
cCBiL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkMzA4MTAKLS0tIC9kZXYvbnVs
bAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL2NwcC9XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9u
LmNwcApAQCAtMCwwICsxLDQwIEBACisvKgorICogQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBN
b3Rpb24gTGltaXRlZCAyMDEwLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisg
KiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1
YmxpYworICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb247IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAq
ICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwg
SW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAt
MTMwMSAgVVNBCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYk5hdGl2
ZU5vZGVGaWx0ZXJDb25kaXRpb24uaCIKKworI2luY2x1ZGUgIldlYkRPTU5vZGUuaCIKKworV2Vi
TmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbjo6V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbihX
ZWJVc2VyTm9kZUZpbHRlciogZmlsdGVyKQorICAgIDogV2ViQ29yZTo6Tm9kZUZpbHRlckNvbmRp
dGlvbigpCisgICAgLCBtX2ZpbHRlcihmaWx0ZXIpCit7CisgICAgQVNTRVJUKG1fZmlsdGVyKTsK
KyAgICBtX2ZpbHRlci0+cmVmKCk7Cit9CisKK1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb246
On5XZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uKCkKK3sKKyAgICBtX2ZpbHRlci0+ZGVyZWYo
KTsKK30KKworc2hvcnQgV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbjo6YWNjZXB0Tm9kZShX
ZWJDb3JlOjpTY3JpcHRTdGF0ZSosIFdlYkNvcmU6Ok5vZGUqIG5vZGUpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fZmlsdGVyLT5hY2NlcHROb2RlKHRvV2ViS2l0KG5vZGUpKTsKK30KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uaCBi
L1dlYkNvcmUvYmluZGluZ3MvY3BwL1dlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24uaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zM2QyNzg2Ci0tLSAvZGV2L251bGwKKysr
IGIvV2ViQ29yZS9iaW5kaW5ncy9jcHAvV2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbi5oCkBA
IC0wLDAgKzEsNDMgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24g
TGltaXRlZCAyMDEwLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogIENvcHlyaWdodCAoQykgMjAw
MSBQZXRlciBLZWxseSAocG1rQHBvc3QuY29tKQorICogIENvcHlyaWdodCAoQykgMjAwMywgMjAw
OCwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi
bGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv
cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJ
bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0x
MzAxICBVU0EKKyAqLworCisjaWZuZGVmIFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb25faAor
I2RlZmluZSBXZWJOYXRpdmVOb2RlRmlsdGVyQ29uZGl0aW9uX2gKKworI2luY2x1ZGUgIk5vZGVG
aWx0ZXIuaCIKKyNpbmNsdWRlICJXZWJET01Ob2RlRmlsdGVyLmgiCisKK2NsYXNzIFdlYk5hdGl2
ZU5vZGVGaWx0ZXJDb25kaXRpb24gOiBwdWJsaWMgV2ViQ29yZTo6Tm9kZUZpbHRlckNvbmRpdGlv
biB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8V2ViTmF0aXZlTm9kZUZpbHRlckNv
bmRpdGlvbj4gY3JlYXRlKFdlYlVzZXJOb2RlRmlsdGVyKiBmaWx0ZXIpCisgICAgeworICAgICAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IFdlYk5hdGl2ZU5vZGVGaWx0ZXJDb25kaXRpb24oZmlsdGVy
KSk7CisgICAgfQorCisgICAgdmlydHVhbCB+V2ViTmF0aXZlTm9kZUZpbHRlckNvbmRpdGlvbigp
OworCisgICAgdmlydHVhbCBzaG9ydCBhY2NlcHROb2RlKFdlYkNvcmU6OlNjcmlwdFN0YXRlKiwg
V2ViQ29yZTo6Tm9kZSopIGNvbnN0OworCitwcm90ZWN0ZWQ6CisgICAgV2ViTmF0aXZlTm9kZUZp
bHRlckNvbmRpdGlvbihXZWJVc2VyTm9kZUZpbHRlciopOworICAgIFdlYlVzZXJOb2RlRmlsdGVy
KiBtX2ZpbHRlcjsKK307CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0gYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckNQUC5wbQppbmRleCBmNDQxYjBlLi41YWVhMzY4IDEwMDY0NAotLS0gYS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbQorKysgYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbQpAQCAtMTQ1LDcgKzE0NSw2IEBAIHN1
YiBHZXRDbGFzc05hbWUKIAogICAgICMgc3BlY2lhbCBjYXNlcwogICAgIHJldHVybiAiV2ViRE9N
U3RyaW5nIiBpZiAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCRuYW1lKSBvciAkbmFtZSBl
cSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIjsKLSAgICByZXR1cm4gIldlYkRPTUFic3RyYWN0Vmll
dyIgaWYgJG5hbWUgZXEgIkRPTVdpbmRvdyI7CiAgICAgcmV0dXJuICJXZWJET01PYmplY3QiIGlm
ICRuYW1lIGVxICJET01PYmplY3QiOwogICAgIHJldHVybiAiYm9vbCIgaWYgJG5hbWUgZXEgImJv
b2xlYW4iOwogICAgIHJldHVybiAkbmFtZSBpZiAkY29kZUdlbmVyYXRvci0+SXNQcmltaXRpdmVU
eXBlKCRuYW1lKTsKQEAgLTE1NSwxMCArMTU0LDcgQEAgc3ViIEdldENsYXNzTmFtZQogCiBzdWIg
R2V0SW1wbENsYXNzTmFtZQogewotICAgIG15ICRuYW1lID0gJGNvZGVHZW5lcmF0b3ItPlN0cmlw
TW9kdWxlKHNoaWZ0KTsKLQotICAgIHJldHVybiAiRE9NV2luZG93IiBpZiAkbmFtZSBlcSAiQWJz
dHJhY3RWaWV3IjsKLSAgICByZXR1cm4gJG5hbWU7CisgICAgcmV0dXJuICRjb2RlR2VuZXJhdG9y
LT5TdHJpcE1vZHVsZShzaGlmdCk7CiB9CiAKIHN1YiBHZXRQYXJlbnRJbXBsQ2xhc3NOYW1lCkBA
IC0yMDMsNyArMTk5LDggQEAgc3ViIFNob3VsZFNraXBUeXBlSW5JbXBsZW1lbnRhdGlvbgogCiAg
ICAgcmV0dXJuIDEgaWYgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDdXN0b21Bcmd1bWVudEhhbmRsaW5nIn0KICAgICAgICAgICAgICBvciAkdHlwZUluZm8tPnNp
Z25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUdldHRlciJ9Ci0gICAgICAgICAg
ICAgb3IgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOZWVkc1Vz
ZXJHZXN0dXJlQ2hlY2sifTsKKyAgICAgICAgICAgICBvciAkdHlwZUluZm8tPnNpZ25hdHVyZS0+
ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik5lZWRzVXNlckdlc3R1cmVDaGVjayJ9CisgICAgICAgICAg
ICAgb3IgJHR5cGVJbmZvLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDUFBDdXN0
b20ifTsKIAogICAgICMgRklYTUU6IFdlIGRvbid0IGdlbmVyYXRlIGJpbmRpbmdzIGZvciBTVkcg
cmVsYXRlZCBpbnRlcmZhY2VzIHlldAogICAgIHJldHVybiAxIGlmICR0eXBlSW5mby0+c2lnbmF0
dXJlLT5uYW1lID1+IC9nZXRTVkdEb2N1bWVudC87CkBAIC0yOTcsMTIgKzI5NCw2IEBAIHN1YiBB
ZGRJbmNsdWRlc0ZvclR5cGUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmICgkdHlw
ZSBlcSAiRE9NV2luZG93IikgewotICAgICAgICAkaW1wbEluY2x1ZGVzeyJET01XaW5kb3cuaCJ9
ID0gMTsKLSAgICAgICAgJGltcGxJbmNsdWRlc3siV2ViRE9NQWJzdHJhY3RWaWV3LmgifSA9IDE7
Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KICAgICBpZiAoJHR5cGUgZXEgIkV2ZW50TGlzdGVu
ZXIiKSB7CiAgICAgICAgICRpbXBsSW5jbHVkZXN7IldlYk5hdGl2ZUV2ZW50TGlzdGVuZXIuaCJ9
ID0gMTsKICAgICAgICAgcmV0dXJuOwpAQCAtMzg4LDEyICszNzksMTIgQEAgc3ViIEdlbmVyYXRl
SGVhZGVyCiAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBleHBsaWNpdCAkY2xhc3NOYW1l
KCRpbXBsQ2xhc3NOYW1lV2l0aE5hbWVzcGFjZSopO1xuIik7CiAKICAgICAjIENvcHkgY29uc3Ry
dWN0b3Igb24gY2xhc3NlcyB3aGljaCBoYXZlIHRoZSBkLXB0cgotICAgIGlmIChAeyRkYXRhTm9k
ZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkcGFyZW50TmFtZSBlcSAiV2ViRE9NT2JqZWN0
IikgewogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgICRjbGFzc05hbWUoY29uc3Qg
JGNsYXNzTmFtZSYpO1xuIik7CiAgICAgfQogCiAgICAgIyBEZXN0cnVjdG9yCi0gICAgaWYgKEB7
JGRhdGFOb2RlLT5wYXJlbnRzfSBlcSAwKSB7CisgICAgaWYgKCRwYXJlbnROYW1lIGVxICJXZWJE
T01PYmplY3QiKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgfiRjbGFzc05h
bWUoKTtcbiIpOwogICAgIH0KIApAQCAtNTA1LDcgKzQ5Niw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRl
cgogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICJcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsICIgICAgJGltcGxDbGFzc05hbWVXaXRoTmFtZXNwYWNlKiBpbXBsKCkgY29uc3Q7XG4iKTsK
IAotICAgIGlmIChAeyRkYXRhTm9kZS0+cGFyZW50c30gZXEgMCkgeworICAgIGlmICgkcGFyZW50
TmFtZSBlcSAiV2ViRE9NT2JqZWN0IikgewogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAi
XG5wcm90ZWN0ZWQ6XG4iKTsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdHJ1
Y3QgJHtjbGFzc05hbWV9UHJpdmF0ZTtcbiIpOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50
LCAiICAgICR7Y2xhc3NOYW1lfVByaXZhdGUqIG1faW1wbDtcbiIpOwpAQCAtNjA3LDcgKzU5OCw3
IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIj
aW5jbHVkZSA8d3RmL1JlZlB0ci5oPlxuXG4iKTsKIAogICAgICMgUHJpdmF0ZSBkYXRhc3RydWN0
dXJlLCBlbmNhcHN1bGF0aW5nIFdlYkNvcmUgdHlwZXMKLSAgICBpZiAoQHskZGF0YU5vZGUtPnBh
cmVudHN9IGVxIDApIHsKKyAgICBpZiAoJGJhc2VDbGFzcyBlcSAiV2ViRE9NT2JqZWN0Iikgewog
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgInN0cnVjdCAke2NsYXNzTmFtZX06OiR7Y2xhc3NO
YW1lfVByaXZhdGUge1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICR7Y2xh
c3NOYW1lfVByaXZhdGUoJGltcGxDbGFzc05hbWVXaXRoTmFtZXNwYWNlKiBvYmplY3QgPSAwKVxu
Iik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICA6IGltcGwob2JqZWN0KVxu
Iik7CkBAIC02MjAsMTIgKzYxMSwxMiBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAg
ICMgQ29uc3RydWN0b3IKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiR7Y2xhc3NOYW1lfTo6JGNs
YXNzTmFtZSgpXG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICA6ICR7YmFzZUNsYXNz
fSgpXG4iKTsKLSAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAsIG1faW1wbCgwKVxuIikgaWYg
KEB7JGRhdGFOb2RlLT5wYXJlbnRzfSBlcSAwKTsKKyAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICAsIG1faW1wbCgwKVxuIikgaWYgKCRiYXNlQ2xhc3MgZXEgIldlYkRPTU9iamVjdCIpOwogICAg
IHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5c
biIpOwogCiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIke2NsYXNzTmFtZX06OiRjbGFzc05hbWUo
JGltcGxDbGFzc05hbWVXaXRoTmFtZXNwYWNlKiBpbXBsKVxuIik7Ci0gICAgaWYgKEB7JGRhdGFO
b2RlLT5wYXJlbnRzfSBlcSAwKSB7CisgICAgaWYgKCRiYXNlQ2xhc3MgZXEgIldlYkRPTU9iamVj
dCIpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgOiAke2Jhc2VDbGFzc30oKVxu
Iik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICwgbV9pbXBsKG5ldyAke2NsYXNz
TmFtZX1Qcml2YXRlKGltcGwpKVxuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xu
Iik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9Ob2RlRmlsdGVyLmlkbCBiL1dlYkNvcmUvZG9t
L05vZGVGaWx0ZXIuaWRsCmluZGV4IDE2ZjNmMjYuLjQwYzViYWQgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvZG9tL05vZGVGaWx0ZXIuaWRsCisrKyBiL1dlYkNvcmUvZG9tL05vZGVGaWx0ZXIuaWRsCkBA
IC0yMSw4ICsyMSwxMiBAQAogbW9kdWxlIHRyYXZlcnNhbCB7CiAKICAgICAvLyBJbnRyb2R1Y2Vk
IGluIERPTSBMZXZlbCAyOgotICAgIGludGVyZmFjZSBbQ3VzdG9tTWFya0Z1bmN0aW9uLCBDdXN0
b21OYXRpdmVDb252ZXJ0ZXIsIE9iakNQcm90b2NvbF0gTm9kZUZpbHRlciB7Ci0KKyAgICBpbnRl
cmZhY2UgWworICAgICAgICBDdXN0b21NYXJrRnVuY3Rpb24sCisgICAgICAgIEN1c3RvbU5hdGl2
ZUNvbnZlcnRlciwKKyAgICAgICAgT2JqQ1Byb3RvY29sLAorICAgICAgICBQdXJlSW50ZXJmYWNl
CisgICAgXSBOb2RlRmlsdGVyIHsKICAgICAgICAgLy8gQ29uc3RhbnRzIHJldHVybmVkIGJ5IGFj
Y2VwdE5vZGUKICAgICAgICAgY29uc3Qgc2hvcnQgICAgICAgICAgICAgICBGSUxURVJfQUNDRVBU
ICAgICAgICAgICAgICAgICAgPSAxOwogICAgICAgICBjb25zdCBzaG9ydCAgICAgICAgICAgICAg
IEZJTFRFUl9SRUpFQ1QgICAgICAgICAgICAgICAgICA9IDI7CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmlkbCBiL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCmluZGV4IGI0
NzY1MTQuLmM2NzlhYzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCisr
KyBiL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCkBAIC01NCw3ICs1NCw3IEBAIG1vZHVsZSB3
aW5kb3cgewogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlXSBCYXJJbmZvIHRvb2xiYXI7
CiAgICAgICAgIGF0dHJpYnV0ZSBbUmVwbGFjZWFibGVdIE5hdmlnYXRvciBuYXZpZ2F0b3I7CiAg
ICAgICAgIGF0dHJpYnV0ZSBbUmVwbGFjZWFibGVdIE5hdmlnYXRvciBjbGllbnRJbmZvcm1hdGlv
bjsKLSAgICAgICAgYXR0cmlidXRlIFtEb05vdENoZWNrRG9tYWluU2VjdXJpdHksIEpTQ0N1c3Rv
bSwgVjhDdXN0b21TZXR0ZXIsIFY4RGlzYWxsb3dTaGFkb3dpbmddIExvY2F0aW9uIGxvY2F0aW9u
OworICAgICAgICBhdHRyaWJ1dGUgW0RvTm90Q2hlY2tEb21haW5TZWN1cml0eSwgSlNDQ3VzdG9t
LCBWOEN1c3RvbVNldHRlciwgVjhEaXNhbGxvd1NoYWRvd2luZywgQ1BQQ3VzdG9tXSBMb2NhdGlv
biBsb2NhdGlvbjsKIAogICAgICAgICBhdHRyaWJ1dGUgW1JlcGxhY2VhYmxlLCBDdXN0b21HZXR0
ZXIsIFY4Q3VzdG9tU2V0dGVyXSBFdmVudCBldmVudDsKIAotLSAKMS42LjUuMS4xMzY3LmdjZDQ4
Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>