<?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>95664</bug_id>
          
          <creation_ts>2012-09-02 21:38:42 -0700</creation_ts>
          <short_desc>[Shadow DOM] should be able to be available without &lt;style scoped&gt;</short_desc>
          <delta_ts>2012-10-10 18:00:43 -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>DOM</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>
          <dependson>96315</dependson>
    
    <dependson>98244</dependson>
    
    <dependson>98842</dependson>
          <blocked>94082</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hajime Morrita">morrita</reporter>
          <assigned_to name="Hajime Morrita">morrita</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>dominicc</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>710403</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-02 21:38:42 -0700</bug_when>
    <thetext>Since styling for Shadow DOM relies on scoped stylesheet internal implementation,
Shadow DOM want it even when &lt;style scoped&gt; is disabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>710526</commentid>
    <comment_count>1</comment_count>
      <attachid>161892</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-03 03:23:25 -0700</bug_when>
    <thetext>Created attachment 161892
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>712919</commentid>
    <comment_count>2</comment_count>
      <attachid>162425</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-05 23:19:43 -0700</bug_when>
    <thetext>Created attachment 162425
Updated to ToT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716639</commentid>
    <comment_count>3</comment_count>
      <attachid>162425</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-10 16:14:01 -0700</bug_when>
    <thetext>Comment on attachment 162425
Updated to ToT

Dimitri, do you think we need this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716643</commentid>
    <comment_count>4</comment_count>
      <attachid>162425</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-09-10 16:16:14 -0700</bug_when>
    <thetext>Comment on attachment 162425
Updated to ToT

No, not at the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>720815</commentid>
    <comment_count>5</comment_count>
      <attachid>164165</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-14 08:56:43 -0700</bug_when>
    <thetext>Created attachment 164165
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>722240</commentid>
    <comment_count>6</comment_count>
      <attachid>164165</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-09-17 13:52:39 -0700</bug_when>
    <thetext>Comment on attachment 164165
Patch

What should be available without scoped style element?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>722426</commentid>
    <comment_count>7</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-17 19:30:47 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 164165 [details])
&gt; What should be available without scoped style element?
Style scoping using ShadowRoot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725064</commentid>
    <comment_count>8</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-09-20 18:44:08 -0700</bug_when>
    <thetext>*** Bug 92053 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738510</commentid>
    <comment_count>9</comment_count>
      <attachid>167914</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-09 21:37:02 -0700</bug_when>
    <thetext>Created attachment 167914
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738517</commentid>
    <comment_count>10</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-10-09 21:41:55 -0700</bug_when>
    <thetext>This one is ready!

I hope I could eliminated more guards. But scope related code in css/ isn&apos;t cleanly separated
from StyleResolver yet, that makes me hesitate to eliminate these flags.

I&apos;m thinking about how we could refactor it, but I&apos;d like to land this before further refactoring
so that we can make sure the styling feature to be available for Shadow DOM regardless of
&lt;style scoped&gt; availability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739453</commentid>
    <comment_count>11</comment_count>
      <attachid>167914</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-10 18:00:38 -0700</bug_when>
    <thetext>Comment on attachment 167914
Patch

Clearing flags on attachment: 167914

Committed r130987: &lt;http://trac.webkit.org/changeset/130987&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739454</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-10 18:00:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>161892</attachid>
            <date>2012-09-03 03:23:25 -0700</date>
            <delta_ts>2012-09-05 23:19:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95664-20120903192309.patch</filename>
            <type>text/plain</type>
            <size>12159</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3NDAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2IzMzViYjhiN2MxNGQx
M2Y4NGFkNWQzYTUwNmUzNzBkZjhhZjA4Ny4uMzllNmQwZmZhNzUxYzExOThjNDcyMjY2YjhiMWQy
MzQ3YjY1NDM5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTAzICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cgRE9NXSBz
aG91bGQgYmUgYWJsZSB0byBiZSBhdmFpbGFibGUgd2l0aG91dCA8c3R5bGUgc2NvcGVkPgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBz
cHJheXMgc3R5bGVTY29wZWRFbmFibGVkKCkgZ3VhcmRzIGFyb3VuZCB0aGUgInNjb3BlZCIgYXR0
cmlidXRlIGhhbmRsaW5nLAorICAgICAgICBhbmQgcmVtb3ZlcyBleGlzdGluZyBndWFyZHMgd2hp
Y2ggYXJlIGRpcmVjdGx5IGNvbnRyb2xsaW5nIHRoZSBzY29waW5nIG5vZGUgcmVzb2x1dGlvbi4K
KworICAgICAgICBUZXN0OiBmYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVk
Lmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUmVzb2x2ZXI6OmRldGVybWluZVNjb3BlKToKKyAgICAgICAgKiBodG1sL0hUTUxT
dHlsZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6cGFy
c2VBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6c2NvcGVk
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVtZW50Ojpy
ZWdpc3RlcldpdGhTY29waW5nTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVt
ZW50Ojp1bnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxT
dHlsZUVsZW1lbnQ6OnNjb3BlZCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3Vw
KToKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFN0eWxlU2NvcGVkRW5h
YmxlZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0
dGluZ3MuaDoKKyAgICAgICAgKEJhY2t1cCk6CisgICAgICAgIChJbnRlcm5hbFNldHRpbmdzKToK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEyLTA5LTAyICBZ
b3NoaWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Zvcm1zXSBF
bXB0eSB2aXNpYmxlIHZhbHVlIG9mIEFNL1BNIGZpZWxkIG9mIG11bHRpcGxlIGZpZWxkcyB0aW1l
IGlucHV0IFVJIHNob3VsZCBkaXNwbGF5IHZhcmlhYmxlIG51bWJlciBvZiAiLSIgYmFzZWQgb24g
bWF4aW11bSBudW1iZXIgb2YgbGFiZWxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAK
aW5kZXggMzk1ZTRkOTAwMjhlZjYwZTM3MmRlNzFhY2I3OGUyZDgxY2FkZjNmNi4uMzYxYjJmNGJm
MTIxOGMxMzk4OTg2ZTE2NTE2NjZjZDY0ZGQ3MTQxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJl
c29sdmVyLmNwcApAQCAtNTEzLDkgKzUxMyw2IEBAIGNvbnN0IENvbnRhaW5lck5vZGUqIFN0eWxl
UmVzb2x2ZXI6OmRldGVybWluZVNjb3BlKGNvbnN0IENTU1N0eWxlU2hlZXQqIHNoZWV0KQogewog
ICAgIEFTU0VSVChzaGVldCk7CiAKLSAgICBpZiAoIUNvbnRleHRGZWF0dXJlczo6c3R5bGVTY29w
ZWRFbmFibGVkKGRvY3VtZW50KCkpKQotICAgICAgICByZXR1cm4gMDsKLQogICAgIE5vZGUqIG93
bmVyTm9kZSA9IHNoZWV0LT5vd25lck5vZGUoKTsKICAgICBpZiAoIW93bmVyTm9kZSB8fCAhb3du
ZXJOb2RlLT5pc0hUTUxFbGVtZW50KCkgfHwgIW93bmVyTm9kZS0+aGFzVGFnTmFtZShIVE1MTmFt
ZXM6OnN0eWxlVGFnKSkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U3R5bGVFbGVtZW50LmNwcAppbmRleCAyNjk5MGE1ZGYyODRhOTdjNmEyNDFmNWM3MGEyOGViOGQ4
NzdlOTE4Li4wYzJiNWQ1Yzc1ZTQzYjJmNGIxNWIwYzdlMzU4MGNkY2M2ZDFkYjVjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgdm9p
ZCBIVE1MU3R5bGVFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmIGF0dHJp
YnV0ZSkKICAgICBlbHNlIGlmIChhdHRyaWJ1dGUubmFtZSgpID09IG9uZXJyb3JBdHRyKQogICAg
ICAgICBzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBj
cmVhdGVBdHRyaWJ1dGVFdmVudExpc3RlbmVyKHRoaXMsIGF0dHJpYnV0ZSkpOwogI2lmIEVOQUJM
RShTVFlMRV9TQ09QRUQpCi0gICAgZWxzZSBpZiAoYXR0cmlidXRlLm5hbWUoKSA9PSBzY29wZWRB
dHRyKQorICAgIGVsc2UgaWYgKGF0dHJpYnV0ZS5uYW1lKCkgPT0gc2NvcGVkQXR0ciAmJiBDb250
ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKSkKICAgICAgICAgc2Nv
cGVkQXR0cmlidXRlQ2hhbmdlZCghYXR0cmlidXRlLmlzTnVsbCgpKTsKICNlbmRpZgogICAgIGVs
c2UKQEAgLTkwLDYgKzkwLDggQEAgdm9pZCBIVE1MU3R5bGVFbGVtZW50OjpwYXJzZUF0dHJpYnV0
ZShjb25zdCBBdHRyaWJ1dGUmIGF0dHJpYnV0ZSkKICNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQog
dm9pZCBIVE1MU3R5bGVFbGVtZW50OjpzY29wZWRBdHRyaWJ1dGVDaGFuZ2VkKGJvb2wgc2NvcGVk
KQogeworICAgIEFTU0VSVChDb250ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1
bWVudCgpKSk7CisKICAgICBpZiAoIWluRG9jdW1lbnQoKSkKICAgICAgICAgcmV0dXJuOwogCkBA
IC0xMzEsOSArMTMzLDYgQEAgdm9pZCBIVE1MU3R5bGVFbGVtZW50OjpyZWdpc3RlcldpdGhTY29w
aW5nTm9kZShib29sIHNjb3BlZCkKICAgICBBU1NFUlQoaW5Eb2N1bWVudCgpKTsKICAgICBpZiAo
bV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlICE9IE5vdFJlZ2lzdGVyZWQpCiAgICAgICAg
IHJldHVybjsKLSAgICBpZiAoIUNvbnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKGRv
Y3VtZW50KCkpKQotICAgICAgICByZXR1cm47Ci0KICAgICBDb250YWluZXJOb2RlKiBzY29wZSA9
IHNjb3BlZCA/IHBhcmVudE5vZGUoKSA6IHNoYWRvd1Jvb3QoKTsKICAgICBpZiAoIXNjb3BlKQog
ICAgICAgICByZXR1cm47CkBAIC0xNTYsMTIgKzE1NSw4IEBAIHZvaWQgSFRNTFN0eWxlRWxlbWVu
dDo6dW5yZWdpc3RlcldpdGhTY29waW5nTm9kZShDb250YWluZXJOb2RlKiBzY29wZSkKIHsKICAg
ICAvLyBOb3RlOiBXZSBjYW5ub3QgcmVseSBvbiB0aGUgJ3Njb3BlZCcgZWxlbWVudCBzdGlsbCBi
ZWluZyBwcmVzZW50IHdoZW4gdGhpcyBtZXRob2QgaXMgaW52b2tlZC4KICAgICAvLyBUaGVyZWZv
cmUgd2UgY2Fubm90IHJlbHkgb24gc2NvcGVkKCkhCi0gICAgQVNTRVJUKG1fc2NvcGVkU3R5bGVS
ZWdpc3RyYXRpb25TdGF0ZSAhPSBOb3RSZWdpc3RlcmVkIHx8ICFDb250ZXh0RmVhdHVyZXM6OnN0
eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKSk7CiAgICAgaWYgKG1fc2NvcGVkU3R5bGVSZWdp
c3RyYXRpb25TdGF0ZSA9PSBOb3RSZWdpc3RlcmVkKQogICAgICAgICByZXR1cm47Ci0gICAgaWYg
KCFDb250ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKSkKLSAgICAg
ICAgcmV0dXJuOwotCiAgICAgQVNTRVJUKHNjb3BlKTsKICAgICBpZiAoc2NvcGUpIHsKICAgICAg
ICAgQVNTRVJUKHNjb3BlLT5oYXNTY29wZWRIVE1MU3R5bGVDaGlsZCgpKTsKQEAgLTIzMyw3ICsy
MjgsNyBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxTdHlsZUVsZW1lbnQ6OnR5cGUoKSBjb25z
dAogI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCiBib29sIEhUTUxTdHlsZUVsZW1lbnQ6OnNjb3Bl
ZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGZhc3RIYXNBdHRyaWJ1dGUoc2NvcGVkQXR0cik7Cisg
ICAgcmV0dXJuIENvbnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkp
ICYmIGZhc3RIYXNBdHRyaWJ1dGUoc2NvcGVkQXR0cik7CiB9CiAKIHZvaWQgSFRNTFN0eWxlRWxl
bWVudDo6c2V0U2NvcGVkKGJvb2wgc2NvcGVkVmFsdWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmNwcAppbmRleCBjZDY3Mzk4MmMwNjI4YTk1ZDY4YWVjODM2ZjI1
NjJjNmYwMmE5MDc3Li4zOWZkOGI3MTQzZjU1N2Y2YmZiMDRiNzA2ZGRjYjI3OGFmMjY5NWM0IDEw
MDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKQEAgLTc5LDYg
Kzc5LDkgQEAgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXAoUGFnZSogcGFnZSwgU2V0
dGluZ3MqIHNldHRpbmdzKQogICAgICwgbV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKQogICAgICwgbV9vcmlnaW5hbEF1
dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OmF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKCkpCiAjZW5kaWYKKyNpZiBFTkFC
TEUoU1RZTEVfU0NPUEVEKQorICAgICwgbV9vcmlnaW5hbFN0eWxlU2NvcGVkKFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZCgpKQorI2VuZGlmCiAgICAgLCBtX29yaWdp
bmFsRWRpdGluZ0JlaGF2aW9yKHNldHRpbmdzLT5lZGl0aW5nQmVoYXZpb3JUeXBlKCkpCiAgICAg
LCBtX29yaWdpbmFsRml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoc2V0dGluZ3Mt
PmZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KCkpCiAgICAgLCBtX29yaWdpbmFs
U3luY1hIUkluRG9jdW1lbnRzRW5hYmxlZChzZXR0aW5ncy0+c3luY1hIUkluRG9jdW1lbnRzRW5h
YmxlZCgpKQpAQCAtMTEwLDYgKzExMyw5IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6QmFja3Vw
OjpyZXN0b3JlVG8oUGFnZSogcGFnZSwgU2V0dGluZ3MqIHNldHRpbmdzKQogICAgIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFNoYWRvd0RPTUVuYWJsZWQobV9vcmlnaW5hbFNoYWRvd0RPTUVu
YWJsZWQpOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldEF1dGhvclNoYWRvd0RPTUZv
ckFueUVsZW1lbnRFbmFibGVkKG1fb3JpZ2luYWxBdXRob3JTaGFkb3dET01Gb3JBbnlFbGVtZW50
RW5hYmxlZCk7CiAjZW5kaWYKKyNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQorICAgIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNldFN0eWxlU2NvcGVkRW5hYmxlZChtX29yaWdpbmFsU3R5bGVTY29w
ZWQpOworI2VuZGlmCiAgICAgc2V0dGluZ3MtPnNldEVkaXRpbmdCZWhhdmlvclR5cGUobV9vcmln
aW5hbEVkaXRpbmdCZWhhdmlvcik7CiAgICAgc2V0dGluZ3MtPnNldEZpeGVkUG9zaXRpb25DcmVh
dGVzU3RhY2tpbmdDb250ZXh0KG1fb3JpZ2luYWxGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5n
Q29udGV4dCk7CiAgICAgc2V0dGluZ3MtPnNldFN5bmNYSFJJbkRvY3VtZW50c0VuYWJsZWQobV9v
cmlnaW5hbFN5bmNYSFJJbkRvY3VtZW50c0VuYWJsZWQpOwpAQCAtMjg4LDYgKzI5NCwxNSBAQCB2
b2lkIEludGVybmFsU2V0dGluZ3M6OnNldEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFi
bGVkKGJvb2wgaXNFbmFibGVkKQogI2VuZGlmCiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5nczo6
c2V0U3R5bGVTY29wZWRFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyNpZiBFTkFCTEUoU1RZTEVf
U0NPUEVEKQorICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFN0eWxlU2NvcGVkRW5hYmxl
ZChlbmFibGVkKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVuYWJsZWQpOworI2VuZGlmCit9
CisKIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0VG91Y2hFdmVudEVtdWxhdGlvbkVuYWJsZWQo
Ym9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICNpZiBFTkFCTEUoVE9VQ0hfRVZF
TlRTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAppbmRleCBjZmFl
OTRmYmIyZTdkM2MyMTA1MmIwOWU4YzdjNzcyZDJjOTZlYjFkLi5kOWZiNTUzNjIyYjVmOTk3ZDdh
MDVlZDg2NDU3ZTEyOWIwZDhhMzc3IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFsU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaApAQCAtNjEsNiArNjEsOSBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgbV9vcmln
aW5hbFNoYWRvd0RPTUVuYWJsZWQ7CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbEF1dGhvclNoYWRv
d0RPTUZvckFueUVsZW1lbnRFbmFibGVkOwogI2VuZGlmCisjaWYgRU5BQkxFKFNUWUxFX1NDT1BF
RCkKKyAgICAgICAgYm9vbCBtX29yaWdpbmFsU3R5bGVTY29wZWQ7CisjZW5kaWYKICAgICAgICAg
RWRpdGluZ0JlaGF2aW9yVHlwZSBtX29yaWdpbmFsRWRpdGluZ0JlaGF2aW9yOwogICAgICAgICBi
b29sIG1fb3JpZ2luYWxGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dDsKICAgICAg
ICAgYm9vbCBtX29yaWdpbmFsU3luY1hIUkluRG9jdW1lbnRzRW5hYmxlZDsKQEAgLTEwOCw2ICsx
MTEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXREZXZpY2VTdXBwb3J0c01vdXNlKGJvb2wgZW5h
YmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChib29s
IGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEF1dGhvclNoYWRvd0RPTUZv
ckFueUVsZW1lbnRFbmFibGVkKGJvb2wpOworICAgIHZvaWQgc2V0U3R5bGVTY29wZWRFbmFibGVk
KGJvb2wpOwogICAgIHZvaWQgc2V0U3RhbmRhcmRGb250RmFtaWx5KGNvbnN0IFN0cmluZyYgZmFt
aWx5LCBjb25zdCBTdHJpbmcmIHNjcmlwdCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0
U2VyaWZGb250RmFtaWx5KGNvbnN0IFN0cmluZyYgZmFtaWx5LCBjb25zdCBTdHJpbmcmIHNjcmlw
dCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZhbWlseShjb25z
dCBTdHJpbmcmIGZhbWlseSwgY29uc3QgU3RyaW5nJiBzY3JpcHQsIEV4Y2VwdGlvbkNvZGUmKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IGI5Yzhm
M2ViZjYzYTRmNjcwNjczYjhjMjg0ZTgzYjM2NTdjYTdmYWYuLjFlZWI2MWRjOTA5MWViOGM1ZTNi
ZGU1NTMxMzYxY2FjMzVkYjlmOTEgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxTZXR0aW5ncy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bFNldHRpbmdzLmlkbApAQCAtNDUsNiArNDUsNyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAg
dm9pZCBzZXREZXZpY2VTdXBwb3J0c01vdXNlKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERP
TUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChpbiBib29sZWFu
IGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldEF1dGhvclNo
YWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKGluIGJvb2xlYW4gaXNFbmFibGVkKTsKKyAgICAg
ICAgdm9pZCBzZXRTdHlsZVNjb3BlZEVuYWJsZWQoaW4gYm9vbGVhbiBpc0VuYWJsZWQpOwogICAg
ICAgICB2b2lkIHNldFN0YW5kYXJkRm9udEZhbWlseShpbiBET01TdHJpbmcgZmFtaWx5LCBpbiBE
T01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRT
ZXJpZkZvbnRGYW1pbHkoaW4gRE9NU3RyaW5nIGZhbWlseSwgaW4gRE9NU3RyaW5nIHNjcmlwdCkg
cmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZhbWls
eShpbiBET01TdHJpbmcgZmFtaWx5LCBpbiBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCAzNmNjNTNjZGMwNDRkYmUxYmM3Y2M2OGIwY2EzNWI5MmYwZDc0YTA0
Li5jYTdiYzRmYTI4Mjc3YjAwYTBlYWU2YjJiMGZlODQ3ZDMyZThlYTFkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTItMDktMDMgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+
CisKKyAgICAgICAgW1NoYWRvdyBET01dIHNob3VsZCBiZSBhYmxlIHRvIGJlIGF2YWlsYWJsZSB3
aXRob3V0IDxzdHlsZSBzY29wZWQ+CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD05NTY2NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29w
ZWQtbm90LWVuYWJsZWQuaHRtbDogQWRkZWQuCisKIDIwMTItMDktMDMgIENocmlzdG9waGUgRHVt
ZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBVcGRhdGUg
VGVzdEV4cGVjdGF0aW9ucyBmb3IgMiBmYXN0L2Jsb2NrIHRlc3RzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJs
ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM1Y2IwNWQyYmEwODIyYzE4YzNhYzk2NzBlOTk5
OWY3ZTM4OTQwODYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFk
b3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2IEBA
CitUaGlzIHRlc3QgZW5zdXJlcyBjb250ZW50IGVsZW1lbnQgZmVhdHVyZSBjYW4gYmUgZGlzYWJs
ZWQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoc2hvdWxkQmVBcHBsaWVkKS5jb2xvciBpcyAncmdiKDAsIDAsIDI1NSknCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNob3VsZE5vdEJlQXBwbGllZCkuY29sb3IgaXMgJ3Jn
YigwLCAwLCAwKScKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5zaWRlU2NvcGUpLmNv
bG9yIGlzICdyZ2IoMjU1LCAwLCAwKScKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hv
dWxkTm90QmVTY29wZWQpLmNvbG9yIGlzICdyZ2IoMjU1LCAwLCAwKScKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorU2hvdWxkIG5vdCBiZSBibHVlCitT
aG91bGQgYmUgcmVkCisKK1Nob3VsZCBiZSByZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJsZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJsZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45NWJiOTI3YTVlODM5ZmY4NWQ3NmI0ZmFiNjBiMmI4ZGI0YTAyNzY0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxl
ZC5odG1sCkBAIC0wLDAgKzEsMzUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIHdpbmRvdy5pbnRlcm5hbHMu
c2V0dGluZ3Muc2V0U3R5bGVTY29wZWRFbmFibGVkKGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8ZGl2IGlkPSJob3N0Ij48L2Rpdj4KKzxzcGFuIGlkPSdzaG91bGROb3RCZUFw
cGxpZWQnPlNob3VsZCBub3QgYmUgYmx1ZTwvc3Bhbj4KKzxkaXY+CisgIDxzdHlsZSBzY29wZWQ+
IHAgeyBjb2xvcjogcmVkOyB9IDwvc3R5bGU+CisgIDxwIGlkPSdpbnNpZGVTY29wZSc+U2hvdWxk
IGJlIHJlZDwvcD4KKzwvZGl2PgorPHAgaWQ9J3Nob3VsZE5vdEJlU2NvcGVkJz5TaG91bGQgYmUg
cmVkPC9wPgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyBjb250ZW50
IGVsZW1lbnQgZmVhdHVyZSBjYW4gYmUgZGlzYWJsZWQiKTsKK3ZhciBob3N0ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImhvc3QiKTsKK3ZhciBzaGFkb3cgPSBuZXcgV2ViS2l0U2hhZG93Um9v
dChob3N0KTsKK3NoYWRvdy5pbm5lckhUTUwgPSAiPHN0eWxlPiBzcGFuIHsgY29sb3I6IGJsdWU7
IH0gPC9zdHlsZT48c3BhbiBpZD0nc2hvdWxkQmVBcHBsaWVkJz5TaG91bGQgYmUgYmx1ZTwvc3Bh
bj4iOwordmFyIHNob3VsZEJlQXBwbGllZCA9IHNoYWRvdy5nZXRFbGVtZW50QnlJZCgic2hvdWxk
QmVBcHBsaWVkIik7Cit2YXIgc2hvdWxkTm90QmVBcHBsaWVkID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInNob3VsZE5vdEJlQXBwbGllZCIpOwordmFyIHNob3VsZE5vdEJlU2NvcGVkID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNob3VsZE5vdEJlU2NvcGVkIik7Cit2YXIgaW5zaWRlU2Nv
cGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5zaWRlU2NvcGUiKTsKK3Nob3VsZEJlKCJ3
aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzaG91bGRCZUFwcGxpZWQpLmNvbG9yIiwgIidyZ2IoMCwg
MCwgMjU1KSciKTsKK3Nob3VsZEJlKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzaG91bGROb3RC
ZUFwcGxpZWQpLmNvbG9yIiwgIidyZ2IoMCwgMCwgMCknIik7CitzaG91bGRCZSgid2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoaW5zaWRlU2NvcGUpLmNvbG9yIiwgIidyZ2IoMjU1LCAwLCAwKSciKTsK
K3Nob3VsZEJlKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzaG91bGROb3RCZVNjb3BlZCkuY29s
b3IiLCAiJ3JnYigyNTUsIDAsIDApJyIpOworZmluaXNoSlNUZXN0KCk7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162425</attachid>
            <date>2012-09-05 23:19:43 -0700</date>
            <delta_ts>2012-09-14 08:56:39 -0700</delta_ts>
            <desc>Updated to ToT</desc>
            <filename>bug-95664-20120906151924.patch</filename>
            <type>text/plain</type>
            <size>12073</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3Njk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWY2NGExNWYwODM4NWFk
YjM5OGE5OGZmMDBjNTJjYTFjZmZkN2EzNS4uZDk2YzkwYzkxZDlmMGRkNzk5OWFmNmQ0YWEyYjgx
ZmY3MDE1MWUyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTAzICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cgRE9NXSBz
aG91bGQgYmUgYWJsZSB0byBiZSBhdmFpbGFibGUgd2l0aG91dCA8c3R5bGUgc2NvcGVkPgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBz
cHJheXMgc3R5bGVTY29wZWRFbmFibGVkKCkgZ3VhcmRzIGFyb3VuZCB0aGUgInNjb3BlZCIgYXR0
cmlidXRlIGhhbmRsaW5nLAorICAgICAgICBhbmQgcmVtb3ZlcyBleGlzdGluZyBndWFyZHMgd2hp
Y2ggYXJlIGRpcmVjdGx5IGNvbnRyb2xsaW5nIHRoZSBzY29waW5nIG5vZGUgcmVzb2x1dGlvbi4K
KworICAgICAgICBUZXN0OiBmYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVk
Lmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUmVzb2x2ZXI6OmRldGVybWluZVNjb3BlKToKKyAgICAgICAgKiBodG1sL0hUTUxT
dHlsZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6cGFy
c2VBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6c2NvcGVk
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVtZW50Ojpy
ZWdpc3RlcldpdGhTY29waW5nTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVt
ZW50Ojp1bnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxT
dHlsZUVsZW1lbnQ6OnNjb3BlZCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3Vw
KToKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFN0eWxlU2NvcGVkRW5h
YmxlZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0
dGluZ3MuaDoKKyAgICAgICAgKEJhY2t1cCk6CisgICAgICAgIChJbnRlcm5hbFNldHRpbmdzKToK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEyLTA5LTA1ICBU
aW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3
ZWQ7IHJldmVydCBhIGNoYW5nZSB0byBTY3JvbGxpbmdUcmVlTm9kZU1hYyB3aGljaCBhY2NpZGVu
dGFsbHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCA3OGNjZmZhNWQxNGZh
OTQ3MWMxMjQ0MzFlMDU0OTg1NDRkNWE2NDMxLi43ZWNlZDkxNjA3MDIwNWVhMDZiY2VjZWZkYjE2
ZDUxODE2OWE2ZTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC01MTMs
OSArNTEzLDYgQEAgY29uc3QgQ29udGFpbmVyTm9kZSogU3R5bGVSZXNvbHZlcjo6ZGV0ZXJtaW5l
U2NvcGUoY29uc3QgQ1NTU3R5bGVTaGVldCogc2hlZXQpCiB7CiAgICAgQVNTRVJUKHNoZWV0KTsK
IAotICAgIGlmICghQ29udGV4dEZlYXR1cmVzOjpzdHlsZVNjb3BlZEVuYWJsZWQoZG9jdW1lbnQo
KSkpCi0gICAgICAgIHJldHVybiAwOwotCiAgICAgTm9kZSogb3duZXJOb2RlID0gc2hlZXQtPm93
bmVyTm9kZSgpOwogICAgIGlmICghb3duZXJOb2RlIHx8ICFvd25lck5vZGUtPmlzSFRNTEVsZW1l
bnQoKSB8fCAhb3duZXJOb2RlLT5oYXNUYWdOYW1lKEhUTUxOYW1lczo6c3R5bGVUYWcpKQogICAg
ICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxl
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwCmlu
ZGV4IDI2OTkwYTVkZjI4NGE5N2M2YTI0MWY1YzcwYTI4ZWI4ZDg3N2U5MTguLjBjMmI1ZDVjNzVl
NDNiMmY0YjE1YjBjN2UzNTgwY2RjYzZkMWRiNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U3R5bGVFbGVtZW50LmNwcApAQCAtODAsNyArODAsNyBAQCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6
OnBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYgYXR0cmlidXRlKQogICAgIGVsc2UgaWYg
KGF0dHJpYnV0ZS5uYW1lKCkgPT0gb25lcnJvckF0dHIpCiAgICAgICAgIHNldEF0dHJpYnV0ZUV2
ZW50TGlzdGVuZXIoZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGNyZWF0ZUF0dHJpYnV0ZUV2ZW50
TGlzdGVuZXIodGhpcywgYXR0cmlidXRlKSk7CiAjaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKLSAg
ICBlbHNlIGlmIChhdHRyaWJ1dGUubmFtZSgpID09IHNjb3BlZEF0dHIpCisgICAgZWxzZSBpZiAo
YXR0cmlidXRlLm5hbWUoKSA9PSBzY29wZWRBdHRyICYmIENvbnRleHRGZWF0dXJlczo6c3R5bGVT
Y29wZWRFbmFibGVkKGRvY3VtZW50KCkpKQogICAgICAgICBzY29wZWRBdHRyaWJ1dGVDaGFuZ2Vk
KCFhdHRyaWJ1dGUuaXNOdWxsKCkpOwogI2VuZGlmCiAgICAgZWxzZQpAQCAtOTAsNiArOTAsOCBA
QCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYg
YXR0cmlidXRlKQogI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCiB2b2lkIEhUTUxTdHlsZUVsZW1l
bnQ6OnNjb3BlZEF0dHJpYnV0ZUNoYW5nZWQoYm9vbCBzY29wZWQpCiB7CisgICAgQVNTRVJUKENv
bnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkpKTsKKwogICAgIGlm
ICghaW5Eb2N1bWVudCgpKQogICAgICAgICByZXR1cm47CiAKQEAgLTEzMSw5ICsxMzMsNiBAQCB2
b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKGJvb2wgc2NvcGVk
KQogICAgIEFTU0VSVChpbkRvY3VtZW50KCkpOwogICAgIGlmIChtX3Njb3BlZFN0eWxlUmVnaXN0
cmF0aW9uU3RhdGUgIT0gTm90UmVnaXN0ZXJlZCkKICAgICAgICAgcmV0dXJuOwotICAgIGlmICgh
Q29udGV4dEZlYXR1cmVzOjpzdHlsZVNjb3BlZEVuYWJsZWQoZG9jdW1lbnQoKSkpCi0gICAgICAg
IHJldHVybjsKLQogICAgIENvbnRhaW5lck5vZGUqIHNjb3BlID0gc2NvcGVkID8gcGFyZW50Tm9k
ZSgpIDogc2hhZG93Um9vdCgpOwogICAgIGlmICghc2NvcGUpCiAgICAgICAgIHJldHVybjsKQEAg
LTE1NiwxMiArMTU1LDggQEAgdm9pZCBIVE1MU3R5bGVFbGVtZW50Ojp1bnJlZ2lzdGVyV2l0aFNj
b3BpbmdOb2RlKENvbnRhaW5lck5vZGUqIHNjb3BlKQogewogICAgIC8vIE5vdGU6IFdlIGNhbm5v
dCByZWx5IG9uIHRoZSAnc2NvcGVkJyBlbGVtZW50IHN0aWxsIGJlaW5nIHByZXNlbnQgd2hlbiB0
aGlzIG1ldGhvZCBpcyBpbnZva2VkLgogICAgIC8vIFRoZXJlZm9yZSB3ZSBjYW5ub3QgcmVseSBv
biBzY29wZWQoKSEKLSAgICBBU1NFUlQobV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlICE9
IE5vdFJlZ2lzdGVyZWQgfHwgIUNvbnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKGRv
Y3VtZW50KCkpKTsKICAgICBpZiAobV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlID09IE5v
dFJlZ2lzdGVyZWQpCiAgICAgICAgIHJldHVybjsKLSAgICBpZiAoIUNvbnRleHRGZWF0dXJlczo6
c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkpKQotICAgICAgICByZXR1cm47Ci0KICAgICBB
U1NFUlQoc2NvcGUpOwogICAgIGlmIChzY29wZSkgewogICAgICAgICBBU1NFUlQoc2NvcGUtPmhh
c1Njb3BlZEhUTUxTdHlsZUNoaWxkKCkpOwpAQCAtMjMzLDcgKzIyOCw3IEBAIGNvbnN0IEF0b21p
Y1N0cmluZyYgSFRNTFN0eWxlRWxlbWVudDo6dHlwZSgpIGNvbnN0CiAjaWYgRU5BQkxFKFNUWUxF
X1NDT1BFRCkKIGJvb2wgSFRNTFN0eWxlRWxlbWVudDo6c2NvcGVkKCkgY29uc3QKIHsKLSAgICBy
ZXR1cm4gZmFzdEhhc0F0dHJpYnV0ZShzY29wZWRBdHRyKTsKKyAgICByZXR1cm4gQ29udGV4dEZl
YXR1cmVzOjpzdHlsZVNjb3BlZEVuYWJsZWQoZG9jdW1lbnQoKSkgJiYgZmFzdEhhc0F0dHJpYnV0
ZShzY29wZWRBdHRyKTsKIH0KIAogdm9pZCBIVE1MU3R5bGVFbGVtZW50OjpzZXRTY29wZWQoYm9v
bCBzY29wZWRWYWx1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3Mu
Y3BwCmluZGV4IGNkNjczOTgyYzA2MjhhOTVkNjhhZWM4MzZmMjU2MmM2ZjAyYTkwNzcuLjM5ZmQ4
YjcxNDNmNTU3ZjZiZmIwNGI3MDZkZGNiMjc4YWYyNjk1YzQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcApAQCAtNzksNiArNzksOSBAQCBJbnRlcm5hbFNl
dHRpbmdzOjpCYWNrdXA6OkJhY2t1cChQYWdlKiBwYWdlLCBTZXR0aW5ncyogc2V0dGluZ3MpCiAg
ICAgLCBtX29yaWdpbmFsU2hhZG93RE9NRW5hYmxlZChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpz
aGFkb3dET01FbmFibGVkKCkpCiAgICAgLCBtX29yaWdpbmFsQXV0aG9yU2hhZG93RE9NRm9yQW55
RWxlbWVudEVuYWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6YXV0aG9yU2hhZG93RE9NRm9y
QW55RWxlbWVudEVuYWJsZWQoKSkKICNlbmRpZgorI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCisg
ICAgLCBtX29yaWdpbmFsU3R5bGVTY29wZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c3R5bGVT
Y29wZWRFbmFibGVkKCkpCisjZW5kaWYKICAgICAsIG1fb3JpZ2luYWxFZGl0aW5nQmVoYXZpb3Io
c2V0dGluZ3MtPmVkaXRpbmdCZWhhdmlvclR5cGUoKSkKICAgICAsIG1fb3JpZ2luYWxGaXhlZFBv
c2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dChzZXR0aW5ncy0+Zml4ZWRQb3NpdGlvbkNyZWF0
ZXNTdGFja2luZ0NvbnRleHQoKSkKICAgICAsIG1fb3JpZ2luYWxTeW5jWEhSSW5Eb2N1bWVudHNF
bmFibGVkKHNldHRpbmdzLT5zeW5jWEhSSW5Eb2N1bWVudHNFbmFibGVkKCkpCkBAIC0xMTAsNiAr
MTEzLDkgQEAgdm9pZCBJbnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OnJlc3RvcmVUbyhQYWdlKiBw
YWdlLCBTZXR0aW5ncyogc2V0dGluZ3MpCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0
U2hhZG93RE9NRW5hYmxlZChtX29yaWdpbmFsU2hhZG93RE9NRW5hYmxlZCk7CiAgICAgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2V0QXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVudEVuYWJsZWQo
bV9vcmlnaW5hbEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKTsKICNlbmRpZgor
I2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCisgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0
U3R5bGVTY29wZWRFbmFibGVkKG1fb3JpZ2luYWxTdHlsZVNjb3BlZCk7CisjZW5kaWYKICAgICBz
ZXR0aW5ncy0+c2V0RWRpdGluZ0JlaGF2aW9yVHlwZShtX29yaWdpbmFsRWRpdGluZ0JlaGF2aW9y
KTsKICAgICBzZXR0aW5ncy0+c2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQo
bV9vcmlnaW5hbEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KTsKICAgICBzZXR0
aW5ncy0+c2V0U3luY1hIUkluRG9jdW1lbnRzRW5hYmxlZChtX29yaWdpbmFsU3luY1hIUkluRG9j
dW1lbnRzRW5hYmxlZCk7CkBAIC0yODgsNiArMjk0LDE1IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5n
czo6c2V0QXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVudEVuYWJsZWQoYm9vbCBpc0VuYWJsZWQp
CiAjZW5kaWYKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRTdHlsZVNjb3BlZEVuYWJs
ZWQoYm9vbCBlbmFibGVkKQoreworI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCisgICAgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2V0U3R5bGVTY29wZWRFbmFibGVkKGVuYWJsZWQpOworI2Vsc2UK
KyAgICBVTlVTRURfUEFSQU0oZW5hYmxlZCk7CisjZW5kaWYKK30KKwogdm9pZCBJbnRlcm5hbFNl
dHRpbmdzOjpzZXRUb3VjaEV2ZW50RW11bGF0aW9uRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQogewogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCmluZGV4IGNmYWU5NGZiYjJlN2QzYzIxMDUyYjA5
ZThjN2M3NzJkMmM5NmViMWQuLmQ5ZmI1NTM2MjJiNWY5OTdkN2EwNWVkODY0NTdlMTI5YjBkOGEz
NzcgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCkBAIC02MSw2
ICs2MSw5IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCBtX29yaWdpbmFsU2hhZG93RE9NRW5hYmxl
ZDsKICAgICAgICAgYm9vbCBtX29yaWdpbmFsQXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVudEVu
YWJsZWQ7CiAjZW5kaWYKKyNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQorICAgICAgICBib29sIG1f
b3JpZ2luYWxTdHlsZVNjb3BlZDsKKyNlbmRpZgogICAgICAgICBFZGl0aW5nQmVoYXZpb3JUeXBl
IG1fb3JpZ2luYWxFZGl0aW5nQmVoYXZpb3I7CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbEZpeGVk
UG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0OwogICAgICAgICBib29sIG1fb3JpZ2luYWxT
eW5jWEhSSW5Eb2N1bWVudHNFbmFibGVkOwpAQCAtMTA4LDYgKzExMSw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHNldERldmljZVN1cHBvcnRzTW91c2UoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2Rl
Jik7CiAgICAgdm9pZCBzZXRTaGFkb3dET01FbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9u
Q29kZSYpOwogICAgIHZvaWQgc2V0QXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVudEVuYWJsZWQo
Ym9vbCk7CisgICAgdm9pZCBzZXRTdHlsZVNjb3BlZEVuYWJsZWQoYm9vbCk7CiAgICAgdm9pZCBz
ZXRTdGFuZGFyZEZvbnRGYW1pbHkoY29uc3QgU3RyaW5nJiBmYW1pbHksIGNvbnN0IFN0cmluZyYg
c2NyaXB0LCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRTZXJpZkZvbnRGYW1pbHkoY29u
c3QgU3RyaW5nJiBmYW1pbHksIGNvbnN0IFN0cmluZyYgc2NyaXB0LCBFeGNlcHRpb25Db2RlJik7
CiAgICAgdm9pZCBzZXRTYW5zU2VyaWZGb250RmFtaWx5KGNvbnN0IFN0cmluZyYgZmFtaWx5LCBj
b25zdCBTdHJpbmcmIHNjcmlwdCwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKaW5kZXggYjljOGYzZWJmNjNhNGY2NzA2NzNiOGMy
ODRlODNiMzY1N2NhN2ZhZi4uMWVlYjYxZGM5MDkxZWI4YzVlM2JkZTU1MzEzNjFjYWMzNWRiOWY5
MSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCkBAIC00
NSw2ICs0NSw3IEBAIG1vZHVsZSB3aW5kb3cgewogICAgICAgICB2b2lkIHNldERldmljZVN1cHBv
cnRzTW91c2UoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAg
ICAgdm9pZCBzZXRTaGFkb3dET01FbmFibGVkKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERP
TUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0QXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVu
dEVuYWJsZWQoaW4gYm9vbGVhbiBpc0VuYWJsZWQpOworICAgICAgICB2b2lkIHNldFN0eWxlU2Nv
cGVkRW5hYmxlZChpbiBib29sZWFuIGlzRW5hYmxlZCk7CiAgICAgICAgIHZvaWQgc2V0U3RhbmRh
cmRGb250RmFtaWx5KGluIERPTVN0cmluZyBmYW1pbHksIGluIERPTVN0cmluZyBzY3JpcHQpIHJh
aXNlcyhET01FeGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldFNlcmlmRm9udEZhbWlseShpbiBE
T01TdHJpbmcgZmFtaWx5LCBpbiBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9NRXhjZXB0aW9u
KTsKICAgICAgICAgdm9pZCBzZXRTYW5zU2VyaWZGb250RmFtaWx5KGluIERPTVN0cmluZyBmYW1p
bHksIGluIERPTVN0cmluZyBzY3JpcHQpIHJhaXNlcyhET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZm
ODczNzBiYjFmYmE3ODc3YzRlOTllMTZlOGZiMDE3MzY2ZjM5NDIuLjUxNmQ3OTU5ZDExYzUyNGVm
ZjAzODFhMzczNDdkOWY0ZjQ3MTA5YjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wOS0w
MyAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAgICAgICBbU2hhZG93
IERPTV0gc2hvdWxkIGJlIGFibGUgdG8gYmUgYXZhaWxhYmxlIHdpdGhvdXQgPHN0eWxlIHNjb3Bl
ZD4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk1NjY0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0
L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC5odG1s
OiBBZGRlZC4KKwogMjAxMi0wOS0wNSAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFtRdF0gVW5yZXZpZXdlZCBnYXJkZW5pbmcsIHNraXAgbmV3IGZhc2ls
aW5nIHRlc3RzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L3N0eWxl
LXNjb3BlZC1ub3QtZW5hYmxlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
aGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
NWNiMDVkMmJhMDgyMmMxOGMzYWM5NjcwZTk5OTlmN2UzODk0MDg2Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNiBAQAorVGhpcyB0ZXN0IGVuc3VyZXMgY29udGVudCBl
bGVtZW50IGZlYXR1cmUgY2FuIGJlIGRpc2FibGVkCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNob3VsZEJlQXBwbGllZCkuY29s
b3IgaXMgJ3JnYigwLCAwLCAyNTUpJworUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzaG91
bGROb3RCZUFwcGxpZWQpLmNvbG9yIGlzICdyZ2IoMCwgMCwgMCknCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGluc2lkZVNjb3BlKS5jb2xvciBpcyAncmdiKDI1NSwgMCwgMCknCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNob3VsZE5vdEJlU2NvcGVkKS5jb2xvciBpcyAncmdi
KDI1NSwgMCwgMCknCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKK1Nob3VsZCBub3QgYmUgYmx1ZQorU2hvdWxkIGJlIHJlZAorCitTaG91bGQgYmUgcmVk
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5v
dC1lbmFibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVk
LW5vdC1lbmFibGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTViYjkyN2E1ZTgzOWZmODVkNzZiNGZhYjYw
YjJiOGRiNGEwMjc2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3No
YWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJsZWQuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVy
bmFscykKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFN0eWxlU2NvcGVkRW5hYmxl
ZChmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iaG9zdCI+PC9k
aXY+Cis8c3BhbiBpZD0nc2hvdWxkTm90QmVBcHBsaWVkJz5TaG91bGQgbm90IGJlIGJsdWU8L3Nw
YW4+Cis8ZGl2PgorICA8c3R5bGUgc2NvcGVkPiBwIHsgY29sb3I6IHJlZDsgfSA8L3N0eWxlPgor
ICA8cCBpZD0naW5zaWRlU2NvcGUnPlNob3VsZCBiZSByZWQ8L3A+Cis8L2Rpdj4KKzxwIGlkPSdz
aG91bGROb3RCZVNjb3BlZCc+U2hvdWxkIGJlIHJlZDwvcD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlv
bigiVGhpcyB0ZXN0IGVuc3VyZXMgY29udGVudCBlbGVtZW50IGZlYXR1cmUgY2FuIGJlIGRpc2Fi
bGVkIik7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJob3N0Iik7Cit2YXIg
c2hhZG93ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7CitzaGFkb3cuaW5uZXJIVE1MID0g
IjxzdHlsZT4gc3BhbiB7IGNvbG9yOiBibHVlOyB9IDwvc3R5bGU+PHNwYW4gaWQ9J3Nob3VsZEJl
QXBwbGllZCc+U2hvdWxkIGJlIGJsdWU8L3NwYW4+IjsKK3ZhciBzaG91bGRCZUFwcGxpZWQgPSBz
aGFkb3cuZ2V0RWxlbWVudEJ5SWQoInNob3VsZEJlQXBwbGllZCIpOwordmFyIHNob3VsZE5vdEJl
QXBwbGllZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaG91bGROb3RCZUFwcGxpZWQiKTsK
K3ZhciBzaG91bGROb3RCZVNjb3BlZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaG91bGRO
b3RCZVNjb3BlZCIpOwordmFyIGluc2lkZVNjb3BlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Imluc2lkZVNjb3BlIik7CitzaG91bGRCZSgid2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hvdWxk
QmVBcHBsaWVkKS5jb2xvciIsICIncmdiKDAsIDAsIDI1NSknIik7CitzaG91bGRCZSgid2luZG93
LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkTm90QmVBcHBsaWVkKS5jb2xvciIsICIncmdiKDAsIDAs
IDApJyIpOworc2hvdWxkQmUoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGluc2lkZVNjb3BlKS5j
b2xvciIsICIncmdiKDI1NSwgMCwgMCknIik7CitzaG91bGRCZSgid2luZG93LmdldENvbXB1dGVk
U3R5bGUoc2hvdWxkTm90QmVTY29wZWQpLmNvbG9yIiwgIidyZ2IoMjU1LCAwLCAwKSciKTsKK2Zp
bmlzaEpTVGVzdCgpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164165</attachid>
            <date>2012-09-14 08:56:43 -0700</date>
            <delta_ts>2012-10-09 21:36:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95664-20120915005614.patch</filename>
            <type>text/plain</type>
            <size>12142</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4NjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWIyMzhkZTlmMmYzYmQ4
MTExNDA4OTE4Nzk1MDNmNTg3ODgzNjhkZC4uYmIwYWMwZGFkMDNmN2UyYTllZTllMmQzZjQ4Yjgz
NGNiZjgwOGFkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTAzICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIFtTaGFkb3cgRE9NXSBz
aG91bGQgYmUgYWJsZSB0byBiZSBhdmFpbGFibGUgd2l0aG91dCA8c3R5bGUgc2NvcGVkPgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU2NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBz
cHJheXMgc3R5bGVTY29wZWRFbmFibGVkKCkgZ3VhcmRzIGFyb3VuZCB0aGUgInNjb3BlZCIgYXR0
cmlidXRlIGhhbmRsaW5nLAorICAgICAgICBhbmQgcmVtb3ZlcyBleGlzdGluZyBndWFyZHMgd2hp
Y2ggYXJlIGRpcmVjdGx5IGNvbnRyb2xsaW5nIHRoZSBzY29waW5nIG5vZGUgcmVzb2x1dGlvbi4K
KworICAgICAgICBUZXN0OiBmYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVk
Lmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlUmVzb2x2ZXI6OmRldGVybWluZVNjb3BlKToKKyAgICAgICAgKiBodG1sL0hUTUxT
dHlsZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6cGFy
c2VBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVudDo6c2NvcGVk
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVtZW50Ojpy
ZWdpc3RlcldpdGhTY29waW5nTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVt
ZW50Ojp1bnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxT
dHlsZUVsZW1lbnQ6OnNjb3BlZCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3Vw
KToKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFN0eWxlU2NvcGVkRW5h
YmxlZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0
dGluZ3MuaDoKKyAgICAgICAgKEJhY2t1cCk6CisgICAgICAgIChJbnRlcm5hbFNldHRpbmdzKToK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEyLTA5LTE0ICBN
aWtoYWlsIFBvemRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgogCiAgICAg
ICAgIFtFRkxdIEF0dGVtcHQgdG8gY3JlYXRlIGEgdGhlbWUgZm9yIDAgc2l6ZWQgZWxlbWVudCBs
ZWFkcyB0byBhc3NlcnRpb24gaGl0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKaW5k
ZXggODM0ZDFkNjAzMWMyZTM1YmNjMTNmNjhiM2UwMmY1YTg1MTFkMDdjMC4uYzJiMzlmZTE4Njgz
MmRhMDgzMWExOWQ0OWZlN2Y4MWQzZjQyYTU0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmNwcApAQCAtNTE1LDkgKzUxNSw2IEBAIGNvbnN0IENvbnRhaW5lck5vZGUqIFN0eWxlUmVz
b2x2ZXI6OmRldGVybWluZVNjb3BlKGNvbnN0IENTU1N0eWxlU2hlZXQqIHNoZWV0KQogewogICAg
IEFTU0VSVChzaGVldCk7CiAKLSAgICBpZiAoIUNvbnRleHRGZWF0dXJlczo6c3R5bGVTY29wZWRF
bmFibGVkKGRvY3VtZW50KCkpKQotICAgICAgICByZXR1cm4gMDsKLQogICAgIE5vZGUqIG93bmVy
Tm9kZSA9IHNoZWV0LT5vd25lck5vZGUoKTsKICAgICBpZiAoIW93bmVyTm9kZSB8fCAhb3duZXJO
b2RlLT5pc0hUTUxFbGVtZW50KCkgfHwgIW93bmVyTm9kZS0+aGFzVGFnTmFtZShIVE1MTmFtZXM6
OnN0eWxlVGFnKSkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5
bGVFbGVtZW50LmNwcAppbmRleCA5YmZjOTFhNDM1NjNlNzIyYWU4ZjY0NDdhNGZjMjMyMDZiOTRl
ODU4Li4zMzhkMDQ1YTYwMzIyZTFkY2NlMjlmNzE2ZjVkY2E3M2ZmNzZjMjI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTdHlsZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBI
VE1MU3R5bGVFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmIGF0dHJpYnV0
ZSkKICAgICBlbHNlIGlmIChhdHRyaWJ1dGUubmFtZSgpID09IG9uZXJyb3JBdHRyKQogICAgICAg
ICBzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBjcmVh
dGVBdHRyaWJ1dGVFdmVudExpc3RlbmVyKHRoaXMsIGF0dHJpYnV0ZSkpOwogI2lmIEVOQUJMRShT
VFlMRV9TQ09QRUQpCi0gICAgZWxzZSBpZiAoYXR0cmlidXRlLm5hbWUoKSA9PSBzY29wZWRBdHRy
KQorICAgIGVsc2UgaWYgKGF0dHJpYnV0ZS5uYW1lKCkgPT0gc2NvcGVkQXR0ciAmJiBDb250ZXh0
RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKSkKICAgICAgICAgc2NvcGVk
QXR0cmlidXRlQ2hhbmdlZCghYXR0cmlidXRlLmlzTnVsbCgpKTsKICNlbmRpZgogICAgIGVsc2UK
QEAgLTkwLDYgKzkwLDggQEAgdm9pZCBIVE1MU3R5bGVFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShj
b25zdCBBdHRyaWJ1dGUmIGF0dHJpYnV0ZSkKICNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQogdm9p
ZCBIVE1MU3R5bGVFbGVtZW50OjpzY29wZWRBdHRyaWJ1dGVDaGFuZ2VkKGJvb2wgc2NvcGVkKQog
eworICAgIEFTU0VSVChDb250ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVu
dCgpKSk7CisKICAgICBpZiAoIWluRG9jdW1lbnQoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0x
MjksOCArMTMxLDYgQEAgaW5saW5lIGJvb2wgSFRNTFN0eWxlRWxlbWVudDo6aXNSZWdpc3RlcmVk
QXNTY29wZWQoKSBjb25zdAogICAgIC8vIFRoZXJlZm9yZSB3ZSBjYW5ub3QgcmVseSBvbiBzY29w
ZWQoKSEKICAgICBpZiAobV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlID09IE5vdFJlZ2lz
dGVyZWQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIUNvbnRleHRGZWF0dXJlczo6
c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkpKQotICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTE2Nyw5ICsxNjcsNiBAQCB2b2lkIEhUTUxTdHlsZUVs
ZW1lbnQ6OnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKGJvb2wgc2NvcGVkKQogICAgIEFTU0VSVChp
bkRvY3VtZW50KCkpOwogICAgIGlmIChtX3Njb3BlZFN0eWxlUmVnaXN0cmF0aW9uU3RhdGUgIT0g
Tm90UmVnaXN0ZXJlZCkKICAgICAgICAgcmV0dXJuOwotICAgIGlmICghQ29udGV4dEZlYXR1cmVz
OjpzdHlsZVNjb3BlZEVuYWJsZWQoZG9jdW1lbnQoKSkpCi0gICAgICAgIHJldHVybjsKLQogICAg
IENvbnRhaW5lck5vZGUqIHNjb3BlID0gc2NvcGVkID8gcGFyZW50Tm9kZSgpIDogc2hhZG93Um9v
dCgpOwogICAgIGlmICghc2NvcGUpCiAgICAgICAgIHJldHVybjsKQEAgLTE5MCw3ICsxODcsNiBA
QCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKGJvb2wgc2Nv
cGVkKQogCiB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnVucmVnaXN0ZXJXaXRoU2NvcGluZ05vZGUo
Q29udGFpbmVyTm9kZSogc2NvcGUpCiB7Ci0gICAgQVNTRVJUKG1fc2NvcGVkU3R5bGVSZWdpc3Ry
YXRpb25TdGF0ZSAhPSBOb3RSZWdpc3RlcmVkIHx8ICFDb250ZXh0RmVhdHVyZXM6OnN0eWxlU2Nv
cGVkRW5hYmxlZChkb2N1bWVudCgpKSk7CiAgICAgaWYgKCFpc1JlZ2lzdGVyZWRBc1Njb3BlZCgp
KQogICAgICAgICByZXR1cm47CiAKQEAgLTI3MCw3ICsyNjYsNyBAQCBjb25zdCBBdG9taWNTdHJp
bmcmIEhUTUxTdHlsZUVsZW1lbnQ6OnR5cGUoKSBjb25zdAogI2lmIEVOQUJMRShTVFlMRV9TQ09Q
RUQpCiBib29sIEhUTUxTdHlsZUVsZW1lbnQ6OnNjb3BlZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IGZhc3RIYXNBdHRyaWJ1dGUoc2NvcGVkQXR0cik7CisgICAgcmV0dXJuIENvbnRleHRGZWF0dXJl
czo6c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkpICYmIGZhc3RIYXNBdHRyaWJ1dGUoc2Nv
cGVkQXR0cik7CiB9CiAKIHZvaWQgSFRNTFN0eWxlRWxlbWVudDo6c2V0U2NvcGVkKGJvb2wgc2Nv
cGVkVmFsdWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0
dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcApp
bmRleCBiOTViYmMzNmNkNTE3YWNhNDc3YjBmYjAyMDU3YjQ3Y2E4YmE5MjFlLi4yYTgzMWU1ZWRj
ZTk2NWNmN2M4Y2ZhMDkyZGJiMDQ2NDAxODY3YWQyIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKQEAgLTc5LDYgKzc5LDkgQEAgSW50ZXJuYWxTZXR0aW5n
czo6QmFja3VwOjpCYWNrdXAoUGFnZSogcGFnZSwgU2V0dGluZ3MqIHNldHRpbmdzKQogICAgICwg
bV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93
RE9NRW5hYmxlZCgpKQogICAgICwgbV9vcmlnaW5hbEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1l
bnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OmF1dGhvclNoYWRvd0RPTUZvckFueUVs
ZW1lbnRFbmFibGVkKCkpCiAjZW5kaWYKKyNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQorICAgICwg
bV9vcmlnaW5hbFN0eWxlU2NvcGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnN0eWxlU2NvcGVk
RW5hYmxlZCgpKQorI2VuZGlmCiAgICAgLCBtX29yaWdpbmFsRWRpdGluZ0JlaGF2aW9yKHNldHRp
bmdzLT5lZGl0aW5nQmVoYXZpb3JUeXBlKCkpCiAgICAgLCBtX29yaWdpbmFsRml4ZWRQb3NpdGlv
bkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoc2V0dGluZ3MtPmZpeGVkUG9zaXRpb25DcmVhdGVzU3Rh
Y2tpbmdDb250ZXh0KCkpCiAgICAgLCBtX29yaWdpbmFsU3luY1hIUkluRG9jdW1lbnRzRW5hYmxl
ZChzZXR0aW5ncy0+c3luY1hIUkluRG9jdW1lbnRzRW5hYmxlZCgpKQpAQCAtMTEyLDYgKzExNSw5
IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpyZXN0b3JlVG8oUGFnZSogcGFnZSwg
U2V0dGluZ3MqIHNldHRpbmdzKQogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFNoYWRv
d0RPTUVuYWJsZWQobV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQpOwogICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNldEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKG1fb3Jp
Z2luYWxBdXRob3JTaGFkb3dET01Gb3JBbnlFbGVtZW50RW5hYmxlZCk7CiAjZW5kaWYKKyNpZiBF
TkFCTEUoU1RZTEVfU0NPUEVEKQorICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFN0eWxl
U2NvcGVkRW5hYmxlZChtX29yaWdpbmFsU3R5bGVTY29wZWQpOworI2VuZGlmCiAgICAgc2V0dGlu
Z3MtPnNldEVkaXRpbmdCZWhhdmlvclR5cGUobV9vcmlnaW5hbEVkaXRpbmdCZWhhdmlvcik7CiAg
ICAgc2V0dGluZ3MtPnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KG1fb3Jp
Z2luYWxGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCk7CiAgICAgc2V0dGluZ3Mt
PnNldFN5bmNYSFJJbkRvY3VtZW50c0VuYWJsZWQobV9vcmlnaW5hbFN5bmNYSFJJbkRvY3VtZW50
c0VuYWJsZWQpOwpAQCAtMjkyLDYgKzI5OCwxNSBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNl
dEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKQogI2Vu
ZGlmCiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0U3R5bGVTY29wZWRFbmFibGVkKGJv
b2wgZW5hYmxlZCkKK3sKKyNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQorICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNldFN0eWxlU2NvcGVkRW5hYmxlZChlbmFibGVkKTsKKyNlbHNlCisgICAg
VU5VU0VEX1BBUkFNKGVuYWJsZWQpOworI2VuZGlmCit9CisKIHZvaWQgSW50ZXJuYWxTZXR0aW5n
czo6c2V0VG91Y2hFdmVudEVtdWxhdGlvbkVuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25D
b2RlJiBlYykKIHsKICNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFsU2V0dGluZ3MuaAppbmRleCBmNWFhZDhlZGMyMmEzMDA0NGRiMzA4MDYyMjg1
ZDgyNzhlODYxNGRhLi5mZWI3ZmE2YWFkMmY4N2Y1YTUxODA5OGZkNmE3NDZlMDhkYWMxN2U3IDEw
MDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaApAQCAtNjEsNiArNjEs
OSBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQ7CiAg
ICAgICAgIGJvb2wgbV9vcmlnaW5hbEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVk
OwogI2VuZGlmCisjaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKKyAgICAgICAgYm9vbCBtX29yaWdp
bmFsU3R5bGVTY29wZWQ7CisjZW5kaWYKICAgICAgICAgRWRpdGluZ0JlaGF2aW9yVHlwZSBtX29y
aWdpbmFsRWRpdGluZ0JlaGF2aW9yOwogICAgICAgICBib29sIG1fb3JpZ2luYWxGaXhlZFBvc2l0
aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dDsKICAgICAgICAgYm9vbCBtX29yaWdpbmFsU3luY1hI
UkluRG9jdW1lbnRzRW5hYmxlZDsKQEAgLTExMCw2ICsxMTMsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzZXREZXZpY2VTdXBwb3J0c01vdXNlKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwog
ICAgIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUm
KTsKICAgICB2b2lkIHNldEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKGJvb2wp
OworICAgIHZvaWQgc2V0U3R5bGVTY29wZWRFbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0U3Rh
bmRhcmRGb250RmFtaWx5KGNvbnN0IFN0cmluZyYgZmFtaWx5LCBjb25zdCBTdHJpbmcmIHNjcmlw
dCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0U2VyaWZGb250RmFtaWx5KGNvbnN0IFN0
cmluZyYgZmFtaWx5LCBjb25zdCBTdHJpbmcmIHNjcmlwdCwgRXhjZXB0aW9uQ29kZSYpOwogICAg
IHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZhbWlseShjb25zdCBTdHJpbmcmIGZhbWlseSwgY29uc3Qg
U3RyaW5nJiBzY3JpcHQsIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IDhmOTdmODlmZmRmN2Q1MWUwN2I1NjgwOTViZGJl
NDk5NDAzMDc1MjQuLmUxNGY5YjE5MmY0MGRkNDNlYjVhNDdkZTFhNGUxY2E3MWUwMTViYzEgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbApAQCAtNDUsNiAr
NDUsNyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAgICAgdm9pZCBzZXREZXZpY2VTdXBwb3J0c01v
dXNlKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZv
aWQgc2V0U2hhZG93RE9NRW5hYmxlZChpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNl
cHRpb24pOwogICAgICAgICB2b2lkIHNldEF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFi
bGVkKGluIGJvb2xlYW4gaXNFbmFibGVkKTsKKyAgICAgICAgdm9pZCBzZXRTdHlsZVNjb3BlZEVu
YWJsZWQoaW4gYm9vbGVhbiBpc0VuYWJsZWQpOwogICAgICAgICB2b2lkIHNldFN0YW5kYXJkRm9u
dEZhbWlseShpbiBET01TdHJpbmcgZmFtaWx5LCBpbiBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMo
RE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRTZXJpZkZvbnRGYW1pbHkoaW4gRE9NU3Ry
aW5nIGZhbWlseSwgaW4gRE9NU3RyaW5nIHNjcmlwdCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAg
ICAgICAgIHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZhbWlseShpbiBET01TdHJpbmcgZmFtaWx5LCBp
biBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1OTMyMzRk
YThjNTlmZmIyY2NkNTEyMjNmMzJiMTRkNWQyYmNmNWU4Li5lMmE0NGEyNTE4NzFlODJkOTE1OWVm
NDk2ZWRhYzk1NWIzZjY3ZDZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDktMDMgIE1P
UklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgW1NoYWRvdyBET01d
IHNob3VsZCBiZSBhYmxlIHRvIGJlIGF2YWlsYWJsZSB3aXRob3V0IDxzdHlsZSBzY29wZWQ+Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTY2NAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9kb20v
c2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJsZWQuaHRtbDogQWRk
ZWQuCisKIDIwMTItMDktMTQgIFN1ZGFyc2FuYSBOYWdpbmVuaSAgPHN1ZGFyc2FuYS5uYWdpbmVu
aUBsaW51eC5pbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF1bV0syXSBVbnNraXAgdGVzdCBjYXNl
cyB0aGF0IGFyZSBub3cgcGFzc2luZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
c2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zNWNiMDVkMmJhMDgyMmMxOGMzYWM5NjcwZTk5OTlmN2UzODk0MDg2Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1u
b3QtZW5hYmxlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNiBAQAorVGhpcyB0ZXN0IGVuc3Vy
ZXMgY29udGVudCBlbGVtZW50IGZlYXR1cmUgY2FuIGJlIGRpc2FibGVkCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNob3VsZEJl
QXBwbGllZCkuY29sb3IgaXMgJ3JnYigwLCAwLCAyNTUpJworUEFTUyB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShzaG91bGROb3RCZUFwcGxpZWQpLmNvbG9yIGlzICdyZ2IoMCwgMCwgMCknCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGluc2lkZVNjb3BlKS5jb2xvciBpcyAncmdiKDI1NSwg
MCwgMCknCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNob3VsZE5vdEJlU2NvcGVkKS5j
b2xvciBpcyAncmdiKDI1NSwgMCwgMCknCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKK1Nob3VsZCBub3QgYmUgYmx1ZQorU2hvdWxkIGJlIHJlZAorCitT
aG91bGQgYmUgcmVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc3R5
bGUtc2NvcGVkLW5vdC1lbmFibGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cv
c3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTViYjkyN2E1ZTgzOWZm
ODVkNzZiNGZhYjYwYjJiOGRiNGEwMjc2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJsZWQuaHRtbApAQCAtMCwwICsx
LDM1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitpZiAo
d2luZG93LmludGVybmFscykKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFN0eWxl
U2NvcGVkRW5hYmxlZChmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBp
ZD0iaG9zdCI+PC9kaXY+Cis8c3BhbiBpZD0nc2hvdWxkTm90QmVBcHBsaWVkJz5TaG91bGQgbm90
IGJlIGJsdWU8L3NwYW4+Cis8ZGl2PgorICA8c3R5bGUgc2NvcGVkPiBwIHsgY29sb3I6IHJlZDsg
fSA8L3N0eWxlPgorICA8cCBpZD0naW5zaWRlU2NvcGUnPlNob3VsZCBiZSByZWQ8L3A+Cis8L2Rp
dj4KKzxwIGlkPSdzaG91bGROb3RCZVNjb3BlZCc+U2hvdWxkIGJlIHJlZDwvcD4KKzxzY3JpcHQ+
CitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgY29udGVudCBlbGVtZW50IGZlYXR1cmUg
Y2FuIGJlIGRpc2FibGVkIik7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJo
b3N0Iik7Cit2YXIgc2hhZG93ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7CitzaGFkb3cu
aW5uZXJIVE1MID0gIjxzdHlsZT4gc3BhbiB7IGNvbG9yOiBibHVlOyB9IDwvc3R5bGU+PHNwYW4g
aWQ9J3Nob3VsZEJlQXBwbGllZCc+U2hvdWxkIGJlIGJsdWU8L3NwYW4+IjsKK3ZhciBzaG91bGRC
ZUFwcGxpZWQgPSBzaGFkb3cuZ2V0RWxlbWVudEJ5SWQoInNob3VsZEJlQXBwbGllZCIpOwordmFy
IHNob3VsZE5vdEJlQXBwbGllZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaG91bGROb3RC
ZUFwcGxpZWQiKTsKK3ZhciBzaG91bGROb3RCZVNjb3BlZCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJzaG91bGROb3RCZVNjb3BlZCIpOwordmFyIGluc2lkZVNjb3BlID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImluc2lkZVNjb3BlIik7CitzaG91bGRCZSgid2luZG93LmdldENvbXB1dGVk
U3R5bGUoc2hvdWxkQmVBcHBsaWVkKS5jb2xvciIsICIncmdiKDAsIDAsIDI1NSknIik7CitzaG91
bGRCZSgid2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkTm90QmVBcHBsaWVkKS5jb2xvciIs
ICIncmdiKDAsIDAsIDApJyIpOworc2hvdWxkQmUoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGlu
c2lkZVNjb3BlKS5jb2xvciIsICIncmdiKDI1NSwgMCwgMCknIik7CitzaG91bGRCZSgid2luZG93
LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkTm90QmVTY29wZWQpLmNvbG9yIiwgIidyZ2IoMjU1LCAw
LCAwKSciKTsKK2ZpbmlzaEpTVGVzdCgpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167914</attachid>
            <date>2012-10-09 21:37:02 -0700</date>
            <delta_ts>2012-10-10 18:00:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95664-20121010133602.patch</filename>
            <type>text/plain</type>
            <size>19798</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwODM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDExMTE5NTM4NzU5OGUw
OWJiNmI0MjVjNGE4NzFmM2VjYjlmMGVhNS4uMDE2MDhhNDJiNjBkZWUwNWMxMjE1YTAyNjEwNGI3
YzY1NjY2YzBkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDEyLTEwLTA5ICBNT1JJ
VEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgorCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTY2NAorICAgICAgICBbU2hhZG93IERPTV0gc2hv
dWxkIGJlIGFibGUgdG8gYmUgYXZhaWxhYmxlIHdpdGhvdXQgPHN0eWxlIHNjb3BlZD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGNoYW5nZSBy
ZWxheGVzIEVOQUJMRShTVFlMRV9TQ09QRUQpIGNvbXBpbGF0aW9uIGd1YXJkCisgICAgICAgIGFu
ZCBzdHlsZVNjb3BlZEVuYWJsZWQoKSBydW50aW1lIGd1YXJkLiBUaGUgZmxhZ3Mgbm93IG1hc2tz
CisgICAgICAgIHVzZXIgdmlzaWJsZSBiaXRzIG9mIHRoZSBjb2RlLCByYXRoZXIgdGhhbiBhbGwg
b2YgaXQuCisgICAgICAgIFRoaXMgY2hhbmdlIGFsc28gZWxpbWluYXRlcyBzb21lIHJlZHVuZGFu
dCBndWFyZHMgZm9yIHNpbXBsaWNpdHkuCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vc2hhZG93
L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC5odG1sCisKKyAgICAgICAgKiBjc3MvU3R5bGVSZXNv
bHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjptYXRjaFNjb3BlZEF1
dGhvclJ1bGVzKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OmxvY2F0ZUNvdXNp
bkxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdp
dGhFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OmxvY2F0ZVNoYXJl
ZFN0eWxlKToKKyAgICAgICAgKiBjc3MvU3R5bGVTY29wZVJlc29sdmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlU2NvcGVSZXNvbHZlcjo6c2NvcGVGb3IpOgorICAgICAgICAqIGNzcy9T
dHlsZVNjb3BlUmVzb2x2ZXIuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGh0bWwv
SFRNTFN0eWxlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU3R5bGVFbGVtZW50
OjpIVE1MU3R5bGVFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTdHlsZUVsZW1lbnQ6
OnBhcnNlQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTdHlsZUVsZW1lbnQ6OnNj
b3BlZEF0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxlbWVu
dDo6aXNSZWdpc3RlcmVkQXNTY29wZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxlRWxl
bWVudDo6cmVnaXN0ZXJXaXRoU2NvcGluZ05vZGUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0
eWxlRWxlbWVudDo6dW5yZWdpc3RlcldpdGhTY29waW5nTm9kZSk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MU3R5bGVFbGVtZW50OjppbnNlcnRlZEludG8pOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFN0eWxlRWxlbWVudDo6cmVtb3ZlZEZyb20pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFN0eWxl
RWxlbWVudDo6c2NvcGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxTdHlsZUVsZW1lbnQ6OnNj
b3BpbmdFbGVtZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxTdHlsZUVsZW1lbnQuaDoKKyAgICAg
ICAgKEhUTUxTdHlsZUVsZW1lbnQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5n
cy5jcHA6IEV4cG9yc2luZyBhIGZsYWcgZm9yIHRlc3RpbmcuCisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cCk6CisgICAgICAgIChXZWJDb3JlOjpJbnRl
cm5hbFNldHRpbmdzOjpCYWNrdXA6OnJlc3RvcmVUbyk6CisgICAgICAgIChXZWJDb3JlOjpJbnRl
cm5hbFNldHRpbmdzOjpzZXRTdHlsZVNjb3BlZEVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmg6IEV4cG9yc2luZyBhIGZsYWcg
Zm9yIHRlc3RpbmcuCisgICAgICAgIChCYWNrdXApOgorICAgICAgICAoSW50ZXJuYWxTZXR0aW5n
cyk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbDogRXhwb3JzaW5nIGEg
ZmxhZyBmb3IgdGVzdGluZy4KKwogMjAxMi0xMC0wOSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgU2hvdWxkIHJlamVjdCBpbnZhbGlkIGRhdGVzIGNvbnN0cnVj
dGVkIHdpdGggbXVsdGlwbGUgZmllbGRzIFVJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5j
cHAKaW5kZXggMmQ5Y2NkNTlkYTVjMmQ1NGI2YTI0YWZjNzIxYWUyYzA4OWJkN2U2Yy4uNjY5Njgx
YzFlOGU3OTVjMjNmYWUzOTAwYjQ0ZDYyOTJlYzE5MGYwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmNwcApAQCAtNzEyLDcgKzcxMiw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6c29y
dEFuZFRyYW5zZmVyTWF0Y2hlZFJ1bGVzKE1hdGNoUmVzdWx0JiByZXN1bHQpCiAKIHZvaWQgU3R5
bGVSZXNvbHZlcjo6bWF0Y2hTY29wZWRBdXRob3JSdWxlcyhNYXRjaFJlc3VsdCYgcmVzdWx0LCBi
b29sIGluY2x1ZGVFbXB0eVJ1bGVzKQogewotI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCisjaWYg
RU5BQkxFKFNUWUxFX1NDT1BFRCkgfHwgRU5BQkxFKFNIQURPV19ET00pCiAgICAgaWYgKCFtX3Nj
b3BlUmVzb2x2ZXIgfHwgIW1fc2NvcGVSZXNvbHZlci0+aGFzU2NvcGVkU3R5bGVzKCkpCiAgICAg
ICAgIHJldHVybjsKIApAQCAtOTk2LDEwICs5OTYsOCBAQCBOb2RlKiBTdHlsZVJlc29sdmVyOjps
b2NhdGVDb3VzaW5MaXN0KEVsZW1lbnQqIHBhcmVudCwgdW5zaWduZWQmIHZpc2l0ZWROb2RlQ291
bgogICAgICAgICByZXR1cm4gMDsKICAgICBpZiAoIXBhcmVudCB8fCAhcGFyZW50LT5pc1N0eWxl
ZEVsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIDA7Ci0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkK
ICAgICBpZiAocGFyZW50LT5oYXNTY29wZWRIVE1MU3R5bGVDaGlsZCgpKQogICAgICAgICByZXR1
cm4gMDsKLSNlbmRpZgogICAgIFN0eWxlZEVsZW1lbnQqIHAgPSBzdGF0aWNfY2FzdDxTdHlsZWRF
bGVtZW50Kj4ocGFyZW50KTsKICAgICBpZiAocC0+aW5saW5lU3R5bGUoKSkKICAgICAgICAgcmV0
dXJuIDA7CkBAIC0xMTc5LDE0ICsxMTc3LDEwIEBAIGJvb2wgU3R5bGVSZXNvbHZlcjo6Y2FuU2hh
cmVTdHlsZVdpdGhFbGVtZW50KFN0eWxlZEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICBpZiAoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShjZWxscGFk
ZGluZ0F0dHIpICE9IG1fZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShjZWxscGFkZGluZ0F0dHIp
KQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KICAgICBpZiAoZWxlbWVudC0+aGFzSUQoKSAmJiBt
X2ZlYXR1cmVzLmlkc0luUnVsZXMuY29udGFpbnMoZWxlbWVudC0+aWRGb3JTdHlsZVJlc29sdXRp
b24oKS5pbXBsKCkpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSNpZiBFTkFCTEUoU1RZTEVf
U0NPUEVEKQogICAgIGlmIChlbGVtZW50LT5oYXNTY29wZWRIVE1MU3R5bGVDaGlsZCgpKQogICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShQUk9HUkVTU19FTEVNRU5U
KQogICAgIGlmIChlbGVtZW50LT5oYXNUYWdOYW1lKHByb2dyZXNzVGFnKSkgewpAQCAtMTI5Mywx
MCArMTI4Nyw4IEBAIFJlbmRlclN0eWxlKiBTdHlsZVJlc29sdmVyOjpsb2NhdGVTaGFyZWRTdHls
ZSgpCiAgICAgICAgIHJldHVybiAwOwogICAgIGlmIChwYXJlbnRTdHlsZVByZXZlbnRzU2hhcmlu
ZyhtX3BhcmVudFN0eWxlKSkKICAgICAgICAgcmV0dXJuIDA7Ci0jaWYgRU5BQkxFKFNUWUxFX1ND
T1BFRCkKICAgICBpZiAobV9zdHlsZWRFbGVtZW50LT5oYXNTY29wZWRIVE1MU3R5bGVDaGlsZCgp
KQogICAgICAgICByZXR1cm4gMDsKLSNlbmRpZgogCiAgICAgLy8gQ2hlY2sgcHJldmlvdXMgc2li
bGluZ3MgYW5kIHRoZWlyIGNvdXNpbnMuCiAgICAgdW5zaWduZWQgY291bnQgPSAwOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlU2NvcGVSZXNvbHZlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVTY29wZVJlc29sdmVyLmNwcAppbmRleCA2MjI2OWNiMzI4NzM1Nzlk
ZmE5ZjllOTIyOGRkOTE4NDNlZjFkMzFhLi44NzQwMmJhYTU5ODEwMjRlZTVkNjQ0NjVhZDE3OGRj
Y2I3OWRlYThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTY29wZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTY29wZVJlc29sdmVyLmNwcApA
QCAtMjcsNyArMjcsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlN0eWxlU2Nv
cGVSZXNvbHZlci5oIgogCi0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKKyNpZiBFTkFCTEUoU1RZ
TEVfU0NPUEVEKSB8fCBFTkFCTEUoU0hBRE9XX0RPTSkKIAogI2luY2x1ZGUgIkNTU1N0eWxlU2hl
ZXQuaCIKICNpbmNsdWRlICJDb250ZXh0RmVhdHVyZXMuaCIKQEAgLTYwLDE2ICs2MCwxMyBAQCBj
b25zdCBDb250YWluZXJOb2RlKiBTdHlsZVNjb3BlUmVzb2x2ZXI6OnNjb3BlRm9yKGNvbnN0IENT
U1N0eWxlU2hlZXQqIHNoZWV0KQogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IHNoZWV0LT5vd25l
ckRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAg
aWYgKCFDb250ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCkpCi0gICAg
ICAgIHJldHVybiAwOwotCiAgICAgTm9kZSogb3duZXJOb2RlID0gc2hlZXQtPm93bmVyTm9kZSgp
OwogICAgIGlmICghb3duZXJOb2RlIHx8ICFvd25lck5vZGUtPmlzSFRNTEVsZW1lbnQoKSB8fCAh
b3duZXJOb2RlLT5oYXNUYWdOYW1lKEhUTUxOYW1lczo6c3R5bGVUYWcpKQogICAgICAgICByZXR1
cm4gMDsKIAogICAgIEhUTUxTdHlsZUVsZW1lbnQqIHN0eWxlRWxlbWVudCA9IHN0YXRpY19jYXN0
PEhUTUxTdHlsZUVsZW1lbnQqPihvd25lck5vZGUpOwogICAgIGlmICghc3R5bGVFbGVtZW50LT5z
Y29wZWQoKSkKLSAgICAgICAgcmV0dXJuIHN0eWxlRWxlbWVudC0+aXNJblNoYWRvd1RyZWUoKT8g
c3R5bGVFbGVtZW50LT5zaGFkb3dSb290KCkgOiAwOworICAgICAgICByZXR1cm4gc3R5bGVFbGVt
ZW50LT5pc0luU2hhZG93VHJlZSgpID8gc3R5bGVFbGVtZW50LT5zaGFkb3dSb290KCkgOiAwOwog
CiAgICAgQ29udGFpbmVyTm9kZSogcGFyZW50ID0gc3R5bGVFbGVtZW50LT5wYXJlbnROb2RlKCk7
CiAgICAgaWYgKCFwYXJlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVT
Y29wZVJlc29sdmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTY29wZVJlc29sdmVyLmgK
aW5kZXggODdlMjA0NzRmOTQyOWI4NmYwYjg0NWUyZjI1ODExOTJjMTVmM2QxNy4uNWEzMmRmZTc5
ZjgzNWJiN2NmOTViOGM3ZGQ5YjNiYjcwNDFmYjdmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlU2NvcGVSZXNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVNjb3BlUmVzb2x2ZXIuaApAQCAtNDAsNyArNDAsNyBAQCBjbGFzcyBDU1NTdHlsZVNoZWV0Owog
Y2xhc3MgUnVsZVNldDsKIGNsYXNzIFJ1bGVGZWF0dXJlU2V0OwogCi0jaWYgRU5BQkxFKFNUWUxF
X1NDT1BFRCkKKyNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKSB8fCBFTkFCTEUoU0hBRE9XX0RPTSkK
IAogY2xhc3MgU3R5bGVTY29wZVJlc29sdmVyIHsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxTdHlsZUVsZW1lbnQuY3BwCmluZGV4IDdmYmE3YzZhZDQ5OWJjMTJmZTFmOThiM2ZjMzQ2
NzY0NTU4ZjJiOTQuLjIyOGMzOTJkZmE0MjA5NmQ0YTQ2MWM2ZmQwYTM2ZmNhMWU5OTgyNDEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmNwcApAQCAtNTEsOSArNTEsNyBA
QCBpbmxpbmUgSFRNTFN0eWxlRWxlbWVudDo6SFRNTFN0eWxlRWxlbWVudChjb25zdCBRdWFsaWZp
ZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudAogICAgICwgU3R5bGVFbGVtZW50KGRvY3VtZW50LCBj
cmVhdGVkQnlQYXJzZXIpCiAgICAgLCBtX2ZpcmVkTG9hZChmYWxzZSkKICAgICAsIG1fbG9hZGVk
U2hlZXQoZmFsc2UpCi0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKICAgICAsIG1fc2NvcGVkU3R5
bGVSZWdpc3RyYXRpb25TdGF0ZShOb3RSZWdpc3RlcmVkKQotI2VuZGlmCiB7CiAgICAgQVNTRVJU
KGhhc1RhZ05hbWUoc3R5bGVUYWcpKTsKIH0KQEAgLTgwLDEwICs3OCw4IEBAIHZvaWQgSFRNTFN0
eWxlRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJiBhdHRyaWJ1dGUpCiAg
ICAgICAgIHNldEF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lcygpLmxvYWRFdmVudCwg
Y3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyaWJ1dGUpKTsKICAgICBlbHNl
IGlmIChhdHRyaWJ1dGUubmFtZSgpID09IG9uZXJyb3JBdHRyKQogICAgICAgICBzZXRBdHRyaWJ1
dGVFdmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50LCBjcmVhdGVBdHRyaWJ1dGVF
dmVudExpc3RlbmVyKHRoaXMsIGF0dHJpYnV0ZSkpOwotI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQp
Ci0gICAgZWxzZSBpZiAoYXR0cmlidXRlLm5hbWUoKSA9PSBzY29wZWRBdHRyKQorICAgIGVsc2Ug
aWYgKGF0dHJpYnV0ZS5uYW1lKCkgPT0gc2NvcGVkQXR0ciAmJiBDb250ZXh0RmVhdHVyZXM6OnN0
eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKSkKICAgICAgICAgc2NvcGVkQXR0cmlidXRlQ2hh
bmdlZCghYXR0cmlidXRlLmlzTnVsbCgpKTsKLSNlbmRpZgogICAgIGVsc2UgaWYgKGF0dHJpYnV0
ZS5uYW1lKCkgPT0gbWVkaWFBdHRyICYmIGluRG9jdW1lbnQoKSAmJiBkb2N1bWVudCgpLT5yZW5k
ZXJlcigpICYmIG1fc2hlZXQpIHsKICAgICAgICAgbV9zaGVldC0+c2V0TWVkaWFRdWVyaWVzKE1l
ZGlhUXVlcnlTZXQ6OmNyZWF0ZUFsbG93aW5nRGVzY3JpcHRpb25TeW50YXgoYXR0cmlidXRlLnZh
bHVlKCkpKTsKICAgICAgICAgZG9jdW1lbnQoKS0+c3R5bGVSZXNvbHZlckNoYW5nZWQoUmVjYWxj
U3R5bGVJbW1lZGlhdGVseSk7CkBAIC05MSw5ICs4NywxMCBAQCB2b2lkIEhUTUxTdHlsZUVsZW1l
bnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYgYXR0cmlidXRlKQogICAgICAgICBI
VE1MRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoYXR0cmlidXRlKTsKIH0KIAotI2lmIEVOQUJMRShT
VFlMRV9TQ09QRUQpCiB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnNjb3BlZEF0dHJpYnV0ZUNoYW5n
ZWQoYm9vbCBzY29wZWQpCiB7CisgICAgQVNTRVJUKENvbnRleHRGZWF0dXJlczo6c3R5bGVTY29w
ZWRFbmFibGVkKGRvY3VtZW50KCkpKTsKKwogICAgIGlmICghaW5Eb2N1bWVudCgpKQogICAgICAg
ICByZXR1cm47CiAKQEAgLTExOCw3ICsxMTUsNiBAQCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnNj
b3BlZEF0dHJpYnV0ZUNoYW5nZWQoYm9vbCBzY29wZWQpCiAgICAgaWYgKGlzSW5TaGFkb3dUcmVl
KCkgJiYgbV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlICE9IFJlZ2lzdGVyZWRJblNoYWRv
d1Jvb3QpCiAgICAgICAgIHJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKGZhbHNlKTsKIH0KLSNlbmRp
ZgogCiB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpCiB7CkBA
IC0xMjYsMTUgKzEyMiwxMiBAQCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OmZpbmlzaFBhcnNpbmdD
aGlsZHJlbigpCiAgICAgSFRNTEVsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpOwogfQog
Ci0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKIGlubGluZSBib29sIEhUTUxTdHlsZUVsZW1lbnQ6
OmlzUmVnaXN0ZXJlZEFzU2NvcGVkKCkgY29uc3QKIHsKICAgICAvLyBOb3RlOiBXZSBjYW5ub3Qg
cmVseSBvbiB0aGUgJ3Njb3BlZCcgYXR0cmlidXRlIHN0aWxsIGJlaW5nIHByZXNlbnQgd2hlbiB0
aGlzIG1ldGhvZCBpcyBpbnZva2VkLgogICAgIC8vIFRoZXJlZm9yZSB3ZSBjYW5ub3QgcmVseSBv
biBzY29wZWQoKSEKICAgICBpZiAobV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0YXRlID09IE5v
dFJlZ2lzdGVyZWQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIUNvbnRleHRGZWF0
dXJlczo6c3R5bGVTY29wZWRFbmFibGVkKGRvY3VtZW50KCkpKQotICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTE3MSw4ICsxNjQsNiBAQCB2b2lkIEhUTUxT
dHlsZUVsZW1lbnQ6OnJlZ2lzdGVyV2l0aFNjb3BpbmdOb2RlKGJvb2wgc2NvcGVkKQogICAgIEFT
U0VSVChpbkRvY3VtZW50KCkpOwogICAgIGlmIChtX3Njb3BlZFN0eWxlUmVnaXN0cmF0aW9uU3Rh
dGUgIT0gTm90UmVnaXN0ZXJlZCkKICAgICAgICAgcmV0dXJuOwotICAgIGlmICghQ29udGV4dEZl
YXR1cmVzOjpzdHlsZVNjb3BlZEVuYWJsZWQoZG9jdW1lbnQoKSkpCi0gICAgICAgIHJldHVybjsK
IAogICAgIENvbnRhaW5lck5vZGUqIHNjb3BlID0gc2NvcGVkID8gcGFyZW50Tm9kZSgpIDogc2hh
ZG93Um9vdCgpOwogICAgIGlmICghc2NvcGUpCkBAIC0yMDksMjIgKzIwMCwxNCBAQCB2b2lkIEhU
TUxTdHlsZUVsZW1lbnQ6OnVucmVnaXN0ZXJXaXRoU2NvcGluZ05vZGUoQ29udGFpbmVyTm9kZSog
c2NvcGUpCiAKICAgICBtX3Njb3BlZFN0eWxlUmVnaXN0cmF0aW9uU3RhdGUgPSBOb3RSZWdpc3Rl
cmVkOwogfQotI2Vsc2UKLXNpemVfdCBOb2RlOjpudW1iZXJPZlNjb3BlZEhUTUxTdHlsZUNoaWxk
cmVuKCkgY29uc3QKLXsKLSAgICByZXR1cm4gMDsKLX0KLSNlbmRpZgogCiBOb2RlOjpJbnNlcnRp
b25Ob3RpZmljYXRpb25SZXF1ZXN0IEhUTUxTdHlsZUVsZW1lbnQ6Omluc2VydGVkSW50byhDb250
YWluZXJOb2RlKiBpbnNlcnRpb25Qb2ludCkKIHsKICAgICBIVE1MRWxlbWVudDo6aW5zZXJ0ZWRJ
bnRvKGluc2VydGlvblBvaW50KTsKICAgICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmluRG9jdW1lbnQo
KSkgewogICAgICAgICBTdHlsZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KGRvY3VtZW50
KCksIHRoaXMpOwotI2lmIEVOQUJMRShTVFlMRV9TQ09QRUQpCiAgICAgICAgIGlmIChtX3Njb3Bl
ZFN0eWxlUmVnaXN0cmF0aW9uU3RhdGUgPT0gTm90UmVnaXN0ZXJlZCAmJiAoc2NvcGVkKCkgfHwg
aXNJblNoYWRvd1RyZWUoKSkpCiAgICAgICAgICAgICByZWdpc3RlcldpdGhTY29waW5nTm9kZShz
Y29wZWQoKSk7Ci0jZW5kaWYKICAgICB9CiAKICAgICByZXR1cm4gSW5zZXJ0aW9uRG9uZTsKQEAg
LTIzNCw3ICsyMTcsNiBAQCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRh
aW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewogICAgIEhUTUxFbGVtZW50OjpyZW1vdmVkRnJv
bShpbnNlcnRpb25Qb2ludCk7CiAKLSNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQogICAgIC8vIElu
IHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uLCA8c3R5bGUgc2NvcGVkPiBpcyBvbmx5IHJlZ2lz
dGVyZWQgaWYgdGhlIG5vZGUgaXMgaW4gdGhlIGRvY3VtZW50LgogICAgIC8vIFRoYXQgaXMsIGJl
Y2F1c2Ugd2lsbFJlbW92ZSgpIGlzIGFsc28gY2FsbGVkIGlmIGFuIGFuY2VzdG9yIGlzIHJlbW92
ZWQgZnJvbSB0aGUgZG9jdW1lbnQuCiAgICAgLy8gTm93LCBpZiB3ZSB3YW50IHRvIHJlZ2lzdGVy
IDxzdHlsZSBzY29wZWQ+IGV2ZW4gaWYgaXQncyBub3QgaW5Eb2N1bWVudCwKQEAgLTI0OSw3ICsy
MzEsNiBAQCB2b2lkIEhUTUxTdHlsZUVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUq
IGluc2VydGlvblBvaW50KQogICAgICAgICAgICAgc2NvcGUgPSBwYXJlbnROb2RlKCkgPyBwYXJl
bnROb2RlKCkgOiBpbnNlcnRpb25Qb2ludDsKICAgICAgICAgdW5yZWdpc3RlcldpdGhTY29waW5n
Tm9kZShzY29wZSk7CiAgICAgfQotI2VuZGlmCiAKICAgICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmlu
RG9jdW1lbnQoKSkKICAgICAgICAgU3R5bGVFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KGRv
Y3VtZW50KCksIHRoaXMpOwpAQCAtMjcxLDEwICsyNTIsOSBAQCBjb25zdCBBdG9taWNTdHJpbmcm
IEhUTUxTdHlsZUVsZW1lbnQ6OnR5cGUoKSBjb25zdAogICAgIHJldHVybiBnZXRBdHRyaWJ1dGUo
dHlwZUF0dHIpOwogfQogCi0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKIGJvb2wgSFRNTFN0eWxl
RWxlbWVudDo6c2NvcGVkKCkgY29uc3QKIHsKLSAgICByZXR1cm4gZmFzdEhhc0F0dHJpYnV0ZShz
Y29wZWRBdHRyKTsKKyAgICByZXR1cm4gZmFzdEhhc0F0dHJpYnV0ZShzY29wZWRBdHRyKSAmJiBD
b250ZXh0RmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZChkb2N1bWVudCgpKTsKIH0KIAogdm9p
ZCBIVE1MU3R5bGVFbGVtZW50OjpzZXRTY29wZWQoYm9vbCBzY29wZWRWYWx1ZSkKQEAgLTI5Niw3
ICsyNzYsNiBAQCBFbGVtZW50KiBIVE1MU3R5bGVFbGVtZW50OjpzY29waW5nRWxlbWVudCgpIGNv
bnN0CiAKICAgICByZXR1cm4gdG9FbGVtZW50KHBhcmVudE9ySG9zdCk7CiB9Ci0jZW5kaWYgLy8g
RU5BQkxFKFNUWUxFX1NDT1BFRCkKIAogdm9pZCBIVE1MU3R5bGVFbGVtZW50OjpkaXNwYXRjaFBl
bmRpbmdMb2FkRXZlbnRzKCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFN0eWxlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmgK
aW5kZXggODQ3NmM2NDhmODljMzQ4OTQ3NWNmNjZlZDk3ZjBiZGVmM2JmZDcyMi4uNzZiMjhkNGNm
ODc4YzQyNGVkZmUzMjgwY2UzZGEzNmJhMTM3MThmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U3R5bGVFbGVtZW50LmgKQEAgLTQxLDEyICs0MSwxMCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNl
dFR5cGUoY29uc3QgQXRvbWljU3RyaW5nJik7CiAKLSNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQog
ICAgIGJvb2wgc2NvcGVkKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRTY29wZWQoYm9vbCk7CiAgICAg
RWxlbWVudCogc2NvcGluZ0VsZW1lbnQoKSBjb25zdDsKICAgICBib29sIGlzUmVnaXN0ZXJlZEFz
U2NvcGVkKCkgY29uc3Q7Ci0jZW5kaWYKIAogICAgIHVzaW5nIFN0eWxlRWxlbWVudDo6c2hlZXQ7
CiAKQEAgLTc3LDIzICs3NSwxOSBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgY29uc3QgQXRvbWlj
U3RyaW5nJiBtZWRpYSgpIGNvbnN0OwogICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiB0
eXBlKCkgY29uc3Q7CiAKLSNpZiBFTkFCTEUoU1RZTEVfU0NPUEVEKQogICAgIHZvaWQgc2NvcGVk
QXR0cmlidXRlQ2hhbmdlZChib29sKTsKICAgICB2b2lkIHJlZ2lzdGVyV2l0aFNjb3BpbmdOb2Rl
KGJvb2wpOwogICAgIHZvaWQgdW5yZWdpc3RlcldpdGhTY29waW5nTm9kZShDb250YWluZXJOb2Rl
Kik7Ci0jZW5kaWYKIAogICAgIGJvb2wgbV9maXJlZExvYWQ7CiAgICAgYm9vbCBtX2xvYWRlZFNo
ZWV0OwogCi0jaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKICAgICBlbnVtIFNjb3BlZFN0eWxlUmVn
aXN0cmF0aW9uU3RhdGUgewogICAgICAgICBOb3RSZWdpc3RlcmVkLAogICAgICAgICBSZWdpc3Rl
cmVkQXNTY29wZWQsCiAgICAgICAgIFJlZ2lzdGVyZWRJblNoYWRvd1Jvb3QKICAgICB9OwogICAg
IFNjb3BlZFN0eWxlUmVnaXN0cmF0aW9uU3RhdGUgbV9zY29wZWRTdHlsZVJlZ2lzdHJhdGlvblN0
YXRlOwotI2VuZGlmCiB9OwogCiB9IC8vbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmNwcAppbmRleCBiYjllZWQ2YjEzNTZlMTE4YTE1NjJmZjRkMmRj
MjQwYzM1ZjA1YjY3Li44ZDhmMGNiNDA5MDAzNjVlNjBhNDM4NGVjYjA5NzQwNTQ3NzE1YWY5IDEw
MDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKQEAgLTc5LDYg
Kzc5LDkgQEAgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXAoUGFnZSogcGFnZSwgU2V0
dGluZ3MqIHNldHRpbmdzKQogICAgICwgbV9vcmlnaW5hbFNoYWRvd0RPTUVuYWJsZWQoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhZG93RE9NRW5hYmxlZCgpKQogICAgICwgbV9vcmlnaW5hbEF1
dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OmF1dGhvclNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKCkpCiAjZW5kaWYKKyNpZiBFTkFC
TEUoU1RZTEVfU0NPUEVEKQorICAgICwgbV9vcmlnaW5hbFN0eWxlU2NvcGVkKFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnN0eWxlU2NvcGVkRW5hYmxlZCgpKQorI2VuZGlmCiAgICAgLCBtX29yaWdp
bmFsRWRpdGluZ0JlaGF2aW9yKHNldHRpbmdzLT5lZGl0aW5nQmVoYXZpb3JUeXBlKCkpCiAgICAg
LCBtX29yaWdpbmFsVW5pZmllZFNwZWxsQ2hlY2tlckVuYWJsZWQoc2V0dGluZ3MtPnVuaWZpZWRU
ZXh0Q2hlY2tlckVuYWJsZWQoKSkKICAgICAsIG1fb3JpZ2luYWxGaXhlZFBvc2l0aW9uQ3JlYXRl
c1N0YWNraW5nQ29udGV4dChzZXR0aW5ncy0+Zml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0Nv
bnRleHQoKSkKQEAgLTExNCw2ICsxMTcsOSBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OkJhY2t1
cDo6cmVzdG9yZVRvKFBhZ2UqIHBhZ2UsIFNldHRpbmdzKiBzZXR0aW5ncykKICAgICBSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzZXRTaGFkb3dET01FbmFibGVkKG1fb3JpZ2luYWxTaGFkb3dET01F
bmFibGVkKTsKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRBdXRob3JTaGFkb3dET01G
b3JBbnlFbGVtZW50RW5hYmxlZChtX29yaWdpbmFsQXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVu
dEVuYWJsZWQpOwogI2VuZGlmCisjaWYgRU5BQkxFKFNUWUxFX1NDT1BFRCkKKyAgICBSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzZXRTdHlsZVNjb3BlZEVuYWJsZWQobV9vcmlnaW5hbFN0eWxlU2Nv
cGVkKTsKKyNlbmRpZgogICAgIHNldHRpbmdzLT5zZXRFZGl0aW5nQmVoYXZpb3JUeXBlKG1fb3Jp
Z2luYWxFZGl0aW5nQmVoYXZpb3IpOwogICAgIHNldHRpbmdzLT5zZXRVbmlmaWVkVGV4dENoZWNr
ZXJFbmFibGVkKG1fb3JpZ2luYWxVbmlmaWVkU3BlbGxDaGVja2VyRW5hYmxlZCk7CiAgICAgc2V0
dGluZ3MtPnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KG1fb3JpZ2luYWxG
aXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCk7CkBAIC0zMDIsNiArMzA4LDE1IEBA
IHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0QXV0aG9yU2hhZG93RE9NRm9yQW55RWxlbWVudEVu
YWJsZWQoYm9vbCBpc0VuYWJsZWQpCiAjZW5kaWYKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdz
OjpzZXRTdHlsZVNjb3BlZEVuYWJsZWQoYm9vbCBlbmFibGVkKQoreworI2lmIEVOQUJMRShTVFlM
RV9TQ09QRUQpCisgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0U3R5bGVTY29wZWRFbmFi
bGVkKGVuYWJsZWQpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZW5hYmxlZCk7CisjZW5kaWYK
K30KKwogdm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRUb3VjaEV2ZW50RW11bGF0aW9uRW5hYmxl
ZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogI2lmIEVOQUJMRShUT1VDSF9F
VkVOVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGlu
Z3MuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCmluZGV4IGJl
ODgxMGRlNjY4MmJjODdkNDQ3NmJmOTNkOWEwZDgwMjlhZTA5MDguLjc4ZjM2ZTAxNzYxY2ViZGMz
MWQ4OTQyMTlkMzIwYjYwMmExNjliNGYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oCkBAIC02MSw2ICs2MSw5IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCBtX29y
aWdpbmFsU2hhZG93RE9NRW5hYmxlZDsKICAgICAgICAgYm9vbCBtX29yaWdpbmFsQXV0aG9yU2hh
ZG93RE9NRm9yQW55RWxlbWVudEVuYWJsZWQ7CiAjZW5kaWYKKyNpZiBFTkFCTEUoU1RZTEVfU0NP
UEVEKQorICAgICAgICBib29sIG1fb3JpZ2luYWxTdHlsZVNjb3BlZDsKKyNlbmRpZgogICAgICAg
ICBFZGl0aW5nQmVoYXZpb3JUeXBlIG1fb3JpZ2luYWxFZGl0aW5nQmVoYXZpb3I7CiAgICAgICAg
IGJvb2wgbV9vcmlnaW5hbFVuaWZpZWRTcGVsbENoZWNrZXJFbmFibGVkOwogICAgICAgICBib29s
IG1fb3JpZ2luYWxGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dDsKQEAgLTExMyw2
ICsxMTYsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXREZXZpY2VTdXBwb3J0c01vdXNlKGJvb2wg
ZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChi
b29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEF1dGhvclNoYWRvd0RP
TUZvckFueUVsZW1lbnRFbmFibGVkKGJvb2wpOworICAgIHZvaWQgc2V0U3R5bGVTY29wZWRFbmFi
bGVkKGJvb2wpOwogICAgIHZvaWQgc2V0U3RhbmRhcmRGb250RmFtaWx5KGNvbnN0IFN0cmluZyYg
ZmFtaWx5LCBjb25zdCBTdHJpbmcmIHNjcmlwdCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQg
c2V0U2VyaWZGb250RmFtaWx5KGNvbnN0IFN0cmluZyYgZmFtaWx5LCBjb25zdCBTdHJpbmcmIHNj
cmlwdCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZhbWlseShj
b25zdCBTdHJpbmcmIGZhbWlseSwgY29uc3QgU3RyaW5nJiBzY3JpcHQsIEV4Y2VwdGlvbkNvZGUm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IGQ4
YThhYWY4YmJhODE1ODIwNGM5NTY5NGIxNGI4MzQzMWNjNjI4NTMuLmMwMWNiMjNjMzUyOTVkMTdi
MTdkNmY4Y2UzNDYzNTAwNDk1M2U5MDYgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmlkbApAQCAtNDYsNiArNDYsNyBAQCBtb2R1bGUgd2luZG93IHsKICAgICAg
ICAgdm9pZCBzZXREZXZpY2VTdXBwb3J0c01vdXNlKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2Vz
KERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0U2hhZG93RE9NRW5hYmxlZChpbiBib29s
ZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldEF1dGhv
clNoYWRvd0RPTUZvckFueUVsZW1lbnRFbmFibGVkKGluIGJvb2xlYW4gaXNFbmFibGVkKTsKKyAg
ICAgICAgdm9pZCBzZXRTdHlsZVNjb3BlZEVuYWJsZWQoaW4gYm9vbGVhbiBpc0VuYWJsZWQpOwog
ICAgICAgICB2b2lkIHNldFN0YW5kYXJkRm9udEZhbWlseShpbiBET01TdHJpbmcgZmFtaWx5LCBp
biBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBz
ZXRTZXJpZkZvbnRGYW1pbHkoaW4gRE9NU3RyaW5nIGZhbWlseSwgaW4gRE9NU3RyaW5nIHNjcmlw
dCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0U2Fuc1NlcmlmRm9udEZh
bWlseShpbiBET01TdHJpbmcgZmFtaWx5LCBpbiBET01TdHJpbmcgc2NyaXB0KSByYWlzZXMoRE9N
RXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCA4YjkyZDhiNmNlOTlmNjJiNWM5OGZkYzU2ZjQzZDBmNmZmZjBm
YjdjLi5lZmQyNjhlNTQzYjEyZDcyNzZlMDAyYjMxMTRiODUyM2EzMWRlNzQ1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTMgQEAKKzIwMTItMTAtMDkgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5j
b20+CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk1
NjY0CisgICAgICAgIFtTaGFkb3cgRE9NXSBzaG91bGQgYmUgYWJsZSB0byBiZSBhdmFpbGFibGUg
d2l0aG91dCA8c3R5bGUgc2NvcGVkPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxl
ZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9zdHlsZS1z
Y29wZWQtbm90LWVuYWJsZWQuaHRtbDogQWRkZWQuCisKIDIwMTItMTAtMDkgIEtlbnQgVGFtdXJh
ICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFNob3VsZCByZWplY3QgaW52YWxpZCBk
YXRlcyBjb25zdHJ1Y3RlZCB3aXRoIG11bHRpcGxlIGZpZWxkcyBVSQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFi
bGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNWNiMDVkMmJhMDgyMmMxOGMzYWM5NjcwZTk5
OTlmN2UzODk0MDg2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L3N0eWxlLXNjb3BlZC1ub3QtZW5hYmxlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNiBA
QAorVGhpcyB0ZXN0IGVuc3VyZXMgY29udGVudCBlbGVtZW50IGZlYXR1cmUgY2FuIGJlIGRpc2Fi
bGVkCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKHNob3VsZEJlQXBwbGllZCkuY29sb3IgaXMgJ3JnYigwLCAwLCAyNTUpJworUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzaG91bGROb3RCZUFwcGxpZWQpLmNvbG9yIGlzICdy
Z2IoMCwgMCwgMCknCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGluc2lkZVNjb3BlKS5j
b2xvciBpcyAncmdiKDI1NSwgMCwgMCknCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNo
b3VsZE5vdEJlU2NvcGVkKS5jb2xvciBpcyAncmdiKDI1NSwgMCwgMCknCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK1Nob3VsZCBub3QgYmUgYmx1ZQor
U2hvdWxkIGJlIHJlZAorCitTaG91bGQgYmUgcmVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvc3R5bGUtc2NvcGVkLW5vdC1lbmFibGVkLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOTViYjkyN2E1ZTgzOWZmODVkNzZiNGZhYjYwYjJiOGRiNGEwMjc2NAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9zdHlsZS1zY29wZWQtbm90LWVuYWJs
ZWQuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgICB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLnNldFN0eWxlU2NvcGVkRW5hYmxlZChmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPGRpdiBpZD0iaG9zdCI+PC9kaXY+Cis8c3BhbiBpZD0nc2hvdWxkTm90QmVB
cHBsaWVkJz5TaG91bGQgbm90IGJlIGJsdWU8L3NwYW4+Cis8ZGl2PgorICA8c3R5bGUgc2NvcGVk
PiBwIHsgY29sb3I6IHJlZDsgfSA8L3N0eWxlPgorICA8cCBpZD0naW5zaWRlU2NvcGUnPlNob3Vs
ZCBiZSByZWQ8L3A+Cis8L2Rpdj4KKzxwIGlkPSdzaG91bGROb3RCZVNjb3BlZCc+U2hvdWxkIGJl
IHJlZDwvcD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgY29udGVu
dCBlbGVtZW50IGZlYXR1cmUgY2FuIGJlIGRpc2FibGVkIik7Cit2YXIgaG9zdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJob3N0Iik7Cit2YXIgc2hhZG93ID0gbmV3IFdlYktpdFNoYWRvd1Jv
b3QoaG9zdCk7CitzaGFkb3cuaW5uZXJIVE1MID0gIjxzdHlsZT4gc3BhbiB7IGNvbG9yOiBibHVl
OyB9IDwvc3R5bGU+PHNwYW4gaWQ9J3Nob3VsZEJlQXBwbGllZCc+U2hvdWxkIGJlIGJsdWU8L3Nw
YW4+IjsKK3ZhciBzaG91bGRCZUFwcGxpZWQgPSBzaGFkb3cuZ2V0RWxlbWVudEJ5SWQoInNob3Vs
ZEJlQXBwbGllZCIpOwordmFyIHNob3VsZE5vdEJlQXBwbGllZCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJzaG91bGROb3RCZUFwcGxpZWQiKTsKK3ZhciBzaG91bGROb3RCZVNjb3BlZCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaG91bGROb3RCZVNjb3BlZCIpOwordmFyIGluc2lkZVNj
b3BlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImluc2lkZVNjb3BlIik7CitzaG91bGRCZSgi
d2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkQmVBcHBsaWVkKS5jb2xvciIsICIncmdiKDAs
IDAsIDI1NSknIik7CitzaG91bGRCZSgid2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkTm90
QmVBcHBsaWVkKS5jb2xvciIsICIncmdiKDAsIDAsIDApJyIpOworc2hvdWxkQmUoIndpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGluc2lkZVNjb3BlKS5jb2xvciIsICIncmdiKDI1NSwgMCwgMCknIik7
CitzaG91bGRCZSgid2luZG93LmdldENvbXB1dGVkU3R5bGUoc2hvdWxkTm90QmVTY29wZWQpLmNv
bG9yIiwgIidyZ2IoMjU1LCAwLCAwKSciKTsKK2ZpbmlzaEpTVGVzdCgpOworPC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>