<?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>80410</bug_id>
          
          <creation_ts>2012-03-06 05:39:48 -0800</creation_ts>
          <short_desc>Speech JavaScript API: add SpeechRecognitionError</short_desc>
          <delta_ts>2012-03-06 11:23:38 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>80260</blocked>
    
    <blocked>80417</blocked>
    
    <blocked>80424</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hans Wennborg">hans</reporter>
          <assigned_to name="Hans Wennborg">hans</assigned_to>
          <cc>abarth</cc>
    
    <cc>ojan</cc>
    
    <cc>satish</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>571770</commentid>
    <comment_count>0</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-03-06 05:39:48 -0800</bug_when>
    <thetext>Speech JavaScript API: add SpeechRecognitionError</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571789</commentid>
    <comment_count>1</comment_count>
      <attachid>130366</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-03-06 06:01:36 -0800</bug_when>
    <thetext>Created attachment 130366
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571794</commentid>
    <comment_count>2</comment_count>
      <attachid>130369</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-03-06 06:15:39 -0800</bug_when>
    <thetext>Created attachment 130369
Patch

Rebase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571810</commentid>
    <comment_count>3</comment_count>
      <attachid>130369</attachid>
    <who name="Satish Sampath">satish</who>
    <bug_when>2012-03-06 06:50:31 -0800</bug_when>
    <thetext>Comment on attachment 130369
Patch

&gt; Source/WebCore/Modules/speech/SpeechRecognitionError.h: 52
&gt; Kind code() { return m_kind; }

Should the type be named as &apos;Code&apos; and the variable m_code so that this getter actually gets the parameter with that name?

&gt; LayoutTests/fast/speech/scripted/speechrecognitionerror-basics.html: 12
&gt; shouldBeTrue(&quot;&apos;webkitSpeechRecognitionError&apos; in self&quot;);

using &apos;self&apos; works here but perhaps it would be clearer to use &apos;window&apos; instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571847</commentid>
    <comment_count>4</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-03-06 07:34:06 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 130369 [details])
&gt; &gt; Source/WebCore/Modules/speech/SpeechRecognitionError.h: 52
&gt; &gt; Kind code() { return m_kind; }
&gt; 
&gt; Should the type be named as &apos;Code&apos; and the variable m_code so that this getter actually gets the parameter with that name?

Done.

&gt; 
&gt; &gt; LayoutTests/fast/speech/scripted/speechrecognitionerror-basics.html: 12
&gt; &gt; shouldBeTrue(&quot;&apos;webkitSpeechRecognitionError&apos; in self&quot;);
&gt; 
&gt; using &apos;self&apos; works here but perhaps it would be clearer to use &apos;window&apos; instead?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571848</commentid>
    <comment_count>5</comment_count>
      <attachid>130381</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2012-03-06 07:34:31 -0800</bug_when>
    <thetext>Created attachment 130381
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571849</commentid>
    <comment_count>6</comment_count>
    <who name="Satish Sampath">satish</who>
    <bug_when>2012-03-06 07:36:31 -0800</bug_when>
    <thetext>looks good to me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571952</commentid>
    <comment_count>7</comment_count>
      <attachid>130381</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-06 10:22:24 -0800</bug_when>
    <thetext>Comment on attachment 130381
Patch

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

Looks great.  Thanks!

&gt; Source/WebCore/ChangeLog:8
&gt; +        Add SpeechRecognitionError.

Can you add a link to the spec?  That will help folks who look at this change later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571954</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-06 10:23:03 -0800</bug_when>
    <thetext>&gt; Can you add a link to the spec?  That will help folks who look at this change later.

Please feel free to ignore this comment on this change, but for the upcoming changes, it would be nice to link to the spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572017</commentid>
    <comment_count>9</comment_count>
      <attachid>130381</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-06 11:23:33 -0800</bug_when>
    <thetext>Comment on attachment 130381
Patch

Clearing flags on attachment: 130381

Committed r109938: &lt;http://trac.webkit.org/changeset/109938&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572018</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-06 11:23:38 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130366</attachid>
            <date>2012-03-06 06:01:36 -0800</date>
            <delta_ts>2012-03-06 06:15:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80410-20120306140134.patch</filename>
            <type>text/plain</type>
            <size>15837</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5ODc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjRkYzZhMzgyNTY2ODRk
ZTcyOWUzODFlOWM2OWM0N2U0NTY4YjJjZi4uYTc1NTJjZTEwOTM4YzhmNGVkMzE5Y2MxOTY3OGZl
ZGE2MTUxZjg4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTAzLTA2ICBIYW5z
IFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3Jp
cHQgQVBJOiBhZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvci4KKwor
ICAgICAgICBUZXN0OiBmYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9y
LWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9ET01XaW5kb3dTcGVlY2gu
aWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVy
cm9yLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlNw
ZWVjaFJlY29nbml0aW9uRXJyb3I6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTcGVlY2hS
ZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKiBNb2R1
bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKFdlYkNv
cmU6OlNwZWVjaFJlY29nbml0aW9uRXJyb3I6OmNvZGUpOgorICAgICAgICAoV2ViQ29yZTo6U3Bl
ZWNoUmVjb2duaXRpb25FcnJvcjo6bWVzc2FnZSk6CisgICAgICAgICogTW9kdWxlcy9zcGVlY2gv
U3BlZWNoUmVjb2duaXRpb25FcnJvci5pZGw6IEFkZGVkLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
L1dlYkNvcmUuZ3lwOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKwogMjAxMi0wMy0wNSAgS2Vu
dCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRG8gbm90IHJlZm9ybWF0
IHN0cmluZ3MgaW4gPGlucHV0IHR5cGU9bnVtYmVyPiBvbiBwbGF0Zm9ybXMgdXNpbmcgTG9jYWxp
emVkTnVtYmVySUNVLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gv
RE9NV2luZG93U3BlZWNoLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL0RPTVdp
bmRvd1NwZWVjaC5pZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGJmZDlhNzc1ZWYxNDM4YTdhZWI1NWM1ZWY5MTUy
OWI2YjM4MWViYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Bl
ZWNoL0RPTVdpbmRvd1NwZWVjaC5pZGwKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVs
ZSB3aW5kb3cgeworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPVNDUklQVEVE
X1NQRUVDSCwKKyAgICAgICAgU3VwcGxlbWVudGFsPURPTVdpbmRvdworICAgIF0gRE9NV2luZG93
U3BlZWNoIHsKKyAgICAgICAgYXR0cmlidXRlIFtWOEVuYWJsZWRBdFJ1bnRpbWVdIFNwZWVjaFJl
Y29nbml0aW9uRXJyb3JDb25zdHJ1Y3RvciB3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yOwor
ICAgIH07Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVl
Y2hSZWNvZ25pdGlvbkVycm9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1Nw
ZWVjaFJlY29nbml0aW9uRXJyb3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIwYTdhMWJjYjI5ZjExN2FmMDc4
Y2QwZGQ4ODJmNzRhMjIyOTVlOGIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmNwcApAQCAtMCwwICsxLDQ3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFNDUklQVEVEX1NQ
RUVDSCkKKworI2luY2x1ZGUgIlNwZWVjaFJlY29nbml0aW9uRXJyb3IuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitQYXNzUmVmUHRyPFNwZWVjaFJlY29nbml0aW9uRXJyb3I+IFNwZWVjaFJl
Y29nbml0aW9uRXJyb3I6OmNyZWF0ZShLaW5kIGtpbmQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkK
K3sKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IFNwZWVjaFJlY29nbml0aW9uRXJyb3Ioa2luZCwg
bWVzc2FnZSkpOworfQorCitTcGVlY2hSZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlv
bkVycm9yKEtpbmQga2luZCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQorICAgIDogbV9raW5kKGtp
bmQpCisgICAgLCBtX21lc3NhZ2UobWVzc2FnZSkKK3sKK30KKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kMzEzODM3M2Q2YzYyN2EwYTMzZTE4MDAwYjg2MzhjOWE1MjJhNzc2Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRp
b25FcnJvci5oCkBAIC0wLDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNwZWVjaFJlY29n
bml0aW9uRXJyb3JfaAorI2RlZmluZSBTcGVlY2hSZWNvZ25pdGlvbkVycm9yX2gKKworI2lmIEVO
QUJMRShTQ1JJUFRFRF9TUEVFQ0gpCisKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
U3BlZWNoUmVjb2duaXRpb25FcnJvciA6IHB1YmxpYyBSZWZDb3VudGVkPFNwZWVjaFJlY29nbml0
aW9uRXJyb3I+IHsKK3B1YmxpYzoKKyAgICBlbnVtIEtpbmQgeworICAgICAgICBPVEhFUiA9IDAs
CisgICAgICAgIE5PX1NQRUVDSCA9IDEsCisgICAgICAgIEFCT1JURUQgPSAyLAorICAgICAgICBB
VURJT19DQVBUVVJFID0gMywKKyAgICAgICAgTkVUV09SSyA9IDQsCisgICAgICAgIE5PVF9BTExP
V0VEID0gNSwKKyAgICAgICAgU0VSVklDRV9OT1RfQUxMT1dFRCA9IDYsCisgICAgICAgIEJBRF9H
UkFNTUFSID0gNywKKyAgICAgICAgTEFOR1VBR0VfTk9UX1NVUFBPUlRFRCA9IDgKKyAgICB9Owor
CisgICAgc3RhdGljIFBhc3NSZWZQdHI8U3BlZWNoUmVjb2duaXRpb25FcnJvcj4gY3JlYXRlKEtp
bmQsIGNvbnN0IFN0cmluZyYpOworCisgICAgS2luZCBjb2RlKCkgeyByZXR1cm4gbV9raW5kOyB9
CisgICAgY29uc3QgU3RyaW5nJiBtZXNzYWdlKCkgeyByZXR1cm4gbV9tZXNzYWdlOyB9CisKK3By
aXZhdGU6CisgICAgU3BlZWNoUmVjb2duaXRpb25FcnJvcihLaW5kLCBjb25zdCBTdHJpbmcmKTsK
KworICAgIEtpbmQgbV9raW5kOworICAgIFN0cmluZyBtX21lc3NhZ2U7Cit9OworCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQorCisj
ZW5kaWYgLy8gU3BlZWNoUmVjb2duaXRpb25FcnJvcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaWRsCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjM5ZWNiMWQwYTdhZmYxNGRkZTFjNzcyNmI3ODNiZWQ2ZTNkMGZhZTYKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVy
cm9yLmlkbApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUgeworICAgIGlu
dGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPVNDUklQVEVEX1NQRUVDSAorICAgIF0gU3Bl
ZWNoUmVjb2duaXRpb25FcnJvciB7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE9USEVS
ID0gMDsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9fU1BFRUNIID0gMTsKKyAgICAg
ICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQUJPUlRFRCA9IDI7CisgICAgICAgIGNvbnN0IHVuc2ln
bmVkIHNob3J0IEFVRElPX0NBUFRVUkUgPSAzOworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9y
dCBORVRXT1JLID0gNDsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9UX0FMTE9XRUQg
PSA1OworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTRVJWSUNFX05PVF9BTExPV0VEID0g
NjsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQkFEX0dSQU1NQVIgPSA3OworICAgICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCBMQU5HVUFHRV9OT1RfU1VQUE9SVEVEID0gODsKKworICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgY29kZTsKKyAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBtZXNzYWdlOworICAgIH07Cit9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCmluZGV4IDUwNmI4OWEwY2FjY2M2MjliZjc3ODI1YzU4
ODYyZjAzYzljMTdkMmMuLjk1Y2I2MTMwMWU2NDU5ZmJhNTZjYmFjMzU2NDdlMmU5YWUzZmZjZTgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC01Niw2ICs1Niw3IEBA
CiAgICAgICAnLi4vTW9kdWxlcy9pbnRlbnRzJywKICAgICAgICcuLi9Nb2R1bGVzL2luZGV4ZWRk
YicsCiAgICAgICAnLi4vTW9kdWxlcy9tZWRpYXN0cmVhbScsCisgICAgICAnLi4vTW9kdWxlcy9z
cGVlY2gnLAogICAgICAgJy4uL01vZHVsZXMvd2Vic29ja2V0cycsCiAgICAgICAnLi4vYWNjZXNz
aWJpbGl0eScsCiAgICAgICAnLi4vYWNjZXNzaWJpbGl0eS9jaHJvbWl1bScsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKaW5kZXggOTQ1NzQ0ZGNkNmY1ZDg4YWY0ZGU4MDEzNjI4NDlhY2YxMzUyY2Y5NC4uMjEyMzE3
MmFhNTRkODA3OTRhZGQwOTM2YjAxOGZjNjMwODMxZjM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAt
NzYzLDYgKzc2Myw4IEBACiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL21l
ZGlhc3RyZWFtL1BlZXJDb25uZWN0aW9uLmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRp
YXN0cmVhbS9TaWduYWxpbmdDYWxsYmFjay5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3Bl
ZWNoL0RPTVdpbmRvd1NwZWVjaC5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3BlZWNoL1Nw
ZWVjaFJlY29nbml0aW9uRXJyb3IuaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3dlYnNvY2tl
dHMvQ2xvc2VFdmVudC5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvd2Vic29ja2V0cy9ET01X
aW5kb3dXZWJTb2NrZXQuaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3dlYnNvY2tldHMvV2Vi
U29ja2V0LmlkbCcsCkBAIC0xNDAyLDYgKzE0MDQsOCBAQAogICAgICAgICAgICAgJ01vZHVsZXMv
bWVkaWFzdHJlYW0vVXNlck1lZGlhQ29udHJvbGxlci5jcHAnLAogICAgICAgICAgICAgJ01vZHVs
ZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAnLAogICAgICAgICAgICAgJ01vZHVs
ZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oJywKKyAgICAgICAgICAgICdNb2R1bGVz
L3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmNwcCcsCisgICAgICAgICAgICAnTW9kdWxl
cy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25FcnJvci5oJywKICAgICAgICAgICAgICdNb2R1bGVz
L3dlYnNvY2tldHMvQ2xvc2VFdmVudC5oJywKICAgICAgICAgICAgICdNb2R1bGVzL3dlYnNvY2tl
dHMvVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwJywKICAgICAgICAgICAgICdNb2R1bGVz
L3dlYnNvY2tldHMvVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuaCcsCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWFlNmRlMjNlNmU3ZmVhYmEz
ZmIwZDFjYTNlOWNmMzM4NmViMTgxYy4uNjEzNzU2YWQ5OGM1YjQ2NDZiYzYwMDVkMzAzNmYwNGQy
MTZmMGI3OCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAzLTA2ICBIYW5zIFdlbm5ib3JnICA8aGFuc0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3JpcHQgQVBJOiBhZGQgU3BlZWNoUmVj
b2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODA0MTAKKworICAgICAgICBDaHJvbWl1bTogZW5hYmxlIHRoZSBydW50aW1lIGZsYWcg
Zm9yIHNjcmlwdGVkIHNwZWVjaCBzbyB3ZSBjYW4gcnVuCisgICAgICAgIHRoZSBsYXlvdXQgdGVz
dHMgZm9yIGl0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcDoKKyAgICAgICAgKFRl
c3RTaGVsbDo6VGVzdFNoZWxsKToKKwogMjAxMi0wMy0wNSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQu
cmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQg
cjEwOTczMy4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RT
aGVsbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwCmlu
ZGV4IGMxNzVmZGE5OTUyYTIzMWY4ZjExYzNiOGIyNGNjNTdjNjFiZmUyMGYuLjkyOGYyNzczZDk3
OTRjNTUyODUzMjJjYTViODBiZGRiMGZmYjFmOTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vVGVzdFNoZWxsLmNwcApAQCAtMTMwLDYgKzEzMCw3IEBAIFRlc3RTaGVsbDo6VGVz
dFNoZWxsKGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJs
ZUdhbWVwYWQodHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVzOjplbmFibGVTaGFkb3dET00o
dHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVzOjplbmFibGVTdHlsZVNjb3BlZCh0cnVlKTsK
KyAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJsZVNjcmlwdGVkU3BlZWNoKHRydWUpOwogCiAg
ICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQZXJtaXNzaW9ucyh0aGlzKSk7
CiAgICAgbV9hY2Nlc3NpYmlsaXR5Q29udHJvbGxlciA9IGFkb3B0UHRyKG5ldyBBY2Nlc3NpYmls
aXR5Q29udHJvbGxlcih0aGlzKSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggN2M3MDA4OTQxMjRhMTJmMDY1Y2QyYjc3ZWIx
YmVjNGYxOWFhZGJkZi4uOWYzMTI2MWI4ZGNlNWNkMGJjN2NjODI0NDcxMzU1NmUyOTdiYjFmOCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAzLTA2ICBIYW5zIFdlbm5ib3JnICA8aGFuc0Bj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3JpcHQgQVBJOiBhZGQgU3BlZWNo
UmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBBZGQgYSB0ZXN0IGZvciBTcGVlY2hSZWNvZ25pdGlv
bkVycm9yLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogZmFzdC9zcGVlY2gvc2NyaXB0ZWQvc3BlZWNocmVjb2duaXRpb25lcnJvci1iYXNpY3MuaHRt
bDogQWRkZWQuCisKIDIwMTItMDMtMDUgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIERvIG5vdCByZWZvcm1hdCBzdHJpbmdzIGluIDxpbnB1dCB0eXBlPW51bWJl
cj4gb24gcGxhdGZvcm1zIHVzaW5nIExvY2FsaXplZE51bWJlcklDVS4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvc3BlZWNoL3NjcmlwdGVkL3NwZWVjaHJlY29nbml0aW9uZXJyb3ItYmFz
aWNzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25p
dGlvbmVycm9yLWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZiNzJjM2EwMDA4NTNkNzBhYzVhNjkw
ZGFkYmZkMDQ0MGQ3MzlkZGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Nw
ZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9yLWJhc2ljcy5odG1sCkBAIC0wLDAg
KzEsMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorZGVzY3JpcHRpb24oJ1Rlc3RzIHRoZSBiYXNpY3Mgb2YgdGhlIFNwZWVjaFJl
Y29nbml0aW9uRXJyb3IgaW50ZXJmYWNlJyk7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICAvLyBD
aGVjayBhdmFpbGFiaWxpdHkgb2YgY29uc3RydWN0b3IuCisgICAgc2hvdWxkQmVUcnVlKCInd2Vi
a2l0U3BlZWNoUmVjb2duaXRpb25FcnJvcicgaW4gc2VsZiIpOworICAgIHNob3VsZEJlRmFsc2Uo
IndlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IgPT0gbnVsbCIpOworCisgICAgLy8gQ2hlY2sg
Zm9yIG1lbWJlcnMgb2YgU3BlZWNoUmVjb2duaXRpb25FcnJvci4KKyAgICBzaG91bGRCZSgid2Vi
a2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5PVEhFUiIsICIwIik7CisgICAgc2hvdWxkQmUoIndl
YmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuTk9fU1BFRUNIIiwgIjEiKTsKKyAgICBzaG91bGRC
ZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5BQk9SVEVEIiwgIjIiKTsKKyAgICBzaG91
bGRCZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5BVURJT19DQVBUVVJFIiwgIjMiKTsK
KyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5ORVRXT1JLIiwgIjQi
KTsKKyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5OT1RfQUxMT1dF
RCIsICI1Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuU0VS
VklDRV9OT1RfQUxMT1dFRCIsICI2Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdFNwZWVjaFJlY29n
bml0aW9uRXJyb3IuQkFEX0dSQU1NQVIiLCAiNyIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVl
Y2hSZWNvZ25pdGlvbkVycm9yLkxBTkdVQUdFX05PVF9TVVBQT1JURUQiLCAiOCIpOworCisgICAg
ZmluaXNoSlNUZXN0KCk7Cit9CisKK3dpbmRvdy5vbmxvYWQgPSBydW47Cit3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130369</attachid>
            <date>2012-03-06 06:15:39 -0800</date>
            <delta_ts>2012-03-06 07:34:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80410-20120306141538.patch</filename>
            <type>text/plain</type>
            <size>15876</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMxN2QzMTE2ZGQyNjk5
NzA1NTJjMmRmZGNlOWRiY2U0Zjk2MTVkZi4uMTVkOGY0Yzg0YTNlNTJhNThlODdiMjRkM2FmMjli
Yjc4YTAzMDFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTAzLTA2ICBIYW5z
IFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3Jp
cHQgQVBJOiBhZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvci4KKwor
ICAgICAgICBUZXN0OiBmYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9y
LWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9ET01XaW5kb3dTcGVlY2gu
aWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVy
cm9yLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlNw
ZWVjaFJlY29nbml0aW9uRXJyb3I6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTcGVlY2hS
ZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKiBNb2R1
bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKFdlYkNv
cmU6OlNwZWVjaFJlY29nbml0aW9uRXJyb3I6OmNvZGUpOgorICAgICAgICAoV2ViQ29yZTo6U3Bl
ZWNoUmVjb2duaXRpb25FcnJvcjo6bWVzc2FnZSk6CisgICAgICAgICogTW9kdWxlcy9zcGVlY2gv
U3BlZWNoUmVjb2duaXRpb25FcnJvci5pZGw6IEFkZGVkLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
L1dlYkNvcmUuZ3lwOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKwogMjAxMi0wMy0wNiAgQWxl
eGFuZGVyIEbDpnLDuHkgIDxhbGV4YW5kZXIuZmFlcm95QG5va2lhLmNvbT4KIAogICAgICAgICBS
ZW1vdmUgVGlsZVRpbWVyIHR5cGVkZWYgZnJvbSB0aGUgdGlsZWQgYmFja2luZyBzdG9yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvRE9NV2luZG93U3BlZWNoLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL0RPTVdpbmRvd1NwZWVjaC5pZGwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZGJmZDlhNzc1ZWYxNDM4YTdhZWI1NWM1ZWY5MTUyOWI2YjM4MWViYwotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL0RPTVdpbmRvd1NwZWVj
aC5pZGwKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSB3aW5kb3cgeworICAgIGlu
dGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPVNDUklQVEVEX1NQRUVDSCwKKyAgICAgICAg
U3VwcGxlbWVudGFsPURPTVdpbmRvdworICAgIF0gRE9NV2luZG93U3BlZWNoIHsKKyAgICAgICAg
YXR0cmlidXRlIFtWOEVuYWJsZWRBdFJ1bnRpbWVdIFNwZWVjaFJlY29nbml0aW9uRXJyb3JDb25z
dHJ1Y3RvciB3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yOworICAgIH07Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9y
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJy
b3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjIwYTdhMWJjYjI5ZjExN2FmMDc4Y2QwZGQ4ODJmNzRhMjIyOTVl
OGIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVl
Y2hSZWNvZ25pdGlvbkVycm9yLmNwcApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKKworI2luY2x1ZGUg
IlNwZWVjaFJlY29nbml0aW9uRXJyb3IuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQYXNz
UmVmUHRyPFNwZWVjaFJlY29nbml0aW9uRXJyb3I+IFNwZWVjaFJlY29nbml0aW9uRXJyb3I6OmNy
ZWF0ZShLaW5kIGtpbmQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK3sKKyAgICByZXR1cm4gYWRv
cHRSZWYobmV3IFNwZWVjaFJlY29nbml0aW9uRXJyb3Ioa2luZCwgbWVzc2FnZSkpOworfQorCitT
cGVlY2hSZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlvbkVycm9yKEtpbmQga2luZCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlKQorICAgIDogbV9raW5kKGtpbmQpCisgICAgLCBtX21lc3Nh
Z2UobWVzc2FnZSkKK3sKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8g
RU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMzEzODM3M2Q2
YzYyN2EwYTMzZTE4MDAwYjg2MzhjOWE1MjJhNzc2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25FcnJvci5oCkBAIC0wLDAg
KzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNwZWVjaFJlY29nbml0aW9uRXJyb3JfaAorI2Rl
ZmluZSBTcGVlY2hSZWNvZ25pdGlvbkVycm9yX2gKKworI2lmIEVOQUJMRShTQ1JJUFRFRF9TUEVF
Q0gpCisKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU3BlZWNoUmVjb2duaXRpb25F
cnJvciA6IHB1YmxpYyBSZWZDb3VudGVkPFNwZWVjaFJlY29nbml0aW9uRXJyb3I+IHsKK3B1Ymxp
YzoKKyAgICBlbnVtIEtpbmQgeworICAgICAgICBPVEhFUiA9IDAsCisgICAgICAgIE5PX1NQRUVD
SCA9IDEsCisgICAgICAgIEFCT1JURUQgPSAyLAorICAgICAgICBBVURJT19DQVBUVVJFID0gMywK
KyAgICAgICAgTkVUV09SSyA9IDQsCisgICAgICAgIE5PVF9BTExPV0VEID0gNSwKKyAgICAgICAg
U0VSVklDRV9OT1RfQUxMT1dFRCA9IDYsCisgICAgICAgIEJBRF9HUkFNTUFSID0gNywKKyAgICAg
ICAgTEFOR1VBR0VfTk9UX1NVUFBPUlRFRCA9IDgKKyAgICB9OworCisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8U3BlZWNoUmVjb2duaXRpb25FcnJvcj4gY3JlYXRlKEtpbmQsIGNvbnN0IFN0cmluZyYp
OworCisgICAgS2luZCBjb2RlKCkgeyByZXR1cm4gbV9raW5kOyB9CisgICAgY29uc3QgU3RyaW5n
JiBtZXNzYWdlKCkgeyByZXR1cm4gbV9tZXNzYWdlOyB9CisKK3ByaXZhdGU6CisgICAgU3BlZWNo
UmVjb2duaXRpb25FcnJvcihLaW5kLCBjb25zdCBTdHJpbmcmKTsKKworICAgIEtpbmQgbV9raW5k
OworICAgIFN0cmluZyBtX21lc3NhZ2U7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQorCisjZW5kaWYgLy8gU3BlZWNoUmVj
b2duaXRpb25FcnJvcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVj
aC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Bl
ZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM5ZWNiMWQwYTdhZmYx
NGRkZTFjNzcyNmI3ODNiZWQ2ZTNkMGZhZTYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmlkbApAQCAtMCwwICsx
LDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUgeworICAgIGludGVyZmFjZSBbCisgICAgICAg
IENvbmRpdGlvbmFsPVNDUklQVEVEX1NQRUVDSAorICAgIF0gU3BlZWNoUmVjb2duaXRpb25FcnJv
ciB7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE9USEVSID0gMDsKKyAgICAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgTk9fU1BFRUNIID0gMTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQg
c2hvcnQgQUJPUlRFRCA9IDI7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IEFVRElPX0NB
UFRVUkUgPSAzOworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBORVRXT1JLID0gNDsKKyAg
ICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9UX0FMTE9XRUQgPSA1OworICAgICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBTRVJWSUNFX05PVF9BTExPV0VEID0gNjsKKyAgICAgICAgY29uc3Qg
dW5zaWduZWQgc2hvcnQgQkFEX0dSQU1NQVIgPSA3OworICAgICAgICBjb25zdCB1bnNpZ25lZCBz
aG9ydCBMQU5HVUFHRV9OT1RfU1VQUE9SVEVEID0gODsKKworICAgICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgc2hvcnQgY29kZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBtZXNzYWdlOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNv
cmUuZ3lwCmluZGV4IGUxZTY5Y2I0YTgxNjFmMzZjZDcyN2E3NWU3ODRkMWY4MmVlOWEyMzEuLmU4
YjI5YmMyNjI0MTA5ZGI4MDI2M2MzZDdhNDAzZGQ4NWE5ZmY4NmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC01Niw2ICs1Niw3IEBACiAgICAgICAnLi4vTW9kdWxl
cy9pbnRlbnRzJywKICAgICAgICcuLi9Nb2R1bGVzL2luZGV4ZWRkYicsCiAgICAgICAnLi4vTW9k
dWxlcy9tZWRpYXN0cmVhbScsCisgICAgICAnLi4vTW9kdWxlcy9zcGVlY2gnLAogICAgICAgJy4u
L01vZHVsZXMvd2ViZGF0YWJhc2UnLAogICAgICAgJy4uL01vZHVsZXMvd2ViZGF0YWJhc2UvY2hy
b21pdW0nLAogICAgICAgJy4uL01vZHVsZXMvd2Vic29ja2V0cycsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5k
ZXggZDc0NjY0OTAyMDExZmJjNTRjMDA3YjdkYTNmNjJjZmY3ZTdmZTg3Zi4uZGY3OGNlOTg0ZGFm
NWI3NmQ3MjcyZmM4ZDhiNmVlMWNjMTY1Zjg1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNzYzLDYg
Kzc2Myw4IEBACiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL21lZGlhc3Ry
ZWFtL1BlZXJDb25uZWN0aW9uLmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRpYXN0cmVh
bS9TaWduYWxpbmdDYWxsYmFjay5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3BlZWNoL0RP
TVdpbmRvd1NwZWVjaC5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3BlZWNoL1NwZWVjaFJl
Y29nbml0aW9uRXJyb3IuaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3dlYmRhdGFiYXNlL0RP
TVdpbmRvd1NRTERhdGFiYXNlLmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy93ZWJkYXRhYmFz
ZS9EYXRhYmFzZS5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJh
c2VDYWxsYmFjay5pZGwnLApAQCAtMTQwMiw2ICsxNDA0LDggQEAKICAgICAgICAgICAgICdNb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYUNvbnRyb2xsZXIuY3BwJywKICAgICAgICAgICAgICdN
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwJywKICAgICAgICAgICAgICdN
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaCcsCisgICAgICAgICAgICAnTW9k
dWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25FcnJvci5jcHAnLAorICAgICAgICAgICAgJ01v
ZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaCcsCiAgICAgICAgICAgICAnTW9k
dWxlcy93ZWJkYXRhYmFzZS9BYnN0cmFjdERhdGFiYXNlLmNwcCcsCiAgICAgICAgICAgICAnTW9k
dWxlcy93ZWJkYXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAnLAogICAgICAgICAgICAg
J01vZHVsZXMvd2ViZGF0YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaCcsCmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMjY1NDg3ZjNiZTFmMDAw
YjQ0MjdhYjAxZjkzMDU2ZTM4NGVlZDA1ZS4uNDdhMTBlMDBkNjg4ZjllNGUwMDQwYTgxNjc0NDUy
Njk2MGZkNjgzZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAzLTA2ICBIYW5zIFdlbm5ib3JnICA8aGFuc0Bj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3JpcHQgQVBJOiBhZGQgU3BlZWNo
UmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBDaHJvbWl1bTogZW5hYmxlIHRoZSBydW50aW1lIGZs
YWcgZm9yIHNjcmlwdGVkIHNwZWVjaCBzbyB3ZSBjYW4gcnVuCisgICAgICAgIHRoZSBsYXlvdXQg
dGVzdHMgZm9yIGl0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcDoKKyAgICAgICAg
KFRlc3RTaGVsbDo6VGVzdFNoZWxsKToKKwogMjAxMi0wMy0wNiAgVG9yIEFybmUgVmVzdGLDuCAg
PHRvci5hcm5lLnZlc3Rib0Bub2tpYS5jb20+CiAKICAgICAgICAgW1F0XSBSZXZlcnQgcjEwOTkw
MCwgaXQgd2FzIGNvbXBsZXRseSBidXN0ZWQKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9UZXN0U2hlbGwuY3BwCmluZGV4IGMxNzVmZGE5OTUyYTIzMWY4ZjExYzNiOGIyNGNjNTdjNjFi
ZmUyMGYuLjkyOGYyNzczZDk3OTRjNTUyODUzMjJjYTViODBiZGRiMGZmYjFmOTEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcApAQCAtMTMwLDYgKzEzMCw3
IEBAIFRlc3RTaGVsbDo6VGVzdFNoZWxsKGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBXZWJSdW50
aW1lRmVhdHVyZXM6OmVuYWJsZUdhbWVwYWQodHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVz
OjplbmFibGVTaGFkb3dET00odHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVzOjplbmFibGVT
dHlsZVNjb3BlZCh0cnVlKTsKKyAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJsZVNjcmlwdGVk
U3BlZWNoKHRydWUpOwogCiAgICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQ
ZXJtaXNzaW9ucyh0aGlzKSk7CiAgICAgbV9hY2Nlc3NpYmlsaXR5Q29udHJvbGxlciA9IGFkb3B0
UHRyKG5ldyBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcih0aGlzKSk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNDI1ZGQ5MTNj
ZGM1M2ViNDc1OTM3ZjhjNmNlZmUyZjAyYTdmODcxMi4uZmEwYTRjNTllN2M2MGJkMzU2ODM1MmM0
MWM4NTJkMWRmODUwMTk0YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAzLTA2ICBIYW5z
IFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3Jp
cHQgQVBJOiBhZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBBZGQgYSB0ZXN0IGZv
ciBTcGVlY2hSZWNvZ25pdGlvbkVycm9yLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZmFzdC9zcGVlY2gvc2NyaXB0ZWQvc3BlZWNocmVjb2duaXRp
b25lcnJvci1iYXNpY3MuaHRtbDogQWRkZWQuCisKIDIwMTItMDMtMDYgIFBhdmVsIFBvZGl2aWxv
diAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcHJl
cGFyZSBmb3IgZXh0cmFjdGluZyBTY3JpcHRNYXBwaW5nIGltcGxlbWVudGF0aW9uIGZyb20gRGVi
dWdnZXJQcmVzZW50YXRpb25Nb2RlbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3Bl
ZWNoL3NjcmlwdGVkL3NwZWVjaHJlY29nbml0aW9uZXJyb3ItYmFzaWNzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9yLWJhc2ljcy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmZiNzJjM2EwMDA4NTNkNzBhYzVhNjkwZGFkYmZkMDQ0MGQ3MzlkZGYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVl
Y2hyZWNvZ25pdGlvbmVycm9yLWJhc2ljcy5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3Jp
cHRpb24oJ1Rlc3RzIHRoZSBiYXNpY3Mgb2YgdGhlIFNwZWVjaFJlY29nbml0aW9uRXJyb3IgaW50
ZXJmYWNlJyk7CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICAvLyBDaGVjayBhdmFpbGFiaWxpdHkg
b2YgY29uc3RydWN0b3IuCisgICAgc2hvdWxkQmVUcnVlKCInd2Via2l0U3BlZWNoUmVjb2duaXRp
b25FcnJvcicgaW4gc2VsZiIpOworICAgIHNob3VsZEJlRmFsc2UoIndlYmtpdFNwZWVjaFJlY29n
bml0aW9uRXJyb3IgPT0gbnVsbCIpOworCisgICAgLy8gQ2hlY2sgZm9yIG1lbWJlcnMgb2YgU3Bl
ZWNoUmVjb2duaXRpb25FcnJvci4KKyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVjb2duaXRp
b25FcnJvci5PVEhFUiIsICIwIik7CisgICAgc2hvdWxkQmUoIndlYmtpdFNwZWVjaFJlY29nbml0
aW9uRXJyb3IuTk9fU1BFRUNIIiwgIjEiKTsKKyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVj
b2duaXRpb25FcnJvci5BQk9SVEVEIiwgIjIiKTsKKyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNo
UmVjb2duaXRpb25FcnJvci5BVURJT19DQVBUVVJFIiwgIjMiKTsKKyAgICBzaG91bGRCZSgid2Vi
a2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5ORVRXT1JLIiwgIjQiKTsKKyAgICBzaG91bGRCZSgi
d2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5OT1RfQUxMT1dFRCIsICI1Iik7CisgICAgc2hv
dWxkQmUoIndlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuU0VSVklDRV9OT1RfQUxMT1dFRCIs
ICI2Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuQkFEX0dS
QU1NQVIiLCAiNyIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9y
LkxBTkdVQUdFX05PVF9TVVBQT1JURUQiLCAiOCIpOworCisgICAgZmluaXNoSlNUZXN0KCk7Cit9
CisKK3dpbmRvdy5vbmxvYWQgPSBydW47Cit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130381</attachid>
            <date>2012-03-06 07:34:31 -0800</date>
            <delta_ts>2012-03-06 11:23:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80410-20120306153430.patch</filename>
            <type>text/plain</type>
            <size>17048</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMxN2QzMTE2ZGQyNjk5
NzA1NTJjMmRmZGNlOWRiY2U0Zjk2MTVkZi4uMTVkOGY0Yzg0YTNlNTJhNThlODdiMjRkM2FmMjli
Yjc4YTAzMDFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTAzLTA2ICBIYW5z
IFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3Jp
cHQgQVBJOiBhZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvci4KKwor
ICAgICAgICBUZXN0OiBmYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9y
LWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9ET01XaW5kb3dTcGVlY2gu
aWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVy
cm9yLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlNw
ZWVjaFJlY29nbml0aW9uRXJyb3I6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTcGVlY2hS
ZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKiBNb2R1
bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChTcGVlY2hSZWNvZ25pdGlvbkVycm9yKToKKyAgICAgICAgKFdlYkNv
cmU6OlNwZWVjaFJlY29nbml0aW9uRXJyb3I6OmNvZGUpOgorICAgICAgICAoV2ViQ29yZTo6U3Bl
ZWNoUmVjb2duaXRpb25FcnJvcjo6bWVzc2FnZSk6CisgICAgICAgICogTW9kdWxlcy9zcGVlY2gv
U3BlZWNoUmVjb2duaXRpb25FcnJvci5pZGw6IEFkZGVkLgorICAgICAgICAqIFdlYkNvcmUuZ3lw
L1dlYkNvcmUuZ3lwOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKwogMjAxMi0wMy0wNiAgQWxl
eGFuZGVyIEbDpnLDuHkgIDxhbGV4YW5kZXIuZmFlcm95QG5va2lhLmNvbT4KIAogICAgICAgICBS
ZW1vdmUgVGlsZVRpbWVyIHR5cGVkZWYgZnJvbSB0aGUgdGlsZWQgYmFja2luZyBzdG9yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvRE9NV2luZG93U3BlZWNoLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL0RPTVdpbmRvd1NwZWVjaC5pZGwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZGJmZDlhNzc1ZWYxNDM4YTdhZWI1NWM1ZWY5MTUyOWI2YjM4MWViYwotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL0RPTVdpbmRvd1NwZWVj
aC5pZGwKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSB3aW5kb3cgeworICAgIGlu
dGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPVNDUklQVEVEX1NQRUVDSCwKKyAgICAgICAg
U3VwcGxlbWVudGFsPURPTVdpbmRvdworICAgIF0gRE9NV2luZG93U3BlZWNoIHsKKyAgICAgICAg
YXR0cmlidXRlIFtWOEVuYWJsZWRBdFJ1bnRpbWVdIFNwZWVjaFJlY29nbml0aW9uRXJyb3JDb25z
dHJ1Y3RvciB3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yOworICAgIH07Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9y
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJy
b3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmI3YjUwNzIzNzViOGY0MzdiZTFlNTU3Yzg5YTI2NWM4MjBmNzE4
Y2EKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVl
Y2hSZWNvZ25pdGlvbkVycm9yLmNwcApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKKworI2luY2x1ZGUg
IlNwZWVjaFJlY29nbml0aW9uRXJyb3IuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQYXNz
UmVmUHRyPFNwZWVjaFJlY29nbml0aW9uRXJyb3I+IFNwZWVjaFJlY29nbml0aW9uRXJyb3I6OmNy
ZWF0ZShDb2RlIGNvZGUsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK3sKKyAgICByZXR1cm4gYWRv
cHRSZWYobmV3IFNwZWVjaFJlY29nbml0aW9uRXJyb3IoY29kZSwgbWVzc2FnZSkpOworfQorCitT
cGVlY2hSZWNvZ25pdGlvbkVycm9yOjpTcGVlY2hSZWNvZ25pdGlvbkVycm9yKENvZGUgY29kZSwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlKQorICAgIDogbV9jb2RlKGNvZGUpCisgICAgLCBtX21lc3Nh
Z2UobWVzc2FnZSkKK3sKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8g
RU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYWY5NDVjNThm
NmJmYTFkZWI0NWQ2YWMyMzE5MTE0MzE4OTkyNTNiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25FcnJvci5oCkBAIC0wLDAg
KzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNwZWVjaFJlY29nbml0aW9uRXJyb3JfaAorI2Rl
ZmluZSBTcGVlY2hSZWNvZ25pdGlvbkVycm9yX2gKKworI2lmIEVOQUJMRShTQ1JJUFRFRF9TUEVF
Q0gpCisKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgU3BlZWNoUmVjb2duaXRpb25F
cnJvciA6IHB1YmxpYyBSZWZDb3VudGVkPFNwZWVjaFJlY29nbml0aW9uRXJyb3I+IHsKK3B1Ymxp
YzoKKyAgICBlbnVtIENvZGUgeworICAgICAgICBPVEhFUiA9IDAsCisgICAgICAgIE5PX1NQRUVD
SCA9IDEsCisgICAgICAgIEFCT1JURUQgPSAyLAorICAgICAgICBBVURJT19DQVBUVVJFID0gMywK
KyAgICAgICAgTkVUV09SSyA9IDQsCisgICAgICAgIE5PVF9BTExPV0VEID0gNSwKKyAgICAgICAg
U0VSVklDRV9OT1RfQUxMT1dFRCA9IDYsCisgICAgICAgIEJBRF9HUkFNTUFSID0gNywKKyAgICAg
ICAgTEFOR1VBR0VfTk9UX1NVUFBPUlRFRCA9IDgKKyAgICB9OworCisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8U3BlZWNoUmVjb2duaXRpb25FcnJvcj4gY3JlYXRlKENvZGUsIGNvbnN0IFN0cmluZyYp
OworCisgICAgQ29kZSBjb2RlKCkgeyByZXR1cm4gbV9jb2RlOyB9CisgICAgY29uc3QgU3RyaW5n
JiBtZXNzYWdlKCkgeyByZXR1cm4gbV9tZXNzYWdlOyB9CisKK3ByaXZhdGU6CisgICAgU3BlZWNo
UmVjb2duaXRpb25FcnJvcihDb2RlLCBjb25zdCBTdHJpbmcmKTsKKworICAgIENvZGUgbV9jb2Rl
OworICAgIFN0cmluZyBtX21lc3NhZ2U7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQorCisjZW5kaWYgLy8gU3BlZWNoUmVj
b2duaXRpb25FcnJvcl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVj
aC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Bl
ZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM5ZWNiMWQwYTdhZmYx
NGRkZTFjNzcyNmI3ODNiZWQ2ZTNkMGZhZTYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hSZWNvZ25pdGlvbkVycm9yLmlkbApAQCAtMCwwICsx
LDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUgeworICAgIGludGVyZmFjZSBbCisgICAgICAg
IENvbmRpdGlvbmFsPVNDUklQVEVEX1NQRUVDSAorICAgIF0gU3BlZWNoUmVjb2duaXRpb25FcnJv
ciB7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE9USEVSID0gMDsKKyAgICAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgTk9fU1BFRUNIID0gMTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQg
c2hvcnQgQUJPUlRFRCA9IDI7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IEFVRElPX0NB
UFRVUkUgPSAzOworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBORVRXT1JLID0gNDsKKyAg
ICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9UX0FMTE9XRUQgPSA1OworICAgICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBTRVJWSUNFX05PVF9BTExPV0VEID0gNjsKKyAgICAgICAgY29uc3Qg
dW5zaWduZWQgc2hvcnQgQkFEX0dSQU1NQVIgPSA3OworICAgICAgICBjb25zdCB1bnNpZ25lZCBz
aG9ydCBMQU5HVUFHRV9OT1RfU1VQUE9SVEVEID0gODsKKworICAgICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgc2hvcnQgY29kZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBtZXNzYWdlOworICAgIH07Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNv
cmUuZ3lwCmluZGV4IGUxZTY5Y2I0YTgxNjFmMzZjZDcyN2E3NWU3ODRkMWY4MmVlOWEyMzEuLmU4
YjI5YmMyNjI0MTA5ZGI4MDI2M2MzZDdhNDAzZGQ4NWE5ZmY4NmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC01Niw2ICs1Niw3IEBACiAgICAgICAnLi4vTW9kdWxl
cy9pbnRlbnRzJywKICAgICAgICcuLi9Nb2R1bGVzL2luZGV4ZWRkYicsCiAgICAgICAnLi4vTW9k
dWxlcy9tZWRpYXN0cmVhbScsCisgICAgICAnLi4vTW9kdWxlcy9zcGVlY2gnLAogICAgICAgJy4u
L01vZHVsZXMvd2ViZGF0YWJhc2UnLAogICAgICAgJy4uL01vZHVsZXMvd2ViZGF0YWJhc2UvY2hy
b21pdW0nLAogICAgICAgJy4uL01vZHVsZXMvd2Vic29ja2V0cycsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5k
ZXggZDc0NjY0OTAyMDExZmJjNTRjMDA3YjdkYTNmNjJjZmY3ZTdmZTg3Zi4uZGY3OGNlOTg0ZGFm
NWI3NmQ3MjcyZmM4ZDhiNmVlMWNjMTY1Zjg1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNzYzLDYg
Kzc2Myw4IEBACiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRpYXN0cmVhbS9OYXZpZ2F0b3JVc2Vy
TWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL21lZGlhc3Ry
ZWFtL1BlZXJDb25uZWN0aW9uLmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy9tZWRpYXN0cmVh
bS9TaWduYWxpbmdDYWxsYmFjay5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3BlZWNoL0RP
TVdpbmRvd1NwZWVjaC5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvc3BlZWNoL1NwZWVjaFJl
Y29nbml0aW9uRXJyb3IuaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3dlYmRhdGFiYXNlL0RP
TVdpbmRvd1NRTERhdGFiYXNlLmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy93ZWJkYXRhYmFz
ZS9EYXRhYmFzZS5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJh
c2VDYWxsYmFjay5pZGwnLApAQCAtMTQwMiw2ICsxNDA0LDggQEAKICAgICAgICAgICAgICdNb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYUNvbnRyb2xsZXIuY3BwJywKICAgICAgICAgICAgICdN
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwJywKICAgICAgICAgICAgICdN
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaCcsCisgICAgICAgICAgICAnTW9k
dWxlcy9zcGVlY2gvU3BlZWNoUmVjb2duaXRpb25FcnJvci5jcHAnLAorICAgICAgICAgICAgJ01v
ZHVsZXMvc3BlZWNoL1NwZWVjaFJlY29nbml0aW9uRXJyb3IuaCcsCiAgICAgICAgICAgICAnTW9k
dWxlcy93ZWJkYXRhYmFzZS9BYnN0cmFjdERhdGFiYXNlLmNwcCcsCiAgICAgICAgICAgICAnTW9k
dWxlcy93ZWJkYXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAnLAogICAgICAgICAgICAg
J01vZHVsZXMvd2ViZGF0YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaCcsCmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMjY1NDg3ZjNiZTFmMDAw
YjQ0MjdhYjAxZjkzMDU2ZTM4NGVlZDA1ZS4uNDdhMTBlMDBkNjg4ZjllNGUwMDQwYTgxNjc0NDUy
Njk2MGZkNjgzZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTAzLTA2ICBIYW5zIFdlbm5ib3JnICA8aGFuc0Bj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3JpcHQgQVBJOiBhZGQgU3BlZWNo
UmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBDaHJvbWl1bTogZW5hYmxlIHRoZSBydW50aW1lIGZs
YWcgZm9yIHNjcmlwdGVkIHNwZWVjaCBzbyB3ZSBjYW4gcnVuCisgICAgICAgIHRoZSBsYXlvdXQg
dGVzdHMgZm9yIGl0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcDoKKyAgICAgICAg
KFRlc3RTaGVsbDo6VGVzdFNoZWxsKToKKwogMjAxMi0wMy0wNiAgVG9yIEFybmUgVmVzdGLDuCAg
PHRvci5hcm5lLnZlc3Rib0Bub2tpYS5jb20+CiAKICAgICAgICAgW1F0XSBSZXZlcnQgcjEwOTkw
MCwgaXQgd2FzIGNvbXBsZXRseSBidXN0ZWQKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9UZXN0U2hlbGwuY3BwCmluZGV4IGMxNzVmZGE5OTUyYTIzMWY4ZjExYzNiOGIyNGNjNTdjNjFi
ZmUyMGYuLjkyOGYyNzczZDk3OTRjNTUyODUzMjJjYTViODBiZGRiMGZmYjFmOTEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcApAQCAtMTMwLDYgKzEzMCw3
IEBAIFRlc3RTaGVsbDo6VGVzdFNoZWxsKGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBXZWJSdW50
aW1lRmVhdHVyZXM6OmVuYWJsZUdhbWVwYWQodHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVz
OjplbmFibGVTaGFkb3dET00odHJ1ZSk7CiAgICAgV2ViUnVudGltZUZlYXR1cmVzOjplbmFibGVT
dHlsZVNjb3BlZCh0cnVlKTsKKyAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJsZVNjcmlwdGVk
U3BlZWNoKHRydWUpOwogCiAgICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQ
ZXJtaXNzaW9ucyh0aGlzKSk7CiAgICAgbV9hY2Nlc3NpYmlsaXR5Q29udHJvbGxlciA9IGFkb3B0
UHRyKG5ldyBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcih0aGlzKSk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNDI1ZGQ5MTNj
ZGM1M2ViNDc1OTM3ZjhjNmNlZmUyZjAyYTdmODcxMi4uZmEwYTRjNTllN2M2MGJkMzU2ODM1MmM0
MWM4NTJkMWRmODUwMTk0YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAzLTA2ICBIYW5z
IFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgU3BlZWNoIEphdmFTY3Jp
cHQgQVBJOiBhZGQgU3BlZWNoUmVjb2duaXRpb25FcnJvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0MTAKKworICAgICAgICBBZGQgYSB0ZXN0IGZv
ciBTcGVlY2hSZWNvZ25pdGlvbkVycm9yLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZmFzdC9zcGVlY2gvc2NyaXB0ZWQvc3BlZWNocmVjb2duaXRp
b25lcnJvci1iYXNpY3MuaHRtbDogQWRkZWQuCisKIDIwMTItMDMtMDYgIFBhdmVsIFBvZGl2aWxv
diAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcHJl
cGFyZSBmb3IgZXh0cmFjdGluZyBTY3JpcHRNYXBwaW5nIGltcGxlbWVudGF0aW9uIGZyb20gRGVi
dWdnZXJQcmVzZW50YXRpb25Nb2RlbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3Bl
ZWNoL3NjcmlwdGVkL3NwZWVjaHJlY29nbml0aW9uZXJyb3ItYmFzaWNzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoL3NjcmlwdGVkL3NwZWVjaHJlY29nbml0aW9uZXJyb3It
YmFzaWNzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OWQyZGYxYWIxZmRiMGMzZmNkNDZhYmQy
NTk3YWJkN2NjZWI3Yjg0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zcGVl
Y2gvc2NyaXB0ZWQvc3BlZWNocmVjb2duaXRpb25lcnJvci1iYXNpY3MtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMjAgQEAKK1Rlc3RzIHRoZSBiYXNpY3Mgb2YgdGhlIFNwZWVjaFJlY29nbml0aW9u
RXJyb3IgaW50ZXJmYWNlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTICd3
ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yJyBpbiB3aW5kb3cgaXMgdHJ1ZQorUEFTUyB3ZWJr
aXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yID09IG51bGwgaXMgZmFsc2UKK1BBU1Mgd2Via2l0U3Bl
ZWNoUmVjb2duaXRpb25FcnJvci5PVEhFUiBpcyAwCitQQVNTIHdlYmtpdFNwZWVjaFJlY29nbml0
aW9uRXJyb3IuTk9fU1BFRUNIIGlzIDEKK1BBU1Mgd2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJv
ci5BQk9SVEVEIGlzIDIKK1BBU1Mgd2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5BVURJT19D
QVBUVVJFIGlzIDMKK1BBU1Mgd2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5ORVRXT1JLIGlz
IDQKK1BBU1Mgd2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5OT1RfQUxMT1dFRCBpcyA1CitQ
QVNTIHdlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuU0VSVklDRV9OT1RfQUxMT1dFRCBpcyA2
CitQQVNTIHdlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuQkFEX0dSQU1NQVIgaXMgNworUEFT
UyB3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yLkxBTkdVQUdFX05PVF9TVVBQT1JURUQgaXMg
OAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoL3NjcmlwdGVkL3NwZWVjaHJlY29nbml0
aW9uZXJyb3ItYmFzaWNzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NwZWVjaC9zY3JpcHRlZC9z
cGVlY2hyZWNvZ25pdGlvbmVycm9yLWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmOTY4YmQ5N2Nm
NDFlODhkZDVjY2YwMWFkMTBhZGI3MDc5OWRhNzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NwZWVjaC9zY3JpcHRlZC9zcGVlY2hyZWNvZ25pdGlvbmVycm9yLWJhc2ljcy5o
dG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oJ1Rlc3RzIHRoZSBiYXNpY3Mgb2Yg
dGhlIFNwZWVjaFJlY29nbml0aW9uRXJyb3IgaW50ZXJmYWNlJyk7CisKK2Z1bmN0aW9uIHJ1bigp
IHsKKyAgICAvLyBDaGVjayBhdmFpbGFiaWxpdHkgb2YgY29uc3RydWN0b3IuCisgICAgc2hvdWxk
QmVUcnVlKCInd2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvcicgaW4gd2luZG93Iik7CisgICAg
c2hvdWxkQmVGYWxzZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvciA9PSBudWxsIik7CisK
KyAgICAvLyBDaGVjayBmb3IgbWVtYmVycyBvZiBTcGVlY2hSZWNvZ25pdGlvbkVycm9yLgorICAg
IHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yLk9USEVSIiwgIjAiKTsKKyAg
ICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5OT19TUEVFQ0giLCAiMSIp
OworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yLkFCT1JURUQiLCAi
MiIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9yLkFVRElPX0NB
UFRVUkUiLCAiMyIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVycm9y
Lk5FVFdPUksiLCAiNCIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbkVy
cm9yLk5PVF9BTExPV0VEIiwgIjUiKTsKKyAgICBzaG91bGRCZSgid2Via2l0U3BlZWNoUmVjb2du
aXRpb25FcnJvci5TRVJWSUNFX05PVF9BTExPV0VEIiwgIjYiKTsKKyAgICBzaG91bGRCZSgid2Vi
a2l0U3BlZWNoUmVjb2duaXRpb25FcnJvci5CQURfR1JBTU1BUiIsICI3Iik7CisgICAgc2hvdWxk
QmUoIndlYmtpdFNwZWVjaFJlY29nbml0aW9uRXJyb3IuTEFOR1VBR0VfTk9UX1NVUFBPUlRFRCIs
ICI4Iik7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKword2luZG93Lm9ubG9hZCA9IHJ1bjsK
K3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>