<?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>67702</bug_id>
          
          <creation_ts>2011-09-07 03:00:51 -0700</creation_ts>
          <short_desc>[Qt] Remove Qt specific code from css/SelectorChecker.cpp</short_desc>
          <delta_ts>2011-09-21 01:58:25 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Andras Becsi">abecsi</assigned_to>
          <cc>abecsi</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>hausmann</cc>
    
    <cc>kbalazs</cc>
    
    <cc>koivisto</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zecke</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>463260</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-09-07 03:00:51 -0700</bug_when>
    <thetext>This code introduced in http://trac.webkit.org/changeset/43052/trunk/WebCore/css/CSSStyleSelector.cpp
and a refactoring of this code (http://trac.webkit.org/changeset/94656) showed that there are
Qt specific code here (build fail), but in general code it isn&apos;t acceptable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463262</commentid>
    <comment_count>1</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-09-07 03:03:05 -0700</bug_when>
    <thetext>I cc-ed the author, reviewer and the commiter of the original patch,
additionally Antti and András as CSS experts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463423</commentid>
    <comment_count>2</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-07 10:25:06 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; This code introduced in http://trac.webkit.org/changeset/43052/trunk/WebCore/css/CSSStyleSelector.cpp
&gt; and a refactoring of this code (http://trac.webkit.org/changeset/94656) showed that there are
&gt; Qt specific code here (build fail), but in general code it isn&apos;t acceptable.

I have a work-in-progress patch which moves this logic to the platform specific WebPlatformStrategies, so we could deal with the QWebHistoryInterface visited link check in the platformStrategies()-&gt;visitedLinkStrategy()-&gt;isLinkVisited call to avoid the layering violation.

This unfortunately would break the visited link detection on a Qt build where PLATFORM_STRATEGIES is disabled.
A possible solution for this would be to only support global history if PLATFORM_STRATEGIES is enabled. Tomorrow I&apos;ll upload the patch for feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463429</commentid>
    <comment_count>3</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2011-09-07 10:29:43 -0700</bug_when>
    <thetext>I think PLATFORM_STRATEGIES is a per platform enabled/disabled feature. Once a platform choose it it does not makes sense to return to the world before it so you should not really care about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464072</commentid>
    <comment_count>4</comment_count>
      <attachid>106743</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-08 08:45:25 -0700</bug_when>
    <thetext>Created attachment 106743
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464074</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-08 08:46:56 -0700</bug_when>
    <thetext>Attachment 106743 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebKit/qt/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 18 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464077</commentid>
    <comment_count>6</comment_count>
      <attachid>106745</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-08 08:48:00 -0700</bug_when>
    <thetext>Created attachment 106745
proposed patch

Added missing bug link.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464081</commentid>
    <comment_count>7</comment_count>
      <attachid>106745</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-08 09:02:32 -0700</bug_when>
    <thetext>Comment on attachment 106745
proposed patch

Attachment 106745 did not pass cr-mac-ews (chromium):
Output: http://queues.webkit.org/results/9618717</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464085</commentid>
    <comment_count>8</comment_count>
      <attachid>106745</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-08 09:12:17 -0700</bug_when>
    <thetext>Comment on attachment 106745
proposed patch

Chromium has forked the LinkHash support functions in chromium/PlatformSupport.h so we need another way of creating the hash for Qt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464714</commentid>
    <comment_count>9</comment_count>
      <attachid>106855</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-09 03:43:45 -0700</bug_when>
    <thetext>Created attachment 106855
proposed fix v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465582</commentid>
    <comment_count>10</comment_count>
      <attachid>107047</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-12 06:28:45 -0700</bug_when>
    <thetext>Created attachment 107047
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470662</commentid>
    <comment_count>11</comment_count>
      <attachid>107047</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-09-21 01:51:36 -0700</bug_when>
    <thetext>Comment on attachment 107047
updated patch

r=me, but cq-, because CQ still hates my name. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470665</commentid>
    <comment_count>12</comment_count>
      <attachid>107047</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-21 01:58:16 -0700</bug_when>
    <thetext>Comment on attachment 107047
updated patch

Clearing flags on attachment: 107047

Committed r95604: &lt;http://trac.webkit.org/changeset/95604&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470666</commentid>
    <comment_count>13</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-09-21 01:58:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106743</attachid>
            <date>2011-09-08 08:45:25 -0700</date>
            <delta_ts>2011-09-08 08:48:00 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>14784</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZjk5YWJkLi5jMzI0OGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTgg
QEAKIDIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CiAK
KyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBjc3MvU2VsZWN0b3JDaGVja2VyLmNw
cDogTW92ZSBRdC1zcGVjaWZpYyBjb2RlIHRvIHRoZSBRdC1zcGVjaWZpYyBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuCisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6OmRldGVybWluZUxp
bmtTdGF0ZVNsb3dDYXNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5
Lmg6CisKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CisKICAgICAgICAgW1F0XSBCdWlsZCBmYWlscyB3aXRoIHN0cmljdCBjb21waWxlcgogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3NzgKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcAppbmRleCBjOWRlNjE4Li5mYTBlOWI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcApAQCAtNTksMTEgKzU5LDYgQEAKICNp
bmNsdWRlICJYTGlua05hbWVzLmgiCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKFFUKQotLy9GSVhN
RTogUmVtb3ZlIHRoaXMgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGEgcGxhdGZvcm0gbmV1dHJhbCBm
aWxlLgotI2luY2x1ZGUgPHF3ZWJoaXN0b3J5aW50ZXJmYWNlLmg+Ci0jZW5kaWYKLQogbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTEwNCwy
OSArOTksMTYgQEAgRUluc2lkZUxpbmsgU2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVMaW5rU3Rh
dGVTbG93Q2FzZShFbGVtZW50KiBlbGVtZW50KSBjb25zdAogICAgIGNvbnN0IEF0b21pY1N0cmlu
ZyogYXR0ciA9IGxpbmtBdHRyaWJ1dGUoZWxlbWVudCk7CiAgICAgaWYgKCFhdHRyIHx8IGF0dHIt
PmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gTm90SW5zaWRlTGluazsKLSAgICAKLSNpZiBQTEFU
Rk9STShRVCkKLSAgICAvL0ZJWE1FOiBSZW1vdmUgdGhpcyBRdCBzcGVjaWZpYyBjb2RlIGZyb20g
YSBwbGF0Zm9ybSBuZXV0cmFsIGZpbGUuCisKICAgICBWZWN0b3I8VUNoYXIsIDUxMj4gdXJsOwog
ICAgIHZpc2l0ZWRVUkwobV9kb2N1bWVudC0+YmFzZVVSTCgpLCAqYXR0ciwgdXJsKTsKICAgICBp
ZiAodXJsLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIEluc2lkZVVudmlzaXRlZExpbms7Ci0g
ICAgCi0gICAgLy8gSWYgdGhlIFF0NC40IGludGVyZmFjZSBmb3IgdGhlIGhpc3RvcnkgaXMgdXNl
ZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxiYWNrCi0gICAgLy8gdG8gdGhlIG9sZCBnbG9iYWwgaGlz
dG9yeS4KLSAgICBRV2ViSGlzdG9yeUludGVyZmFjZSogaWZhY2UgPSBRV2ViSGlzdG9yeUludGVy
ZmFjZTo6ZGVmYXVsdEludGVyZmFjZSgpOwotICAgIGlmIChpZmFjZSkKLSAgICAgICAgcmV0dXJu
IGlmYWNlLT5oaXN0b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJldF9jYXN0PFFDaGFyKj4o
dXJsLmRhdGEoKSksIHVybC5zaXplKCkpKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52
aXNpdGVkTGluazsKLSAgICAKKwogICAgIExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2go
dXJsLmRhdGEoKSwgdXJsLnNpemUoKSk7CiAgICAgaWYgKCFoYXNoKQogICAgICAgICByZXR1cm4g
SW5zaWRlVW52aXNpdGVkTGluazsKLSNlbHNlCi0gICAgTGlua0hhc2ggaGFzaCA9IHZpc2l0ZWRM
aW5rSGFzaChtX2RvY3VtZW50LT5iYXNlVVJMKCksICphdHRyKTsKLSAgICBpZiAoIWhhc2gpCi0g
ICAgICAgIHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwotI2VuZGlmCi0gICAgCisKICAgICBG
cmFtZSogZnJhbWUgPSBtX2RvY3VtZW50LT5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAg
ICAgIHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwpAQCAtMTM4LDcgKzEyMCw3IEBAIEVJbnNp
ZGVMaW5rIFNlbGVjdG9yQ2hlY2tlcjo6ZGV0ZXJtaW5lTGlua1N0YXRlU2xvd0Nhc2UoRWxlbWVu
dCogZWxlbWVudCkgY29uc3QKICAgICBtX2xpbmtzQ2hlY2tlZEZvclZpc2l0ZWRTdGF0ZS5hZGQo
aGFzaCk7CiAgICAgCiAjaWYgVVNFKFBMQVRGT1JNX1NUUkFURUdJRVMpCi0gICAgcmV0dXJuIHBs
YXRmb3JtU3RyYXRlZ2llcygpLT52aXNpdGVkTGlua1N0cmF0ZWd5KCktPmlzTGlua1Zpc2l0ZWQo
cGFnZSwgaGFzaCkgPyBJbnNpZGVWaXNpdGVkTGluayA6IEluc2lkZVVudmlzaXRlZExpbms7Cisg
ICAgcmV0dXJuIHBsYXRmb3JtU3RyYXRlZ2llcygpLT52aXNpdGVkTGlua1N0cmF0ZWd5KCktPmlz
TGlua1Zpc2l0ZWQocGFnZSwgdXJsLCBoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRl
VW52aXNpdGVkTGluazsKICNlbHNlCiAgICAgcmV0dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlz
aXRlZChoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52aXNpdGVkTGluazsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVmlzaXRlZExpbmtTdHJh
dGVneS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVmlzaXRlZExpbmtTdHJhdGVneS5oCmlu
ZGV4IGZjODgwMTAuLmUxZGM5NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Zpc2l0ZWRMaW5rU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9WaXNp
dGVkTGlua1N0cmF0ZWd5LmgKQEAgLTI4LDYgKzI4LDggQEAKIAogI2lmIFVTRShQTEFURk9STV9T
VFJBVEVHSUVTKQogCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIHR5cGVkZWYgdWludDY0X3QgTGlua0hhc2g7CkBAIC0zNSw3ICszNyw3IEBAIGNsYXNz
IFBhZ2U7CiAKIGNsYXNzIFZpc2l0ZWRMaW5rU3RyYXRlZ3kgewogcHVibGljOgotICAgIHZpcnR1
YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFBhZ2UqLCBMaW5rSGFzaCkgPSAwOworICAgIHZpcnR1YWwg
Ym9vbCBpc0xpbmtWaXNpdGVkKFBhZ2UqLCBXVEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYgdXJsLCBj
b25zdCBMaW5rSGFzaCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhQYWdl
KiwgTGlua0hhc2gpID0gMDsKIAogcHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDRhZGZi
NTYuLmQzYzFmMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wOS0w
OCAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRd
IFJlbW92ZSBRdCBzcGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW06CisgICAgICAgIChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6
OmlzTGlua1Zpc2l0ZWQpOgorCiAyMDExLTA5LTA3ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZp
ZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTQ2
MjcgYW5kIHI5NDYzMi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggODc0NzFmNi4uYTQ3ZTc1MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJh
dGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZv
aWQgZ2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6OlBs
dWdpbkluZm8+Jik7CiAKICAgICAvLyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAg
dmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtI
YXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV1RG
OjpWZWN0b3I8VUNoYXIsIDUxMj4mLCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAgICAgdmly
dHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFz
aCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0KaW5kZXggZjhlMWE3YS4uNzUzYjVhOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5tbQpAQCAtODEsNyArODEsNyBAQCB2b2lkIFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6Z2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6Ogog
ICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiB9CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJh
dGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdl
YlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBXVEY6OlZlY3Rv
cjxVQ2hhciwgNTEyPiYsIGNvbnN0IExpbmtIYXNoIGhhc2gpCiB7CiAgICAgcmV0dXJuIHBhZ2Ut
Pmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggMzUwMGJk
MC4uZWE3MDM1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMS0wOS0wOCAg
QW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJl
bW92ZSBRdCBzcGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IENoZWNrIHRoZSBRdCBnbG9iYWwgaGlzdG9y
eSBoZXJlLCBpbnN0ZWFkIG9mIGEgcGxhdGZvcm0gaW5kZXBlbmRlbnQgZmlsZS4KKyAgICAgICAg
KFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZCk6CisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmg6CisKIDIwMTEtMDktMDUgIEpvY2VseW4g
VHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KIAogICAgICAgICBbUXRdW1dL
Ml0gTWFrZSBUaWxlZERyYXdpbmdBcmVhIHJlcXVlc3QgdGlsZXMgb25seSBpbiB0aGUgZGlyZWN0
aW9uIHRoZSB2aWV3cG9ydCBpcyBwYW5uZWQgdG8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKaW5kZXggYWRm
ODYxNC4uZjNhZTQyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtMzksNiArMzksNyBAQAogI2lu
Y2x1ZGUgPFBsdWdpbkRhdGFiYXNlLmg+CiAjaW5jbHVkZSA8UUNvcmVBcHBsaWNhdGlvbj4KICNp
bmNsdWRlIDxRTG9jYWxlPgorI2luY2x1ZGUgPHF3ZWJoaXN0b3J5aW50ZXJmYWNlLmg+CiAjaW5j
bHVkZSA8cXdlYnBhZ2UuaD4KICNpbmNsdWRlIDxxd2VicGx1Z2luZmFjdG9yeS5oPgogI2luY2x1
ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CkBAIC03NDMsOCArNzQ0LDE3IEBAIFN0cmluZyBXZWJQbGF0
Zm9ybVN0cmF0ZWdpZXM6OnZhbGlkYXRpb25NZXNzYWdlU3RlcE1pc21hdGNoVGV4dCgpCiAKIC8v
IFZpc2l0ZWRMaW5rU3RyYXRlZ3kKIAotYm9vbCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlu
a1Zpc2l0ZWQoUGFnZSogcGFnZSwgTGlua0hhc2ggaGFzaCkKK2Jvb2wgV2ViUGxhdGZvcm1TdHJh
dGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIFdURjo6VmVjdG9yPFVDaGFyLCA1MTI+
JiB1cmwsIGNvbnN0IExpbmtIYXNoIGhhc2gpCiB7CisgICAgQVNTRVJUKCF1cmwuaXNFbXB0eSgp
KTsKKyAgICBBU1NFUlQoaGFzaCk7CisKKyAgICAvLyBJZiB0aGUgUXQ0LjQgaW50ZXJmYWNlIGZv
ciB0aGUgaGlzdG9yeSBpcyB1c2VkLCB3ZSB3aWxsIGhhdmUgdG8gZmFsbGJhY2sKKyAgICAvLyB0
byB0aGUgb2xkIGdsb2JhbCBoaXN0b3J5LgorICAgIFFXZWJIaXN0b3J5SW50ZXJmYWNlKiBpZmFj
ZSA9IFFXZWJIaXN0b3J5SW50ZXJmYWNlOjpkZWZhdWx0SW50ZXJmYWNlKCk7CisgICAgaWYgKGlm
YWNlKQorICAgICAgICByZXR1cm4gaWZhY2UtPmhpc3RvcnlDb250YWlucyhRU3RyaW5nKHJlaW50
ZXJwcmV0X2Nhc3Q8UUNoYXIqPih1cmwuZGF0YSgpKSwgdXJsLnNpemUoKSkpOworCiAgICAgcmV0
dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCBi
L1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgK
aW5kZXggMTAyNGRhYy4uYmY4MzYxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0
L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCkBAIC0xNTMsNyArMTUzLDcg
QEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdURjo6U3RyaW5nIHZhbGlkYXRpb25NZXNzYWdlU3Rl
cE1pc21hdGNoVGV4dCgpOwogCiAgICAgLy8gV2ViQ29yZTo6VmlzaXRlZExpbmtTdHJhdGVneQot
ICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpM
aW5rSGFzaCk7CisgICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSos
IFdURjo6VmVjdG9yPFVDaGFyLCA1MTI+JiB1cmwsIGNvbnN0IFdlYkNvcmU6OkxpbmtIYXNoKTsK
ICAgICB2aXJ0dWFsIHZvaWQgYWRkVmlzaXRlZExpbmsoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6
OkxpbmtIYXNoKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRleCA1NTkyYzNlLi4xZmUzM2VhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNz
aSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3Bl
Y2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzcwMgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLmNwcDogTW9kaWZ5IHRvIG1hdGNoIG5ldyBwcm90b3R5cGUuCisgICAgICAg
IChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQpOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oOiBEaXR0by4KKwogMjAxMS0wOS0wNiAg
Unlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW5hbWUgY29uZmly
bUNvbXBvc2l0aW9uV2l0aG91dERpc3R1cmJpbmdTZWxlY3Rpb24gdG8gY2FuY2VsQ29tcG9zaXRp
b24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IGZkYWZhMjUuLjM1YTA2YWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJh
dGVnaWVzLmNwcApAQCAtOTksNyArOTksNyBAQCB2b2lkIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6
Z2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6OgogICAg
IH0KIH0KIAotYm9vbCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQoUGFnZSog
cGFnZSwgTGlua0hhc2ggaGFzaCkKK2Jvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtW
aXNpdGVkKFBhZ2UqIHBhZ2UsIFdURjo6VmVjdG9yPFVDaGFyLCA1MTI+JiwgY29uc3QgTGlua0hh
c2ggaGFzaCkKIHsKICAgICByZXR1cm4gcGFnZS0+Z3JvdXAoKS5pc0xpbmtWaXNpdGVkKGhhc2gp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCBjNGYxOTliLi4zMzU0MTkxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgK
KysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZ2V0UGx1
Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+
Jik7CiAKICAgICAvLyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAgdmlydHVhbCBi
b29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtIYXNoKTsKKyAg
ICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV1RGOjpWZWN0b3I8
VUNoYXIsIDUxMj4mLCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAgICAgdmlydHVhbCB2b2lk
IGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbmNlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvd2luY2UvQ2hhbmdlTG9nCmluZGV4IDUwMjgwODIuLjFkZDNkZTUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luY2UvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJh
cy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29k
ZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVz
V2luQ0UuY3BwOgorICAgICAgICAoUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0U6OmFkZFZpc2l0ZWRM
aW5rKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5o
OgorCiAyMDExLTA4LTMwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFdpbkNFIGJ1aWxkIGZpeCBhdHRlbXB0IGFmdGVyIHI5NDA4MC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0Uu
Y3BwIGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdp
ZXNXaW5DRS5jcHAKaW5kZXggNDg2OTY3NC4uOTgzNmE1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNX
aW5DRS5jcHAKQEAgLTY3Niw3ICs2NzYsNyBAQCBib29sIFBsYXRmb3JtU3RyYXRlZ2llc1dpbkNF
Ojppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCiAgICAgcmV0dXJuIHBh
Z2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KIAotdm9pZCBQbGF0Zm9ybVN0cmF0
ZWdpZXNXaW5DRTo6YWRkVmlzaXRlZExpbmsoUGFnZSogcGFnZSwgTGlua0hhc2ggaGFzaCkKK3Zv
aWQgUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0U6OmFkZFZpc2l0ZWRMaW5rKFBhZ2UqIHBhZ2UsIFdU
Rjo6VmVjdG9yPFVDaGFyLCA1MTI+JiwgY29uc3QgTGlua0hhc2ggaGFzaCkKIHsKICAgICBwYWdl
LT5ncm91cCgpLmFkZFZpc2l0ZWRMaW5rSGFzaChoYXNoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuaCBi
L1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2lu
Q0UuaAppbmRleCA4M2E3NDkxLi40ZTVmMjJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dp
bmNlL1dlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dpbkNFLmgKKysrIGIvU291cmNl
L1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5oCkBA
IC0xNDgsNyArMTQ4LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdURjo6U3RyaW5nIHZhbGlk
YXRpb25NZXNzYWdlU3RlcE1pc21hdGNoVGV4dCgpOwogCiAgICAgLy8gV2ViQ29yZTo6VmlzaXRl
ZExpbmtTdHJhdGVneQotICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBh
Z2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CisgICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQo
V2ViQ29yZTo6UGFnZSosIFdURjo6VmVjdG9yPFVDaGFyLCA1MTI+JiwgY29uc3QgV2ViQ29yZTo6
TGlua0hhc2gpOwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQYWdl
KiwgV2ViQ29yZTo6TGlua0hhc2gpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDJmZTBlZjQuLjZmNTA5
MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0wOS0wOCAgQW5kcmFzIEJlY3Np
ICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJlbW92ZSBRdCBzcGVj
aWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IE1vZGlmeSB0byBtYXRjaCBuZXcgcHJvdG90eXBl
LgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmFkZFZpc2l0ZWRMaW5r
KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRl
Z2llcy5oOiBEaXR0by4KKwogMjAxMS0wOS0wNyAgQWxleGVpIFN2aXRraW5lICA8YXN2aXRraW5l
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBBZGQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byB0ZXN0
IHJ1YmJlci1iYW5kaW5nIG92ZXJoYW5nIGRyYXdpbmcgYWxvbmcgd2l0aCBsYXlvdXQgdGVzdHMg
Zm9yIGV4aXN0aW5nIENocm9taXVtIE1hYyBvdmVyaGFuZyBkcmF3aW5nIGluIHRoZSBub24tZ3B1
IHBhdGguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKaW5kZXggOWNiNmJlYy4u
MGRlYzg0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtMTE1LDEy
ICsxMTUsMTIgQEAgdm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OnBvcHVsYXRlUGx1Z2luQ2Fj
aGUoKQogCiAvLyBWaXNpdGVkTGlua1N0cmF0ZWd5CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVn
aWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGxpbmtIYXNoKQorYm9vbCBX
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQoUGFnZSosIFdURjo6VmVjdG9yPFVD
aGFyLCA1MTI+JiwgY29uc3QgTGlua0hhc2ggaGFzaCkKIHsKLSAgICByZXR1cm4gV2ViUHJvY2Vz
czo6c2hhcmVkKCkuaXNMaW5rVmlzaXRlZChsaW5rSGFzaCk7CisgICAgcmV0dXJuIFdlYlByb2Nl
c3M6OnNoYXJlZCgpLmlzTGlua1Zpc2l0ZWQoaGFzaCk7CiB9CiAKLXZvaWQgV2ViUGxhdGZvcm1T
dHJhdGVnaWVzOjphZGRWaXNpdGVkTGluayhQYWdlKiBwYWdlLCBMaW5rSGFzaCBsaW5rSGFzaCkK
K3ZvaWQgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjphZGRWaXNpdGVkTGluayhQYWdlKiwgTGlua0hh
c2ggbGlua0hhc2gpCiB7CiAgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuYWRkVmlzaXRlZExpbmso
bGlua0hhc2gpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggNTUyODVk
ZS4uYzM1YjNjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCkBAIC01Niw3ICs1
Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBwb3B1bGF0ZVBsdWdpbkNhY2hlKCk7CiAKICAgICAv
LyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAgdmlydHVhbCBib29sIGlzTGlua1Zp
c2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtIYXNoKTsKKyAgICB2aXJ0dWFsIGJv
b2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV1RGOjpWZWN0b3I8VUNoYXIsIDUxMj4m
LCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAgICAgdmlydHVhbCB2b2lkIGFkZFZpc2l0ZWRM
aW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAKICAgICBib29sIG1fcGx1
Z2luQ2FjaGVJc1BvcHVsYXRlZDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106745</attachid>
            <date>2011-09-08 08:48:00 -0700</date>
            <delta_ts>2011-09-08 09:12:34 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>14839</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZjk5YWJkLi5jMzI0OGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTgg
QEAKIDIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CiAK
KyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBjc3MvU2VsZWN0b3JDaGVja2VyLmNw
cDogTW92ZSBRdC1zcGVjaWZpYyBjb2RlIHRvIHRoZSBRdC1zcGVjaWZpYyBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuCisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6OmRldGVybWluZUxp
bmtTdGF0ZVNsb3dDYXNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5
Lmg6CisKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CisKICAgICAgICAgW1F0XSBCdWlsZCBmYWlscyB3aXRoIHN0cmljdCBjb21waWxlcgogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3NzgKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcAppbmRleCBjOWRlNjE4Li5mYTBlOWI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcApAQCAtNTksMTEgKzU5LDYgQEAKICNp
bmNsdWRlICJYTGlua05hbWVzLmgiCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKFFUKQotLy9GSVhN
RTogUmVtb3ZlIHRoaXMgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGEgcGxhdGZvcm0gbmV1dHJhbCBm
aWxlLgotI2luY2x1ZGUgPHF3ZWJoaXN0b3J5aW50ZXJmYWNlLmg+Ci0jZW5kaWYKLQogbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTEwNCwy
OSArOTksMTYgQEAgRUluc2lkZUxpbmsgU2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVMaW5rU3Rh
dGVTbG93Q2FzZShFbGVtZW50KiBlbGVtZW50KSBjb25zdAogICAgIGNvbnN0IEF0b21pY1N0cmlu
ZyogYXR0ciA9IGxpbmtBdHRyaWJ1dGUoZWxlbWVudCk7CiAgICAgaWYgKCFhdHRyIHx8IGF0dHIt
PmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gTm90SW5zaWRlTGluazsKLSAgICAKLSNpZiBQTEFU
Rk9STShRVCkKLSAgICAvL0ZJWE1FOiBSZW1vdmUgdGhpcyBRdCBzcGVjaWZpYyBjb2RlIGZyb20g
YSBwbGF0Zm9ybSBuZXV0cmFsIGZpbGUuCisKICAgICBWZWN0b3I8VUNoYXIsIDUxMj4gdXJsOwog
ICAgIHZpc2l0ZWRVUkwobV9kb2N1bWVudC0+YmFzZVVSTCgpLCAqYXR0ciwgdXJsKTsKICAgICBp
ZiAodXJsLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIEluc2lkZVVudmlzaXRlZExpbms7Ci0g
ICAgCi0gICAgLy8gSWYgdGhlIFF0NC40IGludGVyZmFjZSBmb3IgdGhlIGhpc3RvcnkgaXMgdXNl
ZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxiYWNrCi0gICAgLy8gdG8gdGhlIG9sZCBnbG9iYWwgaGlz
dG9yeS4KLSAgICBRV2ViSGlzdG9yeUludGVyZmFjZSogaWZhY2UgPSBRV2ViSGlzdG9yeUludGVy
ZmFjZTo6ZGVmYXVsdEludGVyZmFjZSgpOwotICAgIGlmIChpZmFjZSkKLSAgICAgICAgcmV0dXJu
IGlmYWNlLT5oaXN0b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJldF9jYXN0PFFDaGFyKj4o
dXJsLmRhdGEoKSksIHVybC5zaXplKCkpKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52
aXNpdGVkTGluazsKLSAgICAKKwogICAgIExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2go
dXJsLmRhdGEoKSwgdXJsLnNpemUoKSk7CiAgICAgaWYgKCFoYXNoKQogICAgICAgICByZXR1cm4g
SW5zaWRlVW52aXNpdGVkTGluazsKLSNlbHNlCi0gICAgTGlua0hhc2ggaGFzaCA9IHZpc2l0ZWRM
aW5rSGFzaChtX2RvY3VtZW50LT5iYXNlVVJMKCksICphdHRyKTsKLSAgICBpZiAoIWhhc2gpCi0g
ICAgICAgIHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwotI2VuZGlmCi0gICAgCisKICAgICBG
cmFtZSogZnJhbWUgPSBtX2RvY3VtZW50LT5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAg
ICAgIHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwpAQCAtMTM4LDcgKzEyMCw3IEBAIEVJbnNp
ZGVMaW5rIFNlbGVjdG9yQ2hlY2tlcjo6ZGV0ZXJtaW5lTGlua1N0YXRlU2xvd0Nhc2UoRWxlbWVu
dCogZWxlbWVudCkgY29uc3QKICAgICBtX2xpbmtzQ2hlY2tlZEZvclZpc2l0ZWRTdGF0ZS5hZGQo
aGFzaCk7CiAgICAgCiAjaWYgVVNFKFBMQVRGT1JNX1NUUkFURUdJRVMpCi0gICAgcmV0dXJuIHBs
YXRmb3JtU3RyYXRlZ2llcygpLT52aXNpdGVkTGlua1N0cmF0ZWd5KCktPmlzTGlua1Zpc2l0ZWQo
cGFnZSwgaGFzaCkgPyBJbnNpZGVWaXNpdGVkTGluayA6IEluc2lkZVVudmlzaXRlZExpbms7Cisg
ICAgcmV0dXJuIHBsYXRmb3JtU3RyYXRlZ2llcygpLT52aXNpdGVkTGlua1N0cmF0ZWd5KCktPmlz
TGlua1Zpc2l0ZWQocGFnZSwgdXJsLCBoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRl
VW52aXNpdGVkTGluazsKICNlbHNlCiAgICAgcmV0dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlz
aXRlZChoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52aXNpdGVkTGluazsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVmlzaXRlZExpbmtTdHJh
dGVneS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVmlzaXRlZExpbmtTdHJhdGVneS5oCmlu
ZGV4IGZjODgwMTAuLmUxZGM5NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Zpc2l0ZWRMaW5rU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9WaXNp
dGVkTGlua1N0cmF0ZWd5LmgKQEAgLTI4LDYgKzI4LDggQEAKIAogI2lmIFVTRShQTEFURk9STV9T
VFJBVEVHSUVTKQogCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIHR5cGVkZWYgdWludDY0X3QgTGlua0hhc2g7CkBAIC0zNSw3ICszNyw3IEBAIGNsYXNz
IFBhZ2U7CiAKIGNsYXNzIFZpc2l0ZWRMaW5rU3RyYXRlZ3kgewogcHVibGljOgotICAgIHZpcnR1
YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFBhZ2UqLCBMaW5rSGFzaCkgPSAwOworICAgIHZpcnR1YWwg
Ym9vbCBpc0xpbmtWaXNpdGVkKFBhZ2UqLCBXVEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYgdXJsLCBj
b25zdCBMaW5rSGFzaCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhQYWdl
KiwgTGlua0hhc2gpID0gMDsKIAogcHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDRhZGZi
NTYuLmQzYzFmMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wOS0w
OCAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRd
IFJlbW92ZSBRdCBzcGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW06CisgICAgICAgIChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6
OmlzTGlua1Zpc2l0ZWQpOgorCiAyMDExLTA5LTA3ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZp
ZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByOTQ2
MjcgYW5kIHI5NDYzMi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggODc0NzFmNi4uYTQ3ZTc1MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJh
dGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZv
aWQgZ2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6OlBs
dWdpbkluZm8+Jik7CiAKICAgICAvLyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAg
dmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtI
YXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV1RG
OjpWZWN0b3I8VUNoYXIsIDUxMj4mLCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAgICAgdmly
dHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFz
aCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0KaW5kZXggZjhlMWE3YS4uNzUzYjVhOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5tbQpAQCAtODEsNyArODEsNyBAQCB2b2lkIFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6Z2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdlYkNvcmU6Ogog
ICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiB9CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJh
dGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdl
YlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBXVEY6OlZlY3Rv
cjxVQ2hhciwgNTEyPiYsIGNvbnN0IExpbmtIYXNoIGhhc2gpCiB7CiAgICAgcmV0dXJuIHBhZ2Ut
Pmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggMzUwMGJk
MC4uNjFmYTA2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wOS0wOCAg
QW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJl
bW92ZSBRdCBzcGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOiBDaGVjayB0aGUgUXQgZ2xvYmFsIGhpc3Rvcnkg
aGVyZSwgaW5zdGVhZCBvZiBhIHBsYXRmb3JtIGluZGVwZW5kZW50IGZpbGUuCisgICAgICAgIChX
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQpOgorICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oOgorCiAyMDExLTA5LTA1ICBKb2NlbHluIFR1
cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CiAKICAgICAgICAgW1F0XVtXSzJd
IE1ha2UgVGlsZWREcmF3aW5nQXJlYSByZXF1ZXN0IHRpbGVzIG9ubHkgaW4gdGhlIGRpcmVjdGlv
biB0aGUgdmlld3BvcnQgaXMgcGFubmVkIHRvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IGFkZjg2
MTQuLmYzYWU0MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQv
V2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNs
dWRlIDxQbHVnaW5EYXRhYmFzZS5oPgogI2luY2x1ZGUgPFFDb3JlQXBwbGljYXRpb24+CiAjaW5j
bHVkZSA8UUxvY2FsZT4KKyNpbmNsdWRlIDxxd2ViaGlzdG9yeWludGVyZmFjZS5oPgogI2luY2x1
ZGUgPHF3ZWJwYWdlLmg+CiAjaW5jbHVkZSA8cXdlYnBsdWdpbmZhY3RvcnkuaD4KICNpbmNsdWRl
IDx3dGYvTWF0aEV4dHJhcy5oPgpAQCAtNzQzLDggKzc0NCwxNyBAQCBTdHJpbmcgV2ViUGxhdGZv
cm1TdHJhdGVnaWVzOjp2YWxpZGF0aW9uTWVzc2FnZVN0ZXBNaXNtYXRjaFRleHQoKQogCiAvLyBW
aXNpdGVkTGlua1N0cmF0ZWd5CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtW
aXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdlYlBsYXRmb3JtU3RyYXRl
Z2llczo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBXVEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYg
dXJsLCBjb25zdCBMaW5rSGFzaCBoYXNoKQogeworICAgIEFTU0VSVCghdXJsLmlzRW1wdHkoKSk7
CisgICAgQVNTRVJUKGhhc2gpOworCisgICAgLy8gSWYgdGhlIFF0NC40IGludGVyZmFjZSBmb3Ig
dGhlIGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxiYWNrCisgICAgLy8gdG8g
dGhlIG9sZCBnbG9iYWwgaGlzdG9yeS4KKyAgICBRV2ViSGlzdG9yeUludGVyZmFjZSogaWZhY2Ug
PSBRV2ViSGlzdG9yeUludGVyZmFjZTo6ZGVmYXVsdEludGVyZmFjZSgpOworICAgIGlmIChpZmFj
ZSkKKyAgICAgICAgcmV0dXJuIGlmYWNlLT5oaXN0b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVy
cHJldF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSksIHVybC5zaXplKCkpKTsKKwogICAgIHJldHVy
biBwYWdlLT5ncm91cCgpLmlzTGlua1Zpc2l0ZWQoaGFzaCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9T
b3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmlu
ZGV4IDEwMjRkYWMuLmJmODM2MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtMTUzLDcgKzE1Myw3IEBA
IHByaXZhdGU6CiAgICAgdmlydHVhbCBXVEY6OlN0cmluZyB2YWxpZGF0aW9uTWVzc2FnZVN0ZXBN
aXNtYXRjaFRleHQoKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0ZWRMaW5rU3RyYXRlZ3kKLSAg
ICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlu
a0hhc2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBX
VEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYgdXJsLCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCk7CiAg
ICAgdmlydHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpM
aW5rSGFzaCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggNTU5MmMzZS4uMWZlMzNlYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDExLTA5LTA4ICBBbmRyYXMgQmVjc2kg
IDxhbmRyYXMuYmVjc2lAbm9raWEuY29tPgorCisgICAgICAgIFtRdF0gUmVtb3ZlIFF0IHNwZWNp
ZmljIGNvZGUgZnJvbSBjc3MvU2VsZWN0b3JDaGVja2VyLmNwcAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3MDIKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5jcHA6IE1vZGlmeSB0byBtYXRjaCBuZXcgcHJvdG90eXBlLgorICAgICAgICAo
V2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKToKKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDogRGl0dG8uCisKIDIwMTEtMDktMDYgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVuYW1lIGNvbmZpcm1D
b21wb3NpdGlvbldpdGhvdXREaXN0dXJiaW5nU2VsZWN0aW9uIHRvIGNhbmNlbENvbXBvc2l0aW9u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmNwcAppbmRleCBmZGFmYTI1Li4zNWEwNmFlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRl
Z2llcy5jcHAKQEAgLTk5LDcgKzk5LDcgQEAgdm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6Omdl
dFBsdWdpbkluZm8oY29uc3QgV2ViQ29yZTo6UGFnZSosIFZlY3RvcjxXZWJDb3JlOjoKICAgICB9
CiB9CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBh
Z2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlz
aXRlZChQYWdlKiBwYWdlLCBXVEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYsIGNvbnN0IExpbmtIYXNo
IGhhc2gpCiB7CiAgICAgcmV0dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggYzRmMTk5Yi4uMzM1NDE5MTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2ll
cy5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGdldFBsdWdp
bkluZm8oY29uc3QgV2ViQ29yZTo6UGFnZSosIFZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiYp
OwogCiAgICAgLy8gV2ViQ29yZTo6VmlzaXRlZExpbmtTdHJhdGVneQotICAgIHZpcnR1YWwgYm9v
bCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CisgICAg
dmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdURjo6VmVjdG9yPFVD
aGFyLCA1MTI+JiwgY29uc3QgV2ViQ29yZTo6TGlua0hhc2gpOwogICAgIHZpcnR1YWwgdm9pZCBh
ZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOwogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW5jZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L3dpbmNlL0NoYW5nZUxvZwppbmRleCA1MDI4MDgyLi4xZGQzZGU1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L3dpbmNlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3dpbmNlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDExLTA5LTA4ICBBbmRyYXMgQmVjc2kgIDxhbmRyYXMu
YmVjc2lAbm9raWEuY29tPgorCisgICAgICAgIFtRdF0gUmVtb3ZlIFF0IHNwZWNpZmljIGNvZGUg
ZnJvbSBjc3MvU2VsZWN0b3JDaGVja2VyLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dp
bkNFLmNwcDoKKyAgICAgICAgKFBsYXRmb3JtU3RyYXRlZ2llc1dpbkNFOjphZGRWaXNpdGVkTGlu
ayk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuaDoK
KwogMjAxMS0wOC0zMCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBXaW5DRSBidWlsZCBmaXggYXR0ZW1wdCBhZnRlciByOTQwODAuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L3dpbmNlL1dlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dpbkNFLmNw
cCBiL1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVz
V2luQ0UuY3BwCmluZGV4IDQ4Njk2NzQuLjk4MzZhNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2lu
Q0UuY3BwCkBAIC02NzYsNyArNjc2LDcgQEAgYm9vbCBQbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRTo6
aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBMaW5rSGFzaCBoYXNoKQogICAgIHJldHVybiBwYWdl
LT5ncm91cCgpLmlzTGlua1Zpc2l0ZWQoaGFzaCk7CiB9CiAKLXZvaWQgUGxhdGZvcm1TdHJhdGVn
aWVzV2luQ0U6OmFkZFZpc2l0ZWRMaW5rKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCit2b2lk
IFBsYXRmb3JtU3RyYXRlZ2llc1dpbkNFOjphZGRWaXNpdGVkTGluayhQYWdlKiBwYWdlLCBXVEY6
OlZlY3RvcjxVQ2hhciwgNTEyPiYsIGNvbnN0IExpbmtIYXNoIGhhc2gpCiB7CiAgICAgcGFnZS0+
Z3JvdXAoKS5hZGRWaXNpdGVkTGlua0hhc2goaGFzaCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L3dpbmNlL1dlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dpbkNFLmggYi9T
b3VyY2UvV2ViS2l0L3dpbmNlL1dlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dpbkNF
LmgKaW5kZXggODNhNzQ5MS4uNGU1ZjIyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW5j
ZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuaApAQCAt
MTQ4LDcgKzE0OCw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBXVEY6OlN0cmluZyB2YWxpZGF0
aW9uTWVzc2FnZVN0ZXBNaXNtYXRjaFRleHQoKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0ZWRM
aW5rU3RyYXRlZ3kKLSAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdl
KiwgV2ViQ29yZTo6TGlua0hhc2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdl
YkNvcmU6OlBhZ2UqLCBXVEY6OlZlY3RvcjxVQ2hhciwgNTEyPiYsIGNvbnN0IFdlYkNvcmU6Okxp
bmtIYXNoKTsKICAgICB2aXJ0dWFsIHZvaWQgYWRkVmlzaXRlZExpbmsoV2ViQ29yZTo6UGFnZSos
IFdlYkNvcmU6OkxpbmtIYXNoKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAyZmUwZWY0Li42ZjUwOTFi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAg
PGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lm
aWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOiBNb2RpZnkgdG8gbWF0Y2ggbmV3IHByb3RvdHlwZS4K
KyAgICAgICAgKFdlYktpdDo6V2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUGxhdGZvcm1TdHJhdGVnaWVzOjphZGRWaXNpdGVkTGluayk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdp
ZXMuaDogRGl0dG8uCisKIDIwMTEtMDktMDcgIEFsZXhlaSBTdml0a2luZSAgPGFzdml0a2luZUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gdGVzdCBy
dWJiZXItYmFuZGluZyBvdmVyaGFuZyBkcmF3aW5nIGFsb25nIHdpdGggbGF5b3V0IHRlc3RzIGZv
ciBleGlzdGluZyBDaHJvbWl1bSBNYWMgb3ZlcmhhbmcgZHJhd2luZyBpbiB0aGUgbm9uLWdwdSBw
YXRoLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IDljYjZiZWMuLjBk
ZWM4NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTExNSwxMiAr
MTE1LDEyIEBAIHZvaWQgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpwb3B1bGF0ZVBsdWdpbkNhY2hl
KCkKIAogLy8gVmlzaXRlZExpbmtTdHJhdGVneQogCi1ib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBMaW5rSGFzaCBsaW5rSGFzaCkKK2Jvb2wgV2Vi
UGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqLCBXVEY6OlZlY3RvcjxVQ2hh
ciwgNTEyPiYsIGNvbnN0IExpbmtIYXNoIGhhc2gpCiB7Ci0gICAgcmV0dXJuIFdlYlByb2Nlc3M6
OnNoYXJlZCgpLmlzTGlua1Zpc2l0ZWQobGlua0hhc2gpOworICAgIHJldHVybiBXZWJQcm9jZXNz
OjpzaGFyZWQoKS5pc0xpbmtWaXNpdGVkKGhhc2gpOwogfQogCi12b2lkIFdlYlBsYXRmb3JtU3Ry
YXRlZ2llczo6YWRkVmlzaXRlZExpbmsoUGFnZSogcGFnZSwgTGlua0hhc2ggbGlua0hhc2gpCit2
b2lkIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6YWRkVmlzaXRlZExpbmsoUGFnZSosIExpbmtIYXNo
IGxpbmtIYXNoKQogewogICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmFkZFZpc2l0ZWRMaW5rKGxp
bmtIYXNoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmluZGV4IDU1Mjg1ZGUu
LmMzNWIzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtNTYsNyArNTYs
NyBAQCBwcml2YXRlOgogICAgIHZvaWQgcG9wdWxhdGVQbHVnaW5DYWNoZSgpOwogCiAgICAgLy8g
V2ViQ29yZTo6VmlzaXRlZExpbmtTdHJhdGVneQotICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNp
dGVkKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CisgICAgdmlydHVhbCBib29s
IGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdURjo6VmVjdG9yPFVDaGFyLCA1MTI+Jiwg
Y29uc3QgV2ViQ29yZTo6TGlua0hhc2gpOwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGlu
ayhXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOwogCiAgICAgYm9vbCBtX3BsdWdp
bkNhY2hlSXNQb3B1bGF0ZWQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106855</attachid>
            <date>2011-09-09 03:43:45 -0700</date>
            <delta_ts>2011-09-12 06:28:45 -0700</delta_ts>
            <desc>proposed fix v2</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>14872</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkYzIzMTA5Li5mYzEyNzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisK
KyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBjc3MvU2VsZWN0b3JDaGVja2VyLmNw
cDogTW92ZSBRdC1zcGVjaWZpYyBjb2RlIHRvIHRoZSBRdC1zcGVjaWZpYyBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuCisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6OmRldGVybWluZUxp
bmtTdGF0ZVNsb3dDYXNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5
Lmg6CisKIDIwMTEtMDktMDkgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI5NDUzNi4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKaW5kZXggYzlkZTYxOC4uMzVlYmViMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKQEAgLTU5LDExICs1OSw2IEBACiAjaW5j
bHVkZSAiWExpbmtOYW1lcy5oIgogI2VuZGlmCiAKLSNpZiBQTEFURk9STShRVCkKLS8vRklYTUU6
IFJlbW92ZSB0aGlzIFF0IHNwZWNpZmljIGNvZGUgZnJvbSBhIHBsYXRmb3JtIG5ldXRyYWwgZmls
ZS4KLSNpbmNsdWRlIDxxd2ViaGlzdG9yeWludGVyZmFjZS5oPgotI2VuZGlmCi0KIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CkBAIC0xMDQsMjkg
Kzk5LDExIEBAIEVJbnNpZGVMaW5rIFNlbGVjdG9yQ2hlY2tlcjo6ZGV0ZXJtaW5lTGlua1N0YXRl
U2xvd0Nhc2UoRWxlbWVudCogZWxlbWVudCkgY29uc3QKICAgICBjb25zdCBBdG9taWNTdHJpbmcq
IGF0dHIgPSBsaW5rQXR0cmlidXRlKGVsZW1lbnQpOwogICAgIGlmICghYXR0ciB8fCBhdHRyLT5p
c051bGwoKSkKICAgICAgICAgcmV0dXJuIE5vdEluc2lkZUxpbms7Ci0gICAgCi0jaWYgUExBVEZP
Uk0oUVQpCi0gICAgLy9GSVhNRTogUmVtb3ZlIHRoaXMgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGEg
cGxhdGZvcm0gbmV1dHJhbCBmaWxlLgotICAgIFZlY3RvcjxVQ2hhciwgNTEyPiB1cmw7Ci0gICAg
dmlzaXRlZFVSTChtX2RvY3VtZW50LT5iYXNlVVJMKCksICphdHRyLCB1cmwpOwotICAgIGlmICh1
cmwuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gSW5zaWRlVW52aXNpdGVkTGluazsKLSAgICAK
LSAgICAvLyBJZiB0aGUgUXQ0LjQgaW50ZXJmYWNlIGZvciB0aGUgaGlzdG9yeSBpcyB1c2VkLCB3
ZSB3aWxsIGhhdmUgdG8gZmFsbGJhY2sKLSAgICAvLyB0byB0aGUgb2xkIGdsb2JhbCBoaXN0b3J5
LgotICAgIFFXZWJIaXN0b3J5SW50ZXJmYWNlKiBpZmFjZSA9IFFXZWJIaXN0b3J5SW50ZXJmYWNl
OjpkZWZhdWx0SW50ZXJmYWNlKCk7Ci0gICAgaWYgKGlmYWNlKQotICAgICAgICByZXR1cm4gaWZh
Y2UtPmhpc3RvcnlDb250YWlucyhRU3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3Q8UUNoYXIqPih1cmwu
ZGF0YSgpKSwgdXJsLnNpemUoKSkpID8gSW5zaWRlVmlzaXRlZExpbmsgOiBJbnNpZGVVbnZpc2l0
ZWRMaW5rOwotICAgIAotICAgIExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2godXJsLmRh
dGEoKSwgdXJsLnNpemUoKSk7Ci0gICAgaWYgKCFoYXNoKQotICAgICAgICByZXR1cm4gSW5zaWRl
VW52aXNpdGVkTGluazsKLSNlbHNlCisKICAgICBMaW5rSGFzaCBoYXNoID0gdmlzaXRlZExpbmtI
YXNoKG1fZG9jdW1lbnQtPmJhc2VVUkwoKSwgKmF0dHIpOwogICAgIGlmICghaGFzaCkKICAgICAg
ICAgcmV0dXJuIEluc2lkZVVudmlzaXRlZExpbms7Ci0jZW5kaWYKLSAgICAKKwogICAgIEZyYW1l
KiBmcmFtZSA9IG1fZG9jdW1lbnQtPmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAg
cmV0dXJuIEluc2lkZVVudmlzaXRlZExpbms7CkBAIC0xMzgsNyArMTE1LDcgQEAgRUluc2lkZUxp
bmsgU2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVMaW5rU3RhdGVTbG93Q2FzZShFbGVtZW50KiBl
bGVtZW50KSBjb25zdAogICAgIG1fbGlua3NDaGVja2VkRm9yVmlzaXRlZFN0YXRlLmFkZChoYXNo
KTsKICAgICAKICNpZiBVU0UoUExBVEZPUk1fU1RSQVRFR0lFUykKLSAgICByZXR1cm4gcGxhdGZv
cm1TdHJhdGVnaWVzKCktPnZpc2l0ZWRMaW5rU3RyYXRlZ3koKS0+aXNMaW5rVmlzaXRlZChwYWdl
LCBoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52aXNpdGVkTGluazsKKyAgICBy
ZXR1cm4gcGxhdGZvcm1TdHJhdGVnaWVzKCktPnZpc2l0ZWRMaW5rU3RyYXRlZ3koKS0+aXNMaW5r
VmlzaXRlZChwYWdlLCBoYXNoLCBtX2RvY3VtZW50LT5iYXNlVVJMKCksICphdHRyKSA/IEluc2lk
ZVZpc2l0ZWRMaW5rIDogSW5zaWRlVW52aXNpdGVkTGluazsKICNlbHNlCiAgICAgcmV0dXJuIHBh
Z2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKSA/IEluc2lkZVZpc2l0ZWRMaW5rIDogSW5z
aWRlVW52aXNpdGVkTGluazsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVmlzaXRlZExpbmtTdHJhdGVneS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVmlz
aXRlZExpbmtTdHJhdGVneS5oCmluZGV4IGZjODgwMTAuLmFmYmI4MzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Zpc2l0ZWRMaW5rU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5LmgKQEAgLTMyLDEwICszMiwxMSBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHR5cGVkZWYgdWludDY0X3QgTGlua0hhc2g7CiBjbGFz
cyBQYWdlOworY2xhc3MgS1VSTDsKIAogY2xhc3MgVmlzaXRlZExpbmtTdHJhdGVneSB7CiBwdWJs
aWM6Ci0gICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoUGFnZSosIExpbmtIYXNoKSA9IDA7
CisgICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoUGFnZSosIGNvbnN0IExpbmtIYXNoLCBj
b25zdCBLVVJMJiBiYXNlVVJMLCBjb25zdCBBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhQYWdlKiwgTGlua0hhc2gpID0gMDsK
IAogcHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDMzNjUyODMuLjIzYjM1MjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21h
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wOS0wOCAgQW5kcmFzIEJlY3NpICA8
YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJlbW92ZSBRdCBzcGVjaWZp
YyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdp
ZXMubW06CisgICAgICAgIChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQpOgor
CiAyMDExLTA5LTA4ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIHRoZSBDb21wbGV0aW9uIG9iamVjdCBmcm9tIEpTQywgSSBoYXZlIG5ldmVyIGxpa2VkIGl0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5oCmluZGV4IDg3NDcxZjYuLmE2NmQzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5o
CkBAIC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGdldFBsdWdpbklu
Zm8oY29uc3QgV2ViQ29yZTo6UGFnZSosIFZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiYpOwog
CiAgICAgLy8gV2ViQ29yZTo6VmlzaXRlZExpbmtTdHJhdGVneQotICAgIHZpcnR1YWwgYm9vbCBp
c0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CisgICAgdmly
dHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIGNvbnN0IFdlYkNvcmU6Okxp
bmtIYXNoLCBjb25zdCBXZWJDb3JlOjpLVVJMJiBiYXNlVVJMLCBjb25zdCBXVEY6OkF0b21pY1N0
cmluZyYgYXR0cmlidXRlVVJMKTsKICAgICB2aXJ0dWFsIHZvaWQgYWRkVmlzaXRlZExpbmsoV2Vi
Q29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtIYXNoKTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5tbSBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5tbQpp
bmRleCBmOGUxYTdhLi5hYWY0ZmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLm1tCkBAIC04MSw3ICs4MSw3
IEBAIHZvaWQgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpnZXRQbHVnaW5JbmZvKGNvbnN0IFdlYkNv
cmU6OlBhZ2UqLCBWZWN0b3I8V2ViQ29yZTo6CiAgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9O
UzsKIH0KIAotYm9vbCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQoUGFnZSog
cGFnZSwgTGlua0hhc2ggaGFzaCkKK2Jvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtW
aXNpdGVkKFBhZ2UqIHBhZ2UsIGNvbnN0IExpbmtIYXNoIGhhc2gsIGNvbnN0IEtVUkwmLCBjb25z
dCBBdG9taWNTdHJpbmcmKQogewogICAgIHJldHVybiBwYWdlLT5ncm91cCgpLmlzTGlua1Zpc2l0
ZWQoaGFzaCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGY0YzcyZDkuLjkxMDJiOTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJh
cy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29k
ZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLmNwcDogQ2hlY2sgdGhlIFF0IGdsb2JhbCBoaXN0b3J5IGhlcmUsIGluc3RlYWQgb2YgYSBw
bGF0Zm9ybSBpbmRlcGVuZGVudCBmaWxlLgorICAgICAgICAoV2ViUGxhdGZvcm1TdHJhdGVnaWVz
Ojppc0xpbmtWaXNpdGVkKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuaDoKKwogMjAxMS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgog
CiAgICAgICAgIFJlbW92ZSB0aGUgQ29tcGxldGlvbiBvYmplY3QgZnJvbSBKU0MsIEkgaGF2ZSBu
ZXZlciBsaWtlZCBpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IGFkZjg2MTQuLjU0Yzc0OGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJh
dGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlIDxQbHVnaW5EYXRh
YmFzZS5oPgogI2luY2x1ZGUgPFFDb3JlQXBwbGljYXRpb24+CiAjaW5jbHVkZSA8UUxvY2FsZT4K
KyNpbmNsdWRlIDxxd2ViaGlzdG9yeWludGVyZmFjZS5oPgogI2luY2x1ZGUgPHF3ZWJwYWdlLmg+
CiAjaW5jbHVkZSA8cXdlYnBsdWdpbmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgpAQCAtNzQzLDggKzc0NCwxOSBAQCBTdHJpbmcgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjp2
YWxpZGF0aW9uTWVzc2FnZVN0ZXBNaXNtYXRjaFRleHQoKQogCiAvLyBWaXNpdGVkTGlua1N0cmF0
ZWd5CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBh
Z2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlz
aXRlZChQYWdlKiBwYWdlLCBjb25zdCBMaW5rSGFzaCBoYXNoLCBjb25zdCBLVVJMJiBiYXNlVVJM
LCBjb25zdCBBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCkKIHsKKyAgICBBU1NFUlQoaGFzaCk7
CisKKyAgICBWZWN0b3I8VUNoYXIsIDUxMj4gdXJsOworICAgIHZpc2l0ZWRVUkwoYmFzZVVSTCwg
YXR0cmlidXRlVVJMLCB1cmwpOworCisgICAgLy8gSWYgdGhlIFF0NC40IGludGVyZmFjZSBmb3Ig
dGhlIGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxiYWNrCisgICAgLy8gdG8g
dGhlIG9sZCBnbG9iYWwgaGlzdG9yeS4KKyAgICBRV2ViSGlzdG9yeUludGVyZmFjZSogaWZhY2Ug
PSBRV2ViSGlzdG9yeUludGVyZmFjZTo6ZGVmYXVsdEludGVyZmFjZSgpOworICAgIGlmIChpZmFj
ZSkKKyAgICAgICAgcmV0dXJuIGlmYWNlLT5oaXN0b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVy
cHJldF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSksIHVybC5zaXplKCkpKTsKKwogICAgIHJldHVy
biBwYWdlLT5ncm91cCgpLmlzTGlua1Zpc2l0ZWQoaGFzaCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9T
b3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmlu
ZGV4IDEwMjRkYWMuLjVmYWQ3NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9xdC9X
ZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtMTUzLDcgKzE1Myw3IEBA
IHByaXZhdGU6CiAgICAgdmlydHVhbCBXVEY6OlN0cmluZyB2YWxpZGF0aW9uTWVzc2FnZVN0ZXBN
aXNtYXRjaFRleHQoKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0ZWRMaW5rU3RyYXRlZ3kKLSAg
ICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlu
a0hhc2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBj
b25zdCBXZWJDb3JlOjpMaW5rSGFzaCwgY29uc3QgV2ViQ29yZTo6S1VSTCYgYmFzZVVSTCwgY29u
c3QgV1RGOjpBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAgICAgdmlydHVhbCB2b2lkIGFk
ZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKaW5kZXggNTU5MmMzZS4uMWZlMzNlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE0IEBACisyMDExLTA5LTA4ICBBbmRyYXMgQmVjc2kgIDxhbmRyYXMuYmVjc2lAbm9r
aWEuY29tPgorCisgICAgICAgIFtRdF0gUmVtb3ZlIFF0IHNwZWNpZmljIGNvZGUgZnJvbSBjc3Mv
U2VsZWN0b3JDaGVja2VyLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Njc3MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IE1v
ZGlmeSB0byBtYXRjaCBuZXcgcHJvdG90eXBlLgorICAgICAgICAoV2ViUGxhdGZvcm1TdHJhdGVn
aWVzOjppc0xpbmtWaXNpdGVkKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuaDogRGl0dG8uCisKIDIwMTEtMDktMDYgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVuYW1lIGNvbmZpcm1Db21wb3NpdGlvbldpdGhvdXRE
aXN0dXJiaW5nU2VsZWN0aW9uIHRvIGNhbmNlbENvbXBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIv
U291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNw
cAppbmRleCBmZGFmYTI1Li45YmUzZWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTk5LDcg
Kzk5LDcgQEAgdm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmdldFBsdWdpbkluZm8oY29uc3Qg
V2ViQ29yZTo6UGFnZSosIFZlY3RvcjxXZWJDb3JlOjoKICAgICB9CiB9CiAKLWJvb2wgV2ViUGxh
dGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gp
Citib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBj
b25zdCBMaW5rSGFzaCBoYXNoLCBjb25zdCBLVVJMJiwgY29uc3QgQXRvbWljU3RyaW5nJikKIHsK
ICAgICByZXR1cm4gcGFnZS0+Z3JvdXAoKS5pc0xpbmtWaXNpdGVkKGhhc2gpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLmggYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0
ZWdpZXMuaAppbmRleCBjNGYxOTliLi43NzcxNGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtNTEs
NyArNTEsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBnZXRQbHVnaW5JbmZvKGNvbnN0
IFdlYkNvcmU6OlBhZ2UqLCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mKTsKIAogICAgIC8v
IFdlYkNvcmU6OlZpc2l0ZWRMaW5rU3RyYXRlZ3kKLSAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlz
aXRlZChXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOworICAgIHZpcnR1YWwgYm9v
bCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBjb25zdCBXZWJDb3JlOjpMaW5rSGFzaCwg
Y29uc3QgV2ViQ29yZTo6S1VSTCYgYmFzZVVSTCwgY29uc3QgV1RGOjpBdG9taWNTdHJpbmcmIGF0
dHJpYnV0ZVVSTCk7CiAgICAgdmlydHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBh
Z2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbmNlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9nCmluZGV4IDUw
MjgwODIuLjFkZDNkZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MTEtMDktMDggIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIu
Y3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzcw
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuY3BwOgorICAgICAgICAoUGxhdGZv
cm1TdHJhdGVnaWVzV2luQ0U6OmFkZFZpc2l0ZWRMaW5rKToKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5oOgorCiAyMDExLTA4LTMwICBSeW9zdWtlIE5p
d2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFdpbkNFIGJ1aWxkIGZpeCBhdHRlbXB0
IGFmdGVyIHI5NDA4MC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1
cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuY3BwIGIvU291cmNlL1dlYktpdC93aW5jZS9X
ZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5jcHAKaW5kZXggNDg2OTY3NC4u
NzQwZmI0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9Q
bGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJD
b3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5jcHAKQEAgLTY3Niw3ICs2NzYsNyBA
QCBib29sIFBsYXRmb3JtU3RyYXRlZ2llc1dpbkNFOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2Us
IExpbmtIYXNoIGhhc2gpCiAgICAgcmV0dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZCho
YXNoKTsKIH0KIAotdm9pZCBQbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRTo6YWRkVmlzaXRlZExpbmso
UGFnZSogcGFnZSwgTGlua0hhc2ggaGFzaCkKK3ZvaWQgUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0U6
OmFkZFZpc2l0ZWRMaW5rKFBhZ2UqIHBhZ2UsIGNvbnN0IExpbmtIYXNoIGhhc2gsIGNvbnN0IEtV
UkwmLCBjb25zdCBBdG9taWNTdHJpbmcmKQogewogICAgIHBhZ2UtPmdyb3VwKCkuYWRkVmlzaXRl
ZExpbmtIYXNoKGhhc2gpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW5jZS9XZWJD
b3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5oIGIvU291cmNlL1dlYktpdC93aW5j
ZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5DRS5oCmluZGV4IDgzYTc0OTEu
LjRiMGYwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQv
UGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbmNlL1dlYkNv
cmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2llc1dpbkNFLmgKQEAgLTE0OCw3ICsxNDgsNyBAQCBw
cml2YXRlOgogICAgIHZpcnR1YWwgV1RGOjpTdHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2VTdGVwTWlz
bWF0Y2hUZXh0KCk7CiAKICAgICAvLyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAg
dmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtI
YXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgY29u
c3QgV2ViQ29yZTo6TGlua0hhc2gsIGNvbnN0IFdlYkNvcmU6OktVUkwmLCBjb25zdCBXVEY6OkF0
b21pY1N0cmluZyYpOwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQ
YWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDkwMmJjZDAuLjJh
ZDM2ZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0wOS0wOCAgQW5kcmFzIEJl
Y3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJlbW92ZSBRdCBz
cGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IE1vZGlmeSB0byBtYXRjaCBuZXcgcHJvdG90
eXBlLgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0
ZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmFkZFZpc2l0ZWRM
aW5rKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3Ry
YXRlZ2llcy5oOiBEaXR0by4KKwogMjAxMS0wOS0wOCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUu
Y29tPgogCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS85NzQyMzkzPiBTcGVsbCBjaGVja2luZyBh
IHRleHQgYXJlYSBjYXVzZXMgdGhlIHBhZ2UgdG8gcmVsb2FkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5jcHAKaW5kZXggOWNiNmJlYy4uNjRmOGVmNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtMTE1LDEyICsxMTUsMTIgQEAgdm9pZCBXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OnBvcHVsYXRlUGx1Z2luQ2FjaGUoKQogCiAvLyBWaXNpdGVkTGlua1N0cmF0
ZWd5CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBh
Z2UsIExpbmtIYXNoIGxpbmtIYXNoKQorYm9vbCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlu
a1Zpc2l0ZWQoUGFnZSosIGNvbnN0IExpbmtIYXNoIGxpbmtIYXNoLCBjb25zdCBLVVJMJiwgY29u
c3QgQXRvbWljU3RyaW5nJikKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2hhcmVkKCkuaXNM
aW5rVmlzaXRlZChsaW5rSGFzaCk7CiB9CiAKLXZvaWQgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjph
ZGRWaXNpdGVkTGluayhQYWdlKiBwYWdlLCBMaW5rSGFzaCBsaW5rSGFzaCkKK3ZvaWQgV2ViUGxh
dGZvcm1TdHJhdGVnaWVzOjphZGRWaXNpdGVkTGluayhQYWdlKiwgTGlua0hhc2ggbGlua0hhc2gp
CiB7CiAgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuYWRkVmlzaXRlZExpbmsobGlua0hhc2gpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggNTUyODVkZS4uNTQyMDYxNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCkBAIC01Niw3ICs1Niw3IEBAIHByaXZh
dGU6CiAgICAgdm9pZCBwb3B1bGF0ZVBsdWdpbkNhY2hlKCk7CiAKICAgICAvLyBXZWJDb3JlOjpW
aXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29y
ZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtIYXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlz
aXRlZChXZWJDb3JlOjpQYWdlKiwgY29uc3QgV2ViQ29yZTo6TGlua0hhc2gsIGNvbnN0IFdlYkNv
cmU6OktVUkwmIGJhc2VVUkwsIGNvbnN0IFdURjo6QXRvbWljU3RyaW5nJiBhdHRyaWJ1dGVVUkwp
OwogICAgIHZpcnR1YWwgdm9pZCBhZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQYWdlKiwgV2ViQ29y
ZTo6TGlua0hhc2gpOwogCiAgICAgYm9vbCBtX3BsdWdpbkNhY2hlSXNQb3B1bGF0ZWQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107047</attachid>
            <date>2011-09-12 06:28:45 -0700</date>
            <delta_ts>2011-09-21 01:58:16 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>14919</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiMTY3ZjM3Li43OTI0YTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTEtMDktMTIgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisK
KyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3BlY2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NzcwMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBjc3MvU2VsZWN0b3JDaGVja2VyLmNw
cDogTW92ZSBRdC1zcGVjaWZpYyBjb2RlIHRvIHRoZSBRdC1zcGVjaWZpYyBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuCisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6OmRldGVybWluZUxp
bmtTdGF0ZVNsb3dDYXNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5
Lmg6CisKIDIwMTEtMDktMTIgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55YWtAZ29vZ2xlLmNvbT4K
IAogICAgICAgICBDaGFyYWN0ZXJzIGJleW9uZCBVKzEwMDAwIHNob3VsZCBiZSBkZWxldGVkIGJ5
IG9uZSBwcmVzc2luZyBkZWxldGUga2V5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L1NlbGVjdG9yQ2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2Vy
LmNwcAppbmRleCA3NGIwZjM4Li5hOTM5N2NiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JDaGVja2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JD
aGVja2VyLmNwcApAQCAtNTksMTEgKzU5LDYgQEAKICNpbmNsdWRlICJYTGlua05hbWVzLmgiCiAj
ZW5kaWYKIAotI2lmIFBMQVRGT1JNKFFUKQotLy9GSVhNRTogUmVtb3ZlIHRoaXMgUXQgc3BlY2lm
aWMgY29kZSBmcm9tIGEgcGxhdGZvcm0gbmV1dHJhbCBmaWxlLgotI2luY2x1ZGUgPHF3ZWJoaXN0
b3J5aW50ZXJmYWNlLmg+Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAogdXNp
bmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTEwNCwyOSArOTksMTEgQEAgRUluc2lkZUxpbmsg
U2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVMaW5rU3RhdGVTbG93Q2FzZShFbGVtZW50KiBlbGVt
ZW50KSBjb25zdAogICAgIGNvbnN0IEF0b21pY1N0cmluZyogYXR0ciA9IGxpbmtBdHRyaWJ1dGUo
ZWxlbWVudCk7CiAgICAgaWYgKCFhdHRyIHx8IGF0dHItPmlzTnVsbCgpKQogICAgICAgICByZXR1
cm4gTm90SW5zaWRlTGluazsKLSAgICAKLSNpZiBQTEFURk9STShRVCkKLSAgICAvL0ZJWE1FOiBS
ZW1vdmUgdGhpcyBRdCBzcGVjaWZpYyBjb2RlIGZyb20gYSBwbGF0Zm9ybSBuZXV0cmFsIGZpbGUu
Ci0gICAgVmVjdG9yPFVDaGFyLCA1MTI+IHVybDsKLSAgICB2aXNpdGVkVVJMKG1fZG9jdW1lbnQt
PmJhc2VVUkwoKSwgKmF0dHIsIHVybCk7Ci0gICAgaWYgKHVybC5pc0VtcHR5KCkpCi0gICAgICAg
IHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwotICAgIAotICAgIC8vIElmIHRoZSBRdDQuNCBp
bnRlcmZhY2UgZm9yIHRoZSBoaXN0b3J5IGlzIHVzZWQsIHdlIHdpbGwgaGF2ZSB0byBmYWxsYmFj
awotICAgIC8vIHRvIHRoZSBvbGQgZ2xvYmFsIGhpc3RvcnkuCi0gICAgUVdlYkhpc3RvcnlJbnRl
cmZhY2UqIGlmYWNlID0gUVdlYkhpc3RvcnlJbnRlcmZhY2U6OmRlZmF1bHRJbnRlcmZhY2UoKTsK
LSAgICBpZiAoaWZhY2UpCi0gICAgICAgIHJldHVybiBpZmFjZS0+aGlzdG9yeUNvbnRhaW5zKFFT
dHJpbmcocmVpbnRlcnByZXRfY2FzdDxRQ2hhcio+KHVybC5kYXRhKCkpLCB1cmwuc2l6ZSgpKSkg
PyBJbnNpZGVWaXNpdGVkTGluayA6IEluc2lkZVVudmlzaXRlZExpbms7Ci0gICAgCi0gICAgTGlu
a0hhc2ggaGFzaCA9IHZpc2l0ZWRMaW5rSGFzaCh1cmwuZGF0YSgpLCB1cmwuc2l6ZSgpKTsKLSAg
ICBpZiAoIWhhc2gpCi0gICAgICAgIHJldHVybiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwotI2Vsc2UK
KwogICAgIExpbmtIYXNoIGhhc2ggPSB2aXNpdGVkTGlua0hhc2gobV9kb2N1bWVudC0+YmFzZVVS
TCgpLCAqYXR0cik7CiAgICAgaWYgKCFoYXNoKQogICAgICAgICByZXR1cm4gSW5zaWRlVW52aXNp
dGVkTGluazsKLSNlbmRpZgotICAgIAorCiAgICAgRnJhbWUqIGZyYW1lID0gbV9kb2N1bWVudC0+
ZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gSW5zaWRlVW52aXNpdGVk
TGluazsKQEAgLTEzOCw3ICsxMTUsNyBAQCBFSW5zaWRlTGluayBTZWxlY3RvckNoZWNrZXI6OmRl
dGVybWluZUxpbmtTdGF0ZVNsb3dDYXNlKEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiAgICAgbV9s
aW5rc0NoZWNrZWRGb3JWaXNpdGVkU3RhdGUuYWRkKGhhc2gpOwogICAgIAogI2lmIFVTRShQTEFU
Rk9STV9TVFJBVEVHSUVTKQotICAgIHJldHVybiBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+dmlzaXRl
ZExpbmtTdHJhdGVneSgpLT5pc0xpbmtWaXNpdGVkKHBhZ2UsIGhhc2gpID8gSW5zaWRlVmlzaXRl
ZExpbmsgOiBJbnNpZGVVbnZpc2l0ZWRMaW5rOworICAgIHJldHVybiBwbGF0Zm9ybVN0cmF0ZWdp
ZXMoKS0+dmlzaXRlZExpbmtTdHJhdGVneSgpLT5pc0xpbmtWaXNpdGVkKHBhZ2UsIGhhc2gsIG1f
ZG9jdW1lbnQtPmJhc2VVUkwoKSwgKmF0dHIpID8gSW5zaWRlVmlzaXRlZExpbmsgOiBJbnNpZGVV
bnZpc2l0ZWRMaW5rOwogI2Vsc2UKICAgICByZXR1cm4gcGFnZS0+Z3JvdXAoKS5pc0xpbmtWaXNp
dGVkKGhhc2gpID8gSW5zaWRlVmlzaXRlZExpbmsgOiBJbnNpZGVVbnZpc2l0ZWRMaW5rOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0
ZWd5LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9WaXNpdGVkTGlua1N0cmF0ZWd5LmgKaW5k
ZXggZmM4ODAxMC4uMjM2ZmUyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
VmlzaXRlZExpbmtTdHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Zpc2l0
ZWRMaW5rU3RyYXRlZ3kuaApAQCAtMzIsMTAgKzMyLDExIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogdHlwZWRlZiB1aW50NjRfdCBMaW5rSGFzaDsKIGNsYXNzIFBhZ2U7CitjbGFzcyBLVVJMOwog
CiBjbGFzcyBWaXNpdGVkTGlua1N0cmF0ZWd5IHsKIHB1YmxpYzoKLSAgICB2aXJ0dWFsIGJvb2wg
aXNMaW5rVmlzaXRlZChQYWdlKiwgTGlua0hhc2gpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgaXNM
aW5rVmlzaXRlZChQYWdlKiwgTGlua0hhc2gsIGNvbnN0IEtVUkwmIGJhc2VVUkwsIGNvbnN0IEF0
b21pY1N0cmluZyYgYXR0cmlidXRlVVJMKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGFkZFZpc2l0
ZWRMaW5rKFBhZ2UqLCBMaW5rSGFzaCkgPSAwOwogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggZjY3YjgxNC4uODczZDQxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBA
CisyMDExLTA5LTEyICBBbmRyYXMgQmVjc2kgIDxhbmRyYXMuYmVjc2lAbm9raWEuY29tPgorCisg
ICAgICAgIFtRdF0gUmVtb3ZlIFF0IHNwZWNpZmljIGNvZGUgZnJvbSBjc3MvU2VsZWN0b3JDaGVj
a2VyLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Njc3MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5tbToKKyAgICAgICAgKFdlYlBsYXRmb3Jt
U3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZCk6CisKIDIwMTEtMDktMDkgIE9saXZlciBIdW50ICA8
b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3IgYW5vbnltb3Vz
IHN0b3JhZ2UgZnJvbSBqc29iamVjdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggODc0NzFmNi4uOTUz
YWJlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICB2
aXJ0dWFsIHZvaWQgZ2V0UGx1Z2luSW5mbyhjb25zdCBXZWJDb3JlOjpQYWdlKiwgVmVjdG9yPFdl
YkNvcmU6OlBsdWdpbkluZm8+Jik7CiAKICAgICAvLyBXZWJDb3JlOjpWaXNpdGVkTGlua1N0cmF0
ZWd5Ci0gICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQoV2ViQ29yZTo6UGFnZSosIFdlYkNv
cmU6OkxpbmtIYXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQ
YWdlKiwgV2ViQ29yZTo6TGlua0hhc2gsIGNvbnN0IFdlYkNvcmU6OktVUkwmIGJhc2VVUkwsIGNv
bnN0IFdURjo6QXRvbWljU3RyaW5nJiBhdHRyaWJ1dGVVUkwpOwogICAgIHZpcnR1YWwgdm9pZCBh
ZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOwogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1T
dHJhdGVnaWVzLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLm1tCmluZGV4IGY4ZTFhN2EuLmQxYTRkOTUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMu
bW0KQEAgLTgxLDcgKzgxLDcgQEAgdm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmdldFBsdWdp
bkluZm8oY29uc3QgV2ViQ29yZTo6UGFnZSosIFZlY3RvcjxXZWJDb3JlOjoKICAgICBFTkRfQkxP
Q0tfT0JKQ19FWENFUFRJT05TOwogfQogCi1ib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNM
aW5rVmlzaXRlZChQYWdlKiBwYWdlLCBMaW5rSGFzaCBoYXNoKQorYm9vbCBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQoUGFnZSogcGFnZSwgTGlua0hhc2ggaGFzaCwgY29uc3Qg
S1VSTCYsIGNvbnN0IEF0b21pY1N0cmluZyYpCiB7CiAgICAgcmV0dXJuIHBhZ2UtPmdyb3VwKCku
aXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggNzcwMmY0MC4uMDJhNjcx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wOS0xMiAgQW5kcmFzIEJl
Y3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAgICBbUXRdIFJlbW92ZSBRdCBz
cGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hlY2tlci5jcHAKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzAyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0
Zm9ybVN0cmF0ZWdpZXMuY3BwOiBDaGVjayB0aGUgUXQgZ2xvYmFsIGhpc3RvcnkgaGVyZSwgaW5z
dGVhZCBvZiBhIHBsYXRmb3JtIGluZGVwZW5kZW50IGZpbGUuCisgICAgICAgIChXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YlBsYXRmb3JtU3RyYXRlZ2llcy5oOgorCiAyMDExLTA5LTEwICBKYXJyZWQgTmljaG9sbHMgIDxq
YXJyZWRAc2VuY2hhLmNvbT4KIAogICAgICAgICBbUXRdIFFXZWJTZXR0aW5nczo6c2V0VXNlclN0
eWxlU2hlZXRVcmwoKSBkb2VzIG5vdCB3b3JrIHdpdGggd2luZG93cyBwYXRocyB0aGF0IGNvbnRh
aW4gZHJpdmUgbGV0dGVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IGFkZjg2MTQuLmE3NzVmMzEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1T
dHJhdGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBs
YXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlIDxQbHVnaW5E
YXRhYmFzZS5oPgogI2luY2x1ZGUgPFFDb3JlQXBwbGljYXRpb24+CiAjaW5jbHVkZSA8UUxvY2Fs
ZT4KKyNpbmNsdWRlIDxxd2ViaGlzdG9yeWludGVyZmFjZS5oPgogI2luY2x1ZGUgPHF3ZWJwYWdl
Lmg+CiAjaW5jbHVkZSA8cXdlYnBsdWdpbmZhY3RvcnkuaD4KICNpbmNsdWRlIDx3dGYvTWF0aEV4
dHJhcy5oPgpAQCAtNzQzLDggKzc0NCwxOSBAQCBTdHJpbmcgV2ViUGxhdGZvcm1TdHJhdGVnaWVz
Ojp2YWxpZGF0aW9uTWVzc2FnZVN0ZXBNaXNtYXRjaFRleHQoKQogCiAvLyBWaXNpdGVkTGlua1N0
cmF0ZWd5CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2Uq
IHBhZ2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5r
VmlzaXRlZChQYWdlKiBwYWdlLCBMaW5rSGFzaCBoYXNoLCBjb25zdCBLVVJMJiBiYXNlVVJMLCBj
b25zdCBBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCkKIHsKKyAgICBBU1NFUlQoaGFzaCk7CisK
KyAgICBWZWN0b3I8VUNoYXIsIDUxMj4gdXJsOworICAgIHZpc2l0ZWRVUkwoYmFzZVVSTCwgYXR0
cmlidXRlVVJMLCB1cmwpOworCisgICAgLy8gSWYgdGhlIFF0NC40IGludGVyZmFjZSBmb3IgdGhl
IGhpc3RvcnkgaXMgdXNlZCwgd2Ugd2lsbCBoYXZlIHRvIGZhbGxiYWNrCisgICAgLy8gdG8gdGhl
IG9sZCBnbG9iYWwgaGlzdG9yeS4KKyAgICBRV2ViSGlzdG9yeUludGVyZmFjZSogaWZhY2UgPSBR
V2ViSGlzdG9yeUludGVyZmFjZTo6ZGVmYXVsdEludGVyZmFjZSgpOworICAgIGlmIChpZmFjZSkK
KyAgICAgICAgcmV0dXJuIGlmYWNlLT5oaXN0b3J5Q29udGFpbnMoUVN0cmluZyhyZWludGVycHJl
dF9jYXN0PFFDaGFyKj4odXJsLmRhdGEoKSksIHVybC5zaXplKCkpKTsKKwogICAgIHJldHVybiBw
YWdlLT5ncm91cCgpLmlzTGlua1Zpc2l0ZWQoaGFzaCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9Tb3Vy
Y2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmluZGV4
IDEwMjRkYWMuLjkzMTUyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtMTUzLDcgKzE1Myw3IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCBXVEY6OlN0cmluZyB2YWxpZGF0aW9uTWVzc2FnZVN0ZXBNaXNt
YXRjaFRleHQoKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0ZWRMaW5rU3RyYXRlZ3kKLSAgICB2
aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hh
c2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVkKFdlYkNvcmU6OlBhZ2UqLCBXZWJD
b3JlOjpMaW5rSGFzaCwgY29uc3QgV2ViQ29yZTo6S1VSTCYgYmFzZVVSTCwgY29uc3QgV1RGOjpB
dG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAgICAgdmlydHVhbCB2b2lkIGFkZFZpc2l0ZWRM
aW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCk7CiB9OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VM
b2cKaW5kZXggNTU5MmMzZS4uYzBkNDMwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4v
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0
IEBACisyMDExLTA5LTEyICBBbmRyYXMgQmVjc2kgIDxhbmRyYXMuYmVjc2lAbm9raWEuY29tPgor
CisgICAgICAgIFtRdF0gUmVtb3ZlIFF0IHNwZWNpZmljIGNvZGUgZnJvbSBjc3MvU2VsZWN0b3JD
aGVja2VyLmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Njc3MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IE1vZGlmeSB0byBt
YXRjaCBuZXcgcHJvdG90eXBlLgorICAgICAgICAoV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjppc0xp
bmtWaXNpdGVkKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdp
ZXMuaDogRGl0dG8uCisKIDIwMTEtMDktMDYgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUmVuYW1lIGNvbmZpcm1Db21wb3NpdGlvbldpdGhvdXREaXN0dXJiaW5n
U2VsZWN0aW9uIHRvIGNhbmNlbENvbXBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dl
YktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAppbmRleCBm
ZGFmYTI1Li43YTNmZWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTk5LDcgKzk5LDcgQEAg
dm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmdldFBsdWdpbkluZm8oY29uc3QgV2ViQ29yZTo6
UGFnZSosIFZlY3RvcjxXZWJDb3JlOjoKICAgICB9CiB9CiAKLWJvb2wgV2ViUGxhdGZvcm1TdHJh
dGVnaWVzOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCitib29sIFdl
YlBsYXRmb3JtU3RyYXRlZ2llczo6aXNMaW5rVmlzaXRlZChQYWdlKiBwYWdlLCBMaW5rSGFzaCBo
YXNoLCBjb25zdCBLVVJMJiwgY29uc3QgQXRvbWljU3RyaW5nJikKIHsKICAgICByZXR1cm4gcGFn
ZS0+Z3JvdXAoKS5pc0xpbmtWaXNpdGVkKGhhc2gpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCBj
NGYxOTliLi41MDlkZTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgdm9pZCBnZXRQbHVnaW5JbmZvKGNvbnN0IFdlYkNvcmU6OlBhZ2Uq
LCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0
ZWRMaW5rU3RyYXRlZ3kKLSAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQ
YWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVk
KFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCwgY29uc3QgV2ViQ29yZTo6S1VSTCYg
YmFzZVVSTCwgY29uc3QgV1RGOjpBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAgICAgdmly
dHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFz
aCk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbmNlL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9nCmluZGV4IDUwMjgwODIuLjMwOTBiNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luY2UvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luY2UvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMTIgIEFuZHJhcyBCZWNz
aSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBSZW1vdmUgUXQgc3Bl
Y2lmaWMgY29kZSBmcm9tIGNzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzcwMgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1T
dHJhdGVnaWVzV2luQ0UuY3BwOgorICAgICAgICAoUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0U6OmFk
ZFZpc2l0ZWRMaW5rKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdp
ZXNXaW5DRS5oOgorCiAyMDExLTA4LTMwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFdpbkNFIGJ1aWxkIGZpeCBhdHRlbXB0IGFmdGVyIHI5NDA4MC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVn
aWVzV2luQ0UuY3BwIGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9y
bVN0cmF0ZWdpZXNXaW5DRS5jcHAKaW5kZXggNDg2OTY3NC4uYzIzZDYxNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdpZXNXaW5D
RS5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0
cmF0ZWdpZXNXaW5DRS5jcHAKQEAgLTY3Niw3ICs2NzYsNyBAQCBib29sIFBsYXRmb3JtU3RyYXRl
Z2llc1dpbkNFOjppc0xpbmtWaXNpdGVkKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGhhc2gpCiAgICAg
cmV0dXJuIHBhZ2UtPmdyb3VwKCkuaXNMaW5rVmlzaXRlZChoYXNoKTsKIH0KIAotdm9pZCBQbGF0
Zm9ybVN0cmF0ZWdpZXNXaW5DRTo6YWRkVmlzaXRlZExpbmsoUGFnZSogcGFnZSwgTGlua0hhc2gg
aGFzaCkKK3ZvaWQgUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0U6OmFkZFZpc2l0ZWRMaW5rKFBhZ2Uq
IHBhZ2UsIExpbmtIYXNoIGhhc2gsIGNvbnN0IEtVUkwmLCBjb25zdCBBdG9taWNTdHJpbmcmKQog
ewogICAgIHBhZ2UtPmdyb3VwKCkuYWRkVmlzaXRlZExpbmtIYXNoKGhhc2gpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0cmF0ZWdp
ZXNXaW5DRS5oIGIvU291cmNlL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9QbGF0Zm9ybVN0
cmF0ZWdpZXNXaW5DRS5oCmluZGV4IDgzYTc0OTEuLjJmMDUyNDUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvUGxhdGZvcm1TdHJhdGVnaWVzV2luQ0UuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L3dpbmNlL1dlYkNvcmVTdXBwb3J0L1BsYXRmb3JtU3RyYXRlZ2ll
c1dpbkNFLmgKQEAgLTE0OCw3ICsxNDgsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgV1RGOjpT
dHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2VTdGVwTWlzbWF0Y2hUZXh0KCk7CiAKICAgICAvLyBXZWJD
b3JlOjpWaXNpdGVkTGlua1N0cmF0ZWd5Ci0gICAgdmlydHVhbCBib29sIGlzTGlua1Zpc2l0ZWQo
V2ViQ29yZTo6UGFnZSosIFdlYkNvcmU6OkxpbmtIYXNoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNM
aW5rVmlzaXRlZChXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gsIGNvbnN0IFdlYkNv
cmU6OktVUkwmLCBjb25zdCBXVEY6OkF0b21pY1N0cmluZyYpOwogICAgIHZpcnR1YWwgdm9pZCBh
ZGRWaXNpdGVkTGluayhXZWJDb3JlOjpQYWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOwogfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCmluZGV4IDc0OWNkOTguLjA5ZDU4M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAxMS0wOS0xMiAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKwor
ICAgICAgICBbUXRdIFJlbW92ZSBRdCBzcGVjaWZpYyBjb2RlIGZyb20gY3NzL1NlbGVjdG9yQ2hl
Y2tlci5jcHAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTY3NzAyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6IE1v
ZGlmeSB0byBtYXRjaCBuZXcgcHJvdG90eXBlLgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmFkZFZpc2l0ZWRMaW5rKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oOiBEaXR0by4KKwogMjAxMS0wOS0xMSAg
TWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS85
ODc4MjY4PiBQcmVzc2luZyBjYXBzIGxvY2sgYWZ0ZXIgY2xvc2luZyBhIHNob3dNb2RhbERpYWxv
ZyB3aW5kb3cgcmVzdWx0cyBpbiBXZWJQcm9jZXNzIGV4aXRpbmcKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVz
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLmNwcAppbmRleCA5Y2I2YmVjLi42NTI0MGVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2ll
cy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCkBAIC0xMTUsMTIgKzExNSwxMiBAQCB2b2lkIFdlYlBsYXRm
b3JtU3RyYXRlZ2llczo6cG9wdWxhdGVQbHVnaW5DYWNoZSgpCiAKIC8vIFZpc2l0ZWRMaW5rU3Ry
YXRlZ3kKIAotYm9vbCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmlzTGlua1Zpc2l0ZWQoUGFnZSog
cGFnZSwgTGlua0hhc2ggbGlua0hhc2gpCitib29sIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6aXNM
aW5rVmlzaXRlZChQYWdlKiwgTGlua0hhc2ggbGlua0hhc2gsIGNvbnN0IEtVUkwmLCBjb25zdCBB
dG9taWNTdHJpbmcmKQogewogICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaGFyZWQoKS5pc0xpbmtW
aXNpdGVkKGxpbmtIYXNoKTsKIH0KIAotdm9pZCBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmFkZFZp
c2l0ZWRMaW5rKFBhZ2UqIHBhZ2UsIExpbmtIYXNoIGxpbmtIYXNoKQordm9pZCBXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmFkZFZpc2l0ZWRMaW5rKFBhZ2UqLCBMaW5rSGFzaCBsaW5rSGFzaCkKIHsK
ICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5hZGRWaXNpdGVkTGluayhsaW5rSGFzaCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBs
YXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCA1NTI4NWRlLi5lNzcyY2UwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKQEAgLTU2LDcgKzU2LDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHBvcHVsYXRlUGx1Z2luQ2FjaGUoKTsKIAogICAgIC8vIFdlYkNvcmU6OlZpc2l0
ZWRMaW5rU3RyYXRlZ3kKLSAgICB2aXJ0dWFsIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpQ
YWdlKiwgV2ViQ29yZTo6TGlua0hhc2gpOworICAgIHZpcnR1YWwgYm9vbCBpc0xpbmtWaXNpdGVk
KFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFzaCwgY29uc3QgV2ViQ29yZTo6S1VSTCYg
YmFzZVVSTCwgY29uc3QgV1RGOjpBdG9taWNTdHJpbmcmIGF0dHJpYnV0ZVVSTCk7CiAgICAgdmly
dHVhbCB2b2lkIGFkZFZpc2l0ZWRMaW5rKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3JlOjpMaW5rSGFz
aCk7CiAKICAgICBib29sIG1fcGx1Z2luQ2FjaGVJc1BvcHVsYXRlZDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>