<?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>75763</bug_id>
          
          <creation_ts>2012-01-06 17:53:18 -0800</creation_ts>
          <short_desc>[chromium] Add setting for painting debug info onto tiles</short_desc>
          <delta_ts>2012-05-29 14:37:59 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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>87647</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adrienne Walker">enne</reporter>
          <assigned_to name="Adrienne Walker">enne</assigned_to>
          <cc>bulach</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dtu</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>rniwa</cc>
    
    <cc>vangelis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>531548</commentid>
    <comment_count>0</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-01-06 17:53:18 -0800</bug_when>
    <thetext>[chromium] Add setting for painting debug info onto tiles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531551</commentid>
    <comment_count>1</comment_count>
      <attachid>121528</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-01-06 17:56:27 -0800</bug_when>
    <thetext>Created attachment 121528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531555</commentid>
    <comment_count>2</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-01-06 18:00:48 -0800</bug_when>
    <thetext>At paint time, this patch prints a block of text onto the layer with some debug information on top of whatever was painted into the layer.  It&apos;s useful to do it at paint time partially because you already have a GraphicsContext there, but also because it helps indicate whether invalidation or upload is failing.

This was quite helpful in tracking down http://crbug.com/107769.  I&apos;m not totally sure it&apos;s worth piping through to about:flags, so I just left it as a compile-time only flag.

I&apos;m not totally convinced that this should be committed, but jamesr asked for a patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531681</commentid>
    <comment_count>3</comment_count>
      <attachid>121528</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-07 12:33:26 -0800</bug_when>
    <thetext>Comment on attachment 121528
Patch

Attachment 121528 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/11184024

New failing tests:
http/tests/inspector-enabled/dedicated-workers-list.html
compositing/reflections/transform-inside-reflection.html
compositing/geometry/vertical-scroll-composited.html
compositing/geometry/layer-due-to-layer-children.html
compositing/geometry/ancestor-overflow-change.html
css2.1/20110323/abspos-containing-block-initial-004b.htm
compositing/reflections/nested-reflection-transition.html
compositing/direct-image-compositing.html
compositing/shadows/shadow-drawing.html
compositing/geometry/fixed-position-transform-composited-page-scale-down.html
css2.1/20110323/abspos-containing-block-initial-004d.htm
compositing/color-matching/image-color-matching.html
compositing/visibility/visibility-image-layers.html
compositing/geometry/layer-due-to-layer-children-deep.html
compositing/geometry/fixed-position-transform-composited-page-scale.html
compositing/scaling/tiled-layer-recursion.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>532551</commentid>
    <comment_count>4</comment_count>
      <attachid>121528</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-01-09 15:09:04 -0800</bug_when>
    <thetext>Comment on attachment 121528
Patch

Removing review flag and leaving this patch up as an FYI for anybody who wants this debugging tool.  I don&apos;t think it&apos;s worth committing and having to carry forward through future refactorings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>629649</commentid>
    <comment_count>5</comment_count>
      <attachid>143121</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-05-21 15:54:43 -0700</bug_when>
    <thetext>Created attachment 143121
Rebased</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634258</commentid>
    <comment_count>6</comment_count>
      <attachid>144140</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-05-25 13:50:05 -0700</bug_when>
    <thetext>Created attachment 144140
Cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634261</commentid>
    <comment_count>7</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-05-25 13:51:21 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Created an attachment (id=144140) [details]
&gt; Cleanup

I found this debug info useful again.  Safari has something similar, although they just print out repaint counts.

I think it&apos;s worth landing this and afterwards adding a command line flag or yet another about:flags entry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634309</commentid>
    <comment_count>8</comment_count>
      <attachid>144140</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-25 14:53:56 -0700</bug_when>
    <thetext>Comment on attachment 144140
Cleanup

This seems pretty reasonable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634371</commentid>
    <comment_count>9</comment_count>
      <attachid>144140</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-25 15:51:37 -0700</bug_when>
    <thetext>Comment on attachment 144140
Cleanup

Clearing flags on attachment: 144140

Committed r118580: &lt;http://trac.webkit.org/changeset/118580&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634372</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-25 15:51:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634604</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-05-25 23:53:03 -0700</bug_when>
    <thetext>It appears that this patch caused TiledLayerChromiumTest.pushDirtyTiles to crash on cr-mac and cr-win:

http://build.webkit.org/builders/Chromium%20Mac%20Release%20%28Tests%29/builds/17130/steps/webkit-unit-tests/logs/stdio

http://build.webkit.org/builders/Chromium%20Mac%20Release%20%28Tests%29/builds/17131/steps/webkit-unit-tests/logs/stdio

blame list:
http://trac.webkit.org/log/?action=stop_on_copy&amp;mode=stop_on_copy&amp;rev=118600&amp;stop_rev=118544&amp;limit=100&amp;verbose=on</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635104</commentid>
    <comment_count>12</comment_count>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2012-05-28 04:04:44 -0700</bug_when>
    <thetext>I confirmed this also crashes on linux canaries:

http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Linux/builds/25948/steps/webkit_unit_tests/logs/stdio

(and a local build with BUILDTYPE=Release also fails with this patch..)

I&apos;ll ask the sherrifbot to roll out this patch so that I can roll webkit, I hope it won&apos;t cause any trouble..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635109</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-28 04:06:56 -0700</bug_when>
    <thetext>Re-opened since this is blocked by 87647</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636450</commentid>
    <comment_count>14</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-05-29 14:37:59 -0700</bug_when>
    <thetext>I&apos;m just going to WONTFIX this and not spend the time addressing the unit test issues that showed up on non-Linux platforms.  It&apos;s going to be reverted anyway as a part of GTFO, so it doesn&apos;t seem worth the time.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121528</attachid>
            <date>2012-01-06 17:56:27 -0800</date>
            <delta_ts>2012-05-21 15:54:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75763-20120106175626.patch</filename>
            <type>text/plain</type>
            <size>13433</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA0MzYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTRiNjQyNTViODE4MTQ0
ZGQzNDc3Y2YwYWI0YzEzMGU4Y2U5MWUwNS4uOTkwZDhjYTIyM2ViYWJkMzUwMmFiYmU1MGZkYWFk
NWJkNGU2OGRlYyAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTAxLTA2ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
c2V0dGluZyBmb3IgcGFpbnRpbmcgZGVidWcgaW5mbyBvbnRvIHRpbGVzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTc2MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGNvbXBpbGUtdGltZSBzZXR0
aW5nIHRvIHBhaW50IGRlYnVnIGluZm9ybWF0aW9uIG9udG8gdGlsZXMuIFRoaXMKKyAgICAgICAg
Y2FuIGhlbHAgdG8gdW5kZXJzdGFuZCBwYWludCBjb3VudHMgYW5kIGxheWVyIGluZGljZXMuIFRo
aXMgc2V0dGluZyBpcworICAgICAgICBvZmYgYnkgZGVmYXVsdC4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNvbnRlbnRMYXllclBhaW50ZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDb250ZW50TGF5ZXJQYWludGVyOjpwYWludCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
TGF5ZXJQYWludGVyOjpDb250ZW50TGF5ZXJQYWludGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkNv
bnRlbnRMYXllckNocm9taXVtOjpjcmVhdGVUZXh0dXJlVXBkYXRlcik6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlVwZGF0YWJsZVRpbGU6OlVwZGF0YWJsZVRpbGUpOgorICAgICAgICAoV2ViQ29y
ZTo6VXBkYXRhYmxlVGlsZTo6c2V0VXBkYXRlRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6VXBk
YXRhYmxlVGlsZTo6aW5jcmVtZW50UGFpbnRDb3VudCk6CisgICAgICAgIChXZWJDb3JlOjpVcGRh
dGFibGVUaWxlOjp1cGRhdGVGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpVcGRhdGFibGVUaWxl
OjpwYWludENvdW50KToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkTGF5ZXJDaHJvbWl1bTo6VGls
ZWRMYXllckNocm9taXVtKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkTGF5ZXJDaHJvbWl1bTo6
cHJlcGFyZVRvVXBkYXRlVGlsZXMpOgorICAgICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9t
aXVtOjpwYWludERlYnVnVGlsZUluZm8pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oOgorICAgICAgICAoV2ViQ29yZTo6Q0NTZXR0
aW5nczo6Q0NTZXR0aW5ncyk6CisKIDIwMTItMDEtMDYgIENhaW8gTWFyY2VsbyBkZSBPbGl2ZWly
YSBGaWxobyAgPGNhaW8ub2xpdmVpcmFAb3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBVc2UgSGFz
aE1hcDxPd25QdHI+IGluIFNWR0F0dHJpYnV0ZVRvUHJvcGVydHlNYXAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9t
aXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRl
bnRMYXllckNocm9taXVtLmNwcAppbmRleCBlZjEwNWI1M2ZmZWFiMTM5OWI1MjNkOGM3ZDc5MDI1
MTI1YTM2Yzk3Li5iODRkNzEzMGE5ODc2OTljZjViZGYwMmQxNTgyMTA5ZjM0NzIzMGUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50
TGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwCkBAIC00OCw5ICs0OCw5IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIGNsYXNzIENvbnRlbnRMYXllclBhaW50ZXIgOiBwdWJsaWMgTGF5ZXJQ
YWludGVyQ2hyb21pdW0gewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENvbnRlbnRMYXllclBh
aW50ZXIpOwogcHVibGljOgotICAgIHN0YXRpYyBQYXNzT3duUHRyPENvbnRlbnRMYXllclBhaW50
ZXI+IGNyZWF0ZShDQ0xheWVyRGVsZWdhdGUqIGRlbGVnYXRlKQorICAgIHN0YXRpYyBQYXNzT3du
UHRyPENvbnRlbnRMYXllclBhaW50ZXI+IGNyZWF0ZShDQ0xheWVyRGVsZWdhdGUqIGRlbGVnYXRl
LCBUaWxlZExheWVyQ2hyb21pdW0qIGxheWVyKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0
UHRyKG5ldyBDb250ZW50TGF5ZXJQYWludGVyKGRlbGVnYXRlKSk7CisgICAgICAgIHJldHVybiBh
ZG9wdFB0cihuZXcgQ29udGVudExheWVyUGFpbnRlcihkZWxlZ2F0ZSwgbGF5ZXIpKTsKICAgICB9
CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25z
dCBJbnRSZWN0JiBjb250ZW50UmVjdCkKQEAgLTU4LDE5ICs1OCwyOSBAQCBwdWJsaWM6CiAgICAg
ICAgIGRvdWJsZSBwYWludFN0YXJ0ID0gY3VycmVudFRpbWUoKTsKICAgICAgICAgY29udGV4dC5j
bGVhclJlY3QoY29udGVudFJlY3QpOwogICAgICAgICBjb250ZXh0LmNsaXAoY29udGVudFJlY3Qp
OwotICAgICAgICBtX2RlbGVnYXRlLT5wYWludENvbnRlbnRzKGNvbnRleHQsIGNvbnRlbnRSZWN0
KTsKLSAgICAgICAgZG91YmxlIHBhaW50RW5kID0gY3VycmVudFRpbWUoKTsKLSAgICAgICAgZG91
YmxlIHBpeGVsc1BlclNlYyA9IChjb250ZW50UmVjdC53aWR0aCgpICogY29udGVudFJlY3QuaGVp
Z2h0KCkpIC8gKHBhaW50RW5kIC0gcGFpbnRTdGFydCk7Ci0gICAgICAgIFBsYXRmb3JtU3VwcG9y
dDo6aGlzdG9ncmFtQ3VzdG9tQ291bnRzKCJSZW5kZXJlcjQuQWNjZWxDb250ZW50UGFpbnREdXJh
dGlvbk1TIiwgKHBhaW50RW5kIC0gcGFpbnRTdGFydCkgKiAxMDAwLCAwLCAxMjAsIDMwKTsKLSAg
ICAgICAgUGxhdGZvcm1TdXBwb3J0OjpoaXN0b2dyYW1DdXN0b21Db3VudHMoIlJlbmRlcmVyNC5B
Y2NlbENvbnRlbnRQYWludE1lZ2FwaXhQZXJTZWNvbmQiLCBwaXhlbHNQZXJTZWMgLyAxMDAwMDAw
LCAxMCwgMjEwLCAzMCk7CisKKyAgICAgICAgeworICAgICAgICAgICAgR3JhcGhpY3NDb250ZXh0
U3RhdGVTYXZlciBzdGF0ZVNhdmVyKGNvbnRleHQsIG1fbGF5ZXItPmxheWVyVHJlZUhvc3QoKS0+
c2V0dGluZ3MoKS5kZWJ1Z1Nob3dUaWxlSW5mbyk7CisKKyAgICAgICAgICAgIG1fZGVsZWdhdGUt
PnBhaW50Q29udGVudHMoY29udGV4dCwgY29udGVudFJlY3QpOworICAgICAgICAgICAgZG91Ymxl
IHBhaW50RW5kID0gY3VycmVudFRpbWUoKTsKKyAgICAgICAgICAgIGRvdWJsZSBwaXhlbHNQZXJT
ZWMgPSAoY29udGVudFJlY3Qud2lkdGgoKSAqIGNvbnRlbnRSZWN0LmhlaWdodCgpKSAvIChwYWlu
dEVuZCAtIHBhaW50U3RhcnQpOworICAgICAgICAgICAgUGxhdGZvcm1TdXBwb3J0OjpoaXN0b2dy
YW1DdXN0b21Db3VudHMoIlJlbmRlcmVyNC5BY2NlbENvbnRlbnRQYWludER1cmF0aW9uTVMiLCAo
cGFpbnRFbmQgLSBwYWludFN0YXJ0KSAqIDEwMDAsIDAsIDEyMCwgMzApOworICAgICAgICAgICAg
UGxhdGZvcm1TdXBwb3J0OjpoaXN0b2dyYW1DdXN0b21Db3VudHMoIlJlbmRlcmVyNC5BY2NlbENv
bnRlbnRQYWludE1lZ2FwaXhQZXJTZWNvbmQiLCBwaXhlbHNQZXJTZWMgLyAxMDAwMDAwLCAxMCwg
MjEwLCAzMCk7CisgICAgICAgIH0KKworICAgICAgICBpZiAobV9sYXllci0+bGF5ZXJUcmVlSG9z
dCgpLT5zZXR0aW5ncygpLmRlYnVnU2hvd1RpbGVJbmZvKQorICAgICAgICAgICAgbV9sYXllci0+
cGFpbnREZWJ1Z1RpbGVJbmZvKGNvbnRleHQsIGNvbnRlbnRSZWN0KTsKICAgICB9CiBwcml2YXRl
OgotICAgIGV4cGxpY2l0IENvbnRlbnRMYXllclBhaW50ZXIoQ0NMYXllckRlbGVnYXRlKiBkZWxl
Z2F0ZSkKKyAgICBleHBsaWNpdCBDb250ZW50TGF5ZXJQYWludGVyKENDTGF5ZXJEZWxlZ2F0ZSog
ZGVsZWdhdGUsIFRpbGVkTGF5ZXJDaHJvbWl1bSogbGF5ZXIpCiAgICAgICAgIDogbV9kZWxlZ2F0
ZShkZWxlZ2F0ZSkKKyAgICAgICAgLCBtX2xheWVyKGxheWVyKQogICAgIHsKICAgICB9CiAKICAg
ICBDQ0xheWVyRGVsZWdhdGUqIG1fZGVsZWdhdGU7CisgICAgVGlsZWRMYXllckNocm9taXVtKiBt
X2xheWVyOwogfTsKIAogUGFzc1JlZlB0cjxDb250ZW50TGF5ZXJDaHJvbWl1bT4gQ29udGVudExh
eWVyQ2hyb21pdW06OmNyZWF0ZShDQ0xheWVyRGVsZWdhdGUqIGRlbGVnYXRlKQpAQCAtMTIwLDE3
ICsxMzAsMTcgQEAgdm9pZCBDb250ZW50TGF5ZXJDaHJvbWl1bTo6Y3JlYXRlVGV4dHVyZVVwZGF0
ZXIoY29uc3QgQ0NMYXllclRyZWVIb3N0KiBob3N0KQogewogI2lmIFVTRShTS0lBKQogICAgIGlm
IChob3N0LT5zZXR0aW5ncygpLmFjY2VsZXJhdGVQYWludGluZykgewotICAgICAgICBtX3RleHR1
cmVVcGRhdGVyID0gRnJhbWVCdWZmZXJTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVy
OjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKG1fZGVsZWdhdGUpKTsKKyAgICAg
ICAgbV90ZXh0dXJlVXBkYXRlciA9IEZyYW1lQnVmZmVyU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0
dXJlVXBkYXRlcjo6Y3JlYXRlKENvbnRlbnRMYXllclBhaW50ZXI6OmNyZWF0ZShtX2RlbGVnYXRl
LCB0aGlzKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBpZiAoaG9zdC0+c2V0dGlu
Z3MoKS5wZXJUaWxlUGFpbnRpbmcpIHsKLSAgICAgICAgbV90ZXh0dXJlVXBkYXRlciA9IEJpdG1h
cFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShDb250ZW50TGF5ZXJQ
YWludGVyOjpjcmVhdGUobV9kZWxlZ2F0ZSksIGhvc3QtPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRp
ZXMoKS51c2luZ01hcFN1Yik7CisgICAgICAgIG1fdGV4dHVyZVVwZGF0ZXIgPSBCaXRtYXBTa1Bp
Y3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRl
cjo6Y3JlYXRlKG1fZGVsZWdhdGUsIHRoaXMpLCBob3N0LT5sYXllclJlbmRlcmVyQ2FwYWJpbGl0
aWVzKCkudXNpbmdNYXBTdWIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogI2VuZGlmIC8vIFVT
RShTS0lBKQogCi0gICAgbV90ZXh0dXJlVXBkYXRlciA9IEJpdG1hcENhbnZhc0xheWVyVGV4dHVy
ZVVwZGF0ZXI6OmNyZWF0ZShDb250ZW50TGF5ZXJQYWludGVyOjpjcmVhdGUobV9kZWxlZ2F0ZSks
IGhvc3QtPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CisgICAgbV90
ZXh0dXJlVXBkYXRlciA9IEJpdG1hcENhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShD
b250ZW50TGF5ZXJQYWludGVyOjpjcmVhdGUobV9kZWxlZ2F0ZSwgdGhpcyksIGhvc3QtPmxheWVy
UmVuZGVyZXJDYXBhYmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CiB9CiAKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJv
bWl1bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxl
ZExheWVyQ2hyb21pdW0uY3BwCmluZGV4IGFkMmNiMTNmYzczMDkzNmE5Yzk0ZDRhODg0NTEzODNj
M2NkMmYxMzguLjc5ZjAxN2NjODkwYjVmYzJhZWE1NTIwMjBiZWIzMmY0ZDBkYjBjYjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5
ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcApAQCAtMjksMTEgKzI5LDE0IEBACiAKICNpbmNs
dWRlICJUaWxlZExheWVyQ2hyb21pdW0uaCIKIAorI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2lu
Y2x1ZGUgIkZvbnREZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgi
CiAjaW5jbHVkZSAiTGF5ZXJSZW5kZXJlckNocm9taXVtLmgiCiAjaW5jbHVkZSAiTWFuYWdlZFRl
eHR1cmUuaCIKICNpbmNsdWRlICJNYXRoRXh0cmFzLmgiCiAjaW5jbHVkZSAiUmVnaW9uLmgiCisj
aW5jbHVkZSAiVGV4dFJ1bi5oIgogI2luY2x1ZGUgIlRleHRTdHJlYW0uaCIKICNpbmNsdWRlICJj
Yy9DQ0xheWVySW1wbC5oIgogI2luY2x1ZGUgImNjL0NDVGV4dHVyZVVwZGF0ZXIuaCIKQEAgLTUz
LDcgKzU2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgVXBkYXRhYmxlVGlsZSA6IHB1
YmxpYyBDQ0xheWVyVGlsaW5nRGF0YTo6VGlsZSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUo
VXBkYXRhYmxlVGlsZSk7CiBwdWJsaWM6Ci0gICAgZXhwbGljaXQgVXBkYXRhYmxlVGlsZShQYXNz
T3duUHRyPExheWVyVGV4dHVyZVVwZGF0ZXI6OlRleHR1cmU+IHRleHR1cmUpIDogbV90ZXh0dXJl
KHRleHR1cmUpIHsgfQorICAgIGV4cGxpY2l0IFVwZGF0YWJsZVRpbGUoUGFzc093blB0cjxMYXll
clRleHR1cmVVcGRhdGVyOjpUZXh0dXJlPiB0ZXh0dXJlKSA6IG1fdGV4dHVyZSh0ZXh0dXJlKSwg
bV91cGRhdGVGcmFtZSgwKSwgbV9wYWludENvdW50KDApIHsgfQogCiAgICAgTGF5ZXJUZXh0dXJl
VXBkYXRlcjo6VGV4dHVyZSogdGV4dHVyZSgpIHsgcmV0dXJuIG1fdGV4dHVyZS5nZXQoKTsgfQog
ICAgIE1hbmFnZWRUZXh0dXJlKiBtYW5hZ2VkVGV4dHVyZSgpIHsgcmV0dXJuIG1fdGV4dHVyZS0+
dGV4dHVyZSgpOyB9CkBAIC02MSwxMCArNjQsMTcgQEAgcHVibGljOgogICAgIGJvb2wgaXNEaXJ0
eSgpIGNvbnN0IHsgcmV0dXJuICFtX2RpcnR5UmVjdC5pc0VtcHR5KCk7IH0KICAgICB2b2lkIGNs
ZWFyRGlydHkoKSB7IG1fZGlydHlSZWN0ID0gSW50UmVjdCgpOyB9CiAKKyAgICB2b2lkIHNldFVw
ZGF0ZUZyYW1lKGludCB1cGRhdGVGcmFtZSkgeyBtX3VwZGF0ZUZyYW1lID0gdXBkYXRlRnJhbWU7
IH0KKyAgICB2b2lkIGluY3JlbWVudFBhaW50Q291bnQoKSB7IG1fcGFpbnRDb3VudCsrOyB9Cisg
ICAgaW50IHVwZGF0ZUZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV91cGRhdGVGcmFtZTsgfQorICAg
IGludCBwYWludENvdW50KCkgY29uc3QgeyByZXR1cm4gbV9wYWludENvdW50OyB9CisKICAgICBJ
bnRSZWN0IG1fZGlydHlSZWN0OwogICAgIEludFJlY3QgbV91cGRhdGVSZWN0OwogcHJpdmF0ZToK
ICAgICBPd25QdHI8TGF5ZXJUZXh0dXJlVXBkYXRlcjo6VGV4dHVyZT4gbV90ZXh0dXJlOworICAg
IGludCBtX3VwZGF0ZUZyYW1lOworICAgIGludCBtX3BhaW50Q291bnQ7CiB9OwogCiBUaWxlZExh
eWVyQ2hyb21pdW06OlRpbGVkTGF5ZXJDaHJvbWl1bShDQ0xheWVyRGVsZWdhdGUqIGRlbGVnYXRl
KQpAQCAtNzUsNyArODUsNyBAQCBUaWxlZExheWVyQ2hyb21pdW06OlRpbGVkTGF5ZXJDaHJvbWl1
bShDQ0xheWVyRGVsZWdhdGUqIGRlbGVnYXRlKQogICAgICwgbV9zYW1wbGVkVGV4ZWxGb3JtYXQo
TGF5ZXJUZXh0dXJlVXBkYXRlcjo6U2FtcGxlZFRleGVsRm9ybWF0SW52YWxpZCkKICAgICAsIG1f
dGlsaW5nT3B0aW9uKEF1dG9UaWxlKQogewotICAgIG1fdGlsZXIgPSBDQ0xheWVyVGlsaW5nRGF0
YTo6Y3JlYXRlKEludFNpemUoZGVmYXVsdFRpbGVTaXplLCBkZWZhdWx0VGlsZVNpemUpLCBDQ0xh
eWVyVGlsaW5nRGF0YTo6SGFzQm9yZGVyVGV4ZWxzKTsKKyAgICBtX3RpbGVyID0gQ0NMYXllclRp
bGluZ0RhdGE6OmNyZWF0ZShJbnRTaXplKGRlZmF1bHRUaWxlU2l6ZSwgZGVmYXVsdFRpbGVTaXpl
KSwgQ0NMYXllclRpbGluZ0RhdGE6Ok5vQm9yZGVyVGV4ZWxzKTsKIH0KIAogVGlsZWRMYXllckNo
cm9taXVtOjp+VGlsZWRMYXllckNocm9taXVtKCkKQEAgLTM4Niw2ICszOTYsMTMgQEAgdm9pZCBU
aWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZVRpbGVzKGJvb2wgaWRsZSwgaW50IGxl
ZnQsIGludCB0b3AsIGludAogICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0K
IAorICAgICAgICAgICAgaWYgKHRpbGUtPmlzRGlydHkoKSAmJiBsYXllclRyZWVIb3N0KCktPnNl
dHRpbmdzKCkuZGVidWdTaG93VGlsZUluZm8pIHsKKyAgICAgICAgICAgICAgICAvLyBJbnZhbGlk
YXRlIHRoZSBlbnRpcmUgdGlsZSBzbyB0aGF0IHRleHQgdXBkYXRlcy4KKyAgICAgICAgICAgICAg
ICB0aWxlLT5tX2RpcnR5UmVjdCA9IG1fdGlsZXItPnRpbGVSZWN0KHRpbGUpOworICAgICAgICAg
ICAgICAgIHRpbGUtPnNldFVwZGF0ZUZyYW1lKGxheWVyVHJlZUhvc3QoKS0+ZnJhbWVOdW1iZXIo
KSk7CisgICAgICAgICAgICAgICAgdGlsZS0+aW5jcmVtZW50UGFpbnRDb3VudCgpOworICAgICAg
ICAgICAgfQorCiAgICAgICAgICAgICBkaXJ0eUxheWVyUmVjdC51bml0ZSh0aWxlLT5tX2RpcnR5
UmVjdCk7CiAgICAgICAgIH0KICAgICB9CkBAIC01NDAsNSArNTU3LDcxIEBAIEludFJlY3QgVGls
ZWRMYXllckNocm9taXVtOjppZGxlUGFpbnRSZWN0KGNvbnN0IEludFJlY3QmIHZpc2libGVMYXll
clJlY3QpCiAgICAgcmV0dXJuIHByZXBhaW50UmVjdDsKIH0KIAordm9pZCBUaWxlZExheWVyQ2hy
b21pdW06OnBhaW50RGVidWdUaWxlSW5mbyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0
IEludFJlY3QmIGxheWVyUmVjdCkKK3sKKyAgICBGb250Q2FjaGVQdXJnZVByZXZlbnRlciBmb250
Q2FjaGVQdXJnZVByZXZlbnRlcjsKKworICAgIC8vIERvbid0IGJvdGhlciB3cml0aW5nIGluZm8g
b250byBzbWFsbCB0aWxlcy4KKyAgICBjb25zdCBpbnQgbWluRGltZW5zaW9uID0gMjAwOworICAg
IGlmIChtX3RpbGVyLT50aWxlU2l6ZSgpLndpZHRoKCkgPCBtaW5EaW1lbnNpb24gfHwgbV90aWxl
ci0+dGlsZVNpemUoKS5oZWlnaHQoKSA8IG1pbkRpbWVuc2lvbikKKyAgICAgICAgcmV0dXJuOwor
CisgICAgaWYgKCFtX2RlYnVnSW5mb0ZvbnQpIHsKKyAgICAgICAgRm9udERlc2NyaXB0aW9uIGZv
bnREZXNjOworICAgICAgICBmb250RGVzYy5zZXRHZW5lcmljRmFtaWx5KEZvbnREZXNjcmlwdGlv
bjo6TW9ub3NwYWNlRmFtaWx5KTsKKyAgICAgICAgZm9udERlc2Muc2V0Q29tcHV0ZWRTaXplKDEw
KTsKKyAgICAgICAgbV9kZWJ1Z0luZm9Gb250ID0gYWRvcHRQdHIobmV3IEZvbnQoZm9udERlc2Ms
IDAsIDApKTsKKyAgICAgICAgbV9kZWJ1Z0luZm9Gb250LT51cGRhdGUoMCk7CisgICAgfQorCisg
ICAgaW50IGZvbnRIZWlnaHQgPSBtX2RlYnVnSW5mb0ZvbnQtPmZvbnRNZXRyaWNzKCkuZmxvYXRI
ZWlnaHQoKSArIDI7CisKKyAgICBpbnQgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tOworICAgIG1f
dGlsZXItPmxheWVyUmVjdFRvVGlsZUluZGljZXMobGF5ZXJSZWN0LCBsZWZ0LCB0b3AsIHJpZ2h0
LCBib3R0b20pOworICAgIGZvciAoaW50IGogPSB0b3A7IGogPD0gYm90dG9tOyArK2opIHsKKyAg
ICAgICAgZm9yIChpbnQgaSA9IGxlZnQ7IGkgPD0gcmlnaHQ7ICsraSkgeworICAgICAgICAgICAg
VXBkYXRhYmxlVGlsZSogdGlsZSA9IHRpbGVBdChpLCBqKTsKKyAgICAgICAgICAgIGlmICghdGls
ZSkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAgICAgSW50UmVjdCB0aWxl
UmVjdCA9IG1fdGlsZXItPnRpbGVSZWN0KHRpbGUpOworICAgICAgICAgICAgU3RyaW5nIGluZm9b
XSA9IHsKKyAgICAgICAgICAgICAgICBTdHJpbmc6OmZvcm1hdCgiTGF5ZXJJZCglZCkiLCBpZCgp
KSwKKyAgICAgICAgICAgICAgICBTdHJpbmc6OmZvcm1hdCgiSW5kZXgoJWQsICVkKSIsIGksIGop
LAorICAgICAgICAgICAgICAgIFN0cmluZzo6Zm9ybWF0KCJUaWxlKCVkLCAlZCwgJWQsICVkKSIs
IHRpbGVSZWN0LngoKSwgdGlsZVJlY3QueSgpLCB0aWxlUmVjdC53aWR0aCgpLCB0aWxlUmVjdC5o
ZWlnaHQoKSksCisgICAgICAgICAgICAgICAgU3RyaW5nOjpmb3JtYXQoIkZyYW1lKCVkKSIsIHRp
bGUtPnVwZGF0ZUZyYW1lKCkpLAorICAgICAgICAgICAgICAgIFN0cmluZzo6Zm9ybWF0KCJDb3Vu
dCglZCkiLCB0aWxlLT5wYWludENvdW50KCkpLAorICAgICAgICAgICAgICAgIFN0cmluZzo6Zm9y
bWF0KCJMYXllciglZCwgJWQpIiwgY29udGVudEJvdW5kcygpLndpZHRoKCksIGNvbnRlbnRCb3Vu
ZHMoKS5oZWlnaHQoKSksCisgICAgICAgICAgICB9OworICAgICAgICAgICAgY29uc3Qgc2l6ZV90
IGxpbmVzID0gc2l6ZW9mKGluZm8pIC8gc2l6ZW9mKGluZm9bMF0pOworICAgICAgICAgICAgaW50
IHdpZHRoW2xpbmVzXTsKKworICAgICAgICAgICAgSW50UG9pbnQgY2VudGVyID0gbV90aWxlci0+
dGlsZVJlY3QodGlsZSkuY2VudGVyKCk7CisgICAgICAgICAgICBpbnQgY3VycmVudFkgPSBjZW50
ZXIueSgpIC0gZm9udEhlaWdodCAqIGxpbmVzIC8gMjsKKworICAgICAgICAgICAgaW50IG1heFdp
ZHRoID0gMDsKKyAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGluZXM7ICsraSkg
eworICAgICAgICAgICAgICAgIHdpZHRoW2ldID0gbV9kZWJ1Z0luZm9Gb250LT53aWR0aChUZXh0
UnVuKGluZm9baV0pKTsKKyAgICAgICAgICAgICAgICBtYXhXaWR0aCA9IG1heCh3aWR0aFtpXSwg
bWF4V2lkdGgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBJbnRSZWN0IHRleHRSZWN0
KEludFBvaW50KGNlbnRlci54KCkgLSBtYXhXaWR0aCAvIDIsIGN1cnJlbnRZIC0gZm9udEhlaWdo
dCAvIDIpLCBJbnRTaXplKG1heFdpZHRoLCBmb250SGVpZ2h0ICogbGluZXMgKyBmb250SGVpZ2h0
IC8gMikpOworCisgICAgICAgICAgICBjb250ZXh0LnNldEZpbGxDb2xvcihDb2xvcigxOTIsIDE5
MiwgMTkyLCAxOTIpLCBDb2xvclNwYWNlRGV2aWNlUkdCKTsKKyAgICAgICAgICAgIGNvbnRleHQu
ZmlsbFJlY3QoRmxvYXRSZWN0KHRleHRSZWN0KSk7CisKKyAgICAgICAgICAgIGNvbnRleHQuc2V0
RmlsbENvbG9yKENvbG9yKDY0LCA2NCwgNjQpLCBDb2xvclNwYWNlRGV2aWNlUkdCKTsKKworICAg
ICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBsaW5lczsgKytpKSB7CisgICAgICAgICAg
ICAgICAgVGV4dFJ1biBydW4oaW5mb1tpXSk7CisgICAgICAgICAgICAgICAgaW50IHRleHRXaWR0
aCA9IG1fZGVidWdJbmZvRm9udC0+d2lkdGgocnVuKTsKKyAgICAgICAgICAgICAgICBJbnRQb2lu
dCB0ZXh0U3RhcnQoY2VudGVyLngoKSAtIHRleHRXaWR0aCAvIDIsIGN1cnJlbnRZICsgZm9udEhl
aWdodCAvIDIpOworICAgICAgICAgICAgICAgIGNvbnRleHQuZHJhd1RleHQoKm1fZGVidWdJbmZv
Rm9udCwgcnVuLCB0ZXh0U3RhcnQpOworICAgICAgICAgICAgICAgIGN1cnJlbnRZICs9IGZvbnRI
ZWlnaHQ7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9Cit9CisKIH0KICNlbmRpZiAv
LyBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5o
CmluZGV4IGYwYWIwNTdlZmYyMzA2Mjc3MTUzM2QwN2Q4NzQyMGMzNThhZjVjZjQuLjhkZjJkOTI3
ZTE2NmQ1NGE0MGY2MGVhOGYzZGY1MTNlYzFmYjM2MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJv
bWl1bS5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJ
TkcpCiAKKyNpbmNsdWRlICJGb250LmgiCiAjaW5jbHVkZSAiTGF5ZXJDaHJvbWl1bS5oIgogI2lu
Y2x1ZGUgImNjL0NDTGF5ZXJUaWxpbmdEYXRhLmgiCiAjaW5jbHVkZSAiY2MvQ0NUaWxlZExheWVy
SW1wbC5oIgpAQCAtNjEsNiArNjIsOCBAQCBwdWJsaWM6CiAgICAgLy8gcmVjeWNsZWQgYnkgdGhl
IHRleHR1cmUgbWFuYWdlci4KICAgICB2b2lkIHByb3RlY3RUaWxlVGV4dHVyZXMoY29uc3QgSW50
UmVjdCYgbGF5ZXJSZWN0KTsKIAorICAgIHZvaWQgcGFpbnREZWJ1Z1RpbGVJbmZvKEdyYXBoaWNz
Q29udGV4dCYsIGNvbnN0IEludFJlY3QmKTsKKwogcHJvdGVjdGVkOgogICAgIGV4cGxpY2l0IFRp
bGVkTGF5ZXJDaHJvbWl1bShDQ0xheWVyRGVsZWdhdGUqKTsKIApAQCAtMTIwLDYgKzEyMyw3IEBA
IHByaXZhdGU6CiAKICAgICBUaWxpbmdPcHRpb24gbV90aWxpbmdPcHRpb247CiAgICAgT3duUHRy
PENDTGF5ZXJUaWxpbmdEYXRhPiBtX3RpbGVyOworICAgIE93blB0cjxGb250PiBtX2RlYnVnSW5m
b0ZvbnQ7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCmluZGV4IDRmMjkzZWNh
NWEyMTIzZDc2NWE2NDBlNGU3NDI4NGZkNTY3NjMwYWUuLjZiMTVmNmQxNmUxMThkNmVmMTAyYTAy
M2M3OWRlZTcxMjE5YTFhMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCkBAIC03Miw2
ICs3Miw3IEBAIHN0cnVjdCBDQ1NldHRpbmdzIHsKICAgICBDQ1NldHRpbmdzKCkKICAgICAgICAg
ICAgIDogYWNjZWxlcmF0ZVBhaW50aW5nKGZhbHNlKQogICAgICAgICAgICAgLCBjb21wb3NpdGVP
ZmZzY3JlZW4oZmFsc2UpCisgICAgICAgICAgICAsIGRlYnVnU2hvd1RpbGVJbmZvKGZhbHNlKQog
ICAgICAgICAgICAgLCBzaG93RlBTQ291bnRlcihmYWxzZSkKICAgICAgICAgICAgICwgc2hvd1Bs
YXRmb3JtTGF5ZXJUcmVlKGZhbHNlKQogICAgICAgICAgICAgLCByZWZyZXNoUmF0ZSgwKQpAQCAt
ODAsNiArODEsNyBAQCBzdHJ1Y3QgQ0NTZXR0aW5ncyB7CiAKICAgICBib29sIGFjY2VsZXJhdGVQ
YWludGluZzsKICAgICBib29sIGNvbXBvc2l0ZU9mZnNjcmVlbjsKKyAgICBib29sIGRlYnVnU2hv
d1RpbGVJbmZvOwogICAgIGJvb2wgc2hvd0ZQU0NvdW50ZXI7CiAgICAgYm9vbCBzaG93UGxhdGZv
cm1MYXllclRyZWU7CiAgICAgZG91YmxlIHJlZnJlc2hSYXRlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143121</attachid>
            <date>2012-05-21 15:54:43 -0700</date>
            <delta_ts>2012-05-25 13:50:01 -0700</delta_ts>
            <desc>Rebased</desc>
            <filename>bug-75763-20120521155443.patch</filename>
            <type>text/plain</type>
            <size>12277</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3ODExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjg0Zjc4Njk1Y2Q1Yzgw
NjZhYzJmYTMyMjFjN2EzMTJmOTgzZmIxMC4uNjM0ZDFjM2ExZDRkODI5ODAxZmU3M2I1NWQzMDE1
MjQ4MmVjYjRlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTAxLTA2ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
c2V0dGluZyBmb3IgcGFpbnRpbmcgZGVidWcgaW5mbyBvbnRvIHRpbGVzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTc2MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGNvbXBpbGUtdGltZSBzZXR0
aW5nIHRvIHBhaW50IGRlYnVnIGluZm9ybWF0aW9uIG9udG8gdGlsZXMuIFRoaXMKKyAgICAgICAg
Y2FuIGhlbHAgdG8gdW5kZXJzdGFuZCBwYWludCBjb3VudHMgYW5kIGxheWVyIGluZGljZXMuIFRo
aXMgc2V0dGluZyBpcworICAgICAgICBvZmYgYnkgZGVmYXVsdC4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNvbnRlbnRMYXllclBhaW50ZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDb250ZW50TGF5ZXJQYWludGVyOjpwYWludCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50
TGF5ZXJQYWludGVyOjpDb250ZW50TGF5ZXJQYWludGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkNv
bnRlbnRMYXllckNocm9taXVtOjpjcmVhdGVUZXh0dXJlVXBkYXRlcik6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlVwZGF0YWJsZVRpbGU6OlVwZGF0YWJsZVRpbGUpOgorICAgICAgICAoV2ViQ29y
ZTo6VXBkYXRhYmxlVGlsZTo6c2V0VXBkYXRlRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6VXBk
YXRhYmxlVGlsZTo6aW5jcmVtZW50UGFpbnRDb3VudCk6CisgICAgICAgIChXZWJDb3JlOjpVcGRh
dGFibGVUaWxlOjp1cGRhdGVGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpVcGRhdGFibGVUaWxl
OjpwYWludENvdW50KToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkTGF5ZXJDaHJvbWl1bTo6VGls
ZWRMYXllckNocm9taXVtKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVkTGF5ZXJDaHJvbWl1bTo6
cHJlcGFyZVRvVXBkYXRlVGlsZXMpOgorICAgICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9t
aXVtOjpwYWludERlYnVnVGlsZUluZm8pOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oOgorICAgICAgICAoV2ViQ29yZTo6Q0NTZXR0
aW5nczo6Q0NTZXR0aW5ncyk6CisKIDIwMTItMDUtMjEgQW5uYSBDYXZlbmRlciAgPGFubmFjY0Bj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgT25seSByZW5kZXIgdGV4dCB0cmFjayBjdWVzIGlmIGtp
bmQ9Y2FwdGlvbnMgb3Iga2luZD1zdWJ0aXRsZXMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50TGF5ZXJDaHJvbWl1bS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50TGF5ZXJDaHJv
bWl1bS5jcHAKaW5kZXggYWU4ZDMyMDhiZmJhYjhkN2FkZTk4MmE3ZDhhOTNhMmQ4M2VkN2RhZi4u
YTI5NWYxNzg5YzVkZGNhNDBmODA4ZTZkNTM3ZWM3OTM1M2M4MWJjMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21p
dW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0Nv
bnRlbnRMYXllckNocm9taXVtLmNwcApAQCAtNDksOSArNDksOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBjbGFzcyBDb250ZW50TGF5ZXJQYWludGVyIDogcHVibGljIExheWVyUGFpbnRlckNocm9t
aXVtIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDb250ZW50TGF5ZXJQYWludGVyKTsKIHB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc093blB0cjxDb250ZW50TGF5ZXJQYWludGVyPiBjcmVhdGUo
Q29udGVudExheWVyRGVsZWdhdGUqIGRlbGVnYXRlKQorICAgIHN0YXRpYyBQYXNzT3duUHRyPENv
bnRlbnRMYXllclBhaW50ZXI+IGNyZWF0ZShDb250ZW50TGF5ZXJEZWxlZ2F0ZSogZGVsZWdhdGUs
IFRpbGVkTGF5ZXJDaHJvbWl1bSogbGF5ZXIpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRQ
dHIobmV3IENvbnRlbnRMYXllclBhaW50ZXIoZGVsZWdhdGUpKTsKKyAgICAgICAgcmV0dXJuIGFk
b3B0UHRyKG5ldyBDb250ZW50TGF5ZXJQYWludGVyKGRlbGVnYXRlLCBsYXllcikpOwogICAgIH0K
IAogICAgIHZpcnR1YWwgdm9pZCBwYWludChHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0
IEludFJlY3QmIGNvbnRlbnRSZWN0KQpAQCAtNTksMTkgKzU5LDI2IEBAIHB1YmxpYzoKICAgICAg
ICAgZG91YmxlIHBhaW50U3RhcnQgPSBjdXJyZW50VGltZSgpOwogICAgICAgICBjb250ZXh0LmNs
ZWFyUmVjdChjb250ZW50UmVjdCk7CiAgICAgICAgIGNvbnRleHQuY2xpcChjb250ZW50UmVjdCk7
CisgICAgICAgIHsKKyAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVy
KGNvbnRleHQsIG1fbGF5ZXItPmxheWVyVHJlZUhvc3QoKS0+c2V0dGluZ3MoKS5kZWJ1Z1Nob3dU
aWxlSW5mbyk7CiAgICAgICAgIG1fZGVsZWdhdGUtPnBhaW50Q29udGVudHMoY29udGV4dCwgY29u
dGVudFJlY3QpOwogICAgICAgICBkb3VibGUgcGFpbnRFbmQgPSBjdXJyZW50VGltZSgpOwogICAg
ICAgICBkb3VibGUgcGl4ZWxzUGVyU2VjID0gKGNvbnRlbnRSZWN0LndpZHRoKCkgKiBjb250ZW50
UmVjdC5oZWlnaHQoKSkgLyAocGFpbnRFbmQgLSBwYWludFN0YXJ0KTsKICAgICAgICAgV2ViS2l0
OjpQbGF0Zm9ybTo6Y3VycmVudCgpLT5oaXN0b2dyYW1DdXN0b21Db3VudHMoIlJlbmRlcmVyNC5B
Y2NlbENvbnRlbnRQYWludER1cmF0aW9uTVMiLCAocGFpbnRFbmQgLSBwYWludFN0YXJ0KSAqIDEw
MDAsIDAsIDEyMCwgMzApOwogICAgICAgICBXZWJLaXQ6OlBsYXRmb3JtOjpjdXJyZW50KCktPmhp
c3RvZ3JhbUN1c3RvbUNvdW50cygiUmVuZGVyZXI0LkFjY2VsQ29udGVudFBhaW50TWVnYXBpeFBl
clNlY29uZCIsIHBpeGVsc1BlclNlYyAvIDEwMDAwMDAsIDEwLCAyMTAsIDMwKTsKKyAgICAgICAg
fQorICAgICAgICBpZiAobV9sYXllci0+bGF5ZXJUcmVlSG9zdCgpLT5zZXR0aW5ncygpLmRlYnVn
U2hvd1RpbGVJbmZvKQorICAgICAgICAgICAgbV9sYXllci0+cGFpbnREZWJ1Z1RpbGVJbmZvKGNv
bnRleHQsIGNvbnRlbnRSZWN0KTsKICAgICB9CiBwcml2YXRlOgotICAgIGV4cGxpY2l0IENvbnRl
bnRMYXllclBhaW50ZXIoQ29udGVudExheWVyRGVsZWdhdGUqIGRlbGVnYXRlKQorICAgIGV4cGxp
Y2l0IENvbnRlbnRMYXllclBhaW50ZXIoQ29udGVudExheWVyRGVsZWdhdGUqIGRlbGVnYXRlLCBU
aWxlZExheWVyQ2hyb21pdW0qIGxheWVyKQogICAgICAgICA6IG1fZGVsZWdhdGUoZGVsZWdhdGUp
CisgICAgICAgICwgbV9sYXllcihsYXllcikKICAgICB7CiAgICAgfQogCiAgICAgQ29udGVudExh
eWVyRGVsZWdhdGUqIG1fZGVsZWdhdGU7CisgICAgVGlsZWRMYXllckNocm9taXVtKiBtX2xheWVy
OwogfTsKIAogUGFzc1JlZlB0cjxDb250ZW50TGF5ZXJDaHJvbWl1bT4gQ29udGVudExheWVyQ2hy
b21pdW06OmNyZWF0ZShDb250ZW50TGF5ZXJEZWxlZ2F0ZSogZGVsZWdhdGUpCkBAIC0xMjYsMTEg
KzEzMywxMSBAQCB2b2lkIENvbnRlbnRMYXllckNocm9taXVtOjpjcmVhdGVUZXh0dXJlVXBkYXRl
cklmTmVlZGVkKCkKICAgICBpZiAobV90ZXh0dXJlVXBkYXRlcikKICAgICAgICAgcmV0dXJuOwog
ICAgIGlmIChsYXllclRyZWVIb3N0KCktPnNldHRpbmdzKCkuYWNjZWxlcmF0ZVBhaW50aW5nKQot
ICAgICAgICBtX3RleHR1cmVVcGRhdGVyID0gRnJhbWVCdWZmZXJTa1BpY3R1cmVDYW52YXNMYXll
clRleHR1cmVVcGRhdGVyOjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKG1fZGVs
ZWdhdGUpKTsKKyAgICAgICAgbV90ZXh0dXJlVXBkYXRlciA9IEZyYW1lQnVmZmVyU2tQaWN0dXJl
Q2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlcjo6Y3JlYXRlKENvbnRlbnRMYXllclBhaW50ZXI6OmNy
ZWF0ZShtX2RlbGVnYXRlLCB0aGlzKSk7CiAgICAgZWxzZSBpZiAobGF5ZXJUcmVlSG9zdCgpLT5z
ZXR0aW5ncygpLnBlclRpbGVQYWludGluZykKLSAgICAgICAgbV90ZXh0dXJlVXBkYXRlciA9IEJp
dG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShDb250ZW50TGF5
ZXJQYWludGVyOjpjcmVhdGUobV9kZWxlZ2F0ZSksIGxheWVyVHJlZUhvc3QoKS0+bGF5ZXJSZW5k
ZXJlckNhcGFiaWxpdGllcygpLnVzaW5nTWFwU3ViKTsKKyAgICAgICAgbV90ZXh0dXJlVXBkYXRl
ciA9IEJpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShDb250
ZW50TGF5ZXJQYWludGVyOjpjcmVhdGUobV9kZWxlZ2F0ZSwgdGhpcyksIGxheWVyVHJlZUhvc3Qo
KS0+bGF5ZXJSZW5kZXJlckNhcGFiaWxpdGllcygpLnVzaW5nTWFwU3ViKTsKICAgICBlbHNlCi0g
ICAgICAgIG1fdGV4dHVyZVVwZGF0ZXIgPSBCaXRtYXBDYW52YXNMYXllclRleHR1cmVVcGRhdGVy
OjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKG1fZGVsZWdhdGUpLCBsYXllclRy
ZWVIb3N0KCktPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CisgICAg
ICAgIG1fdGV4dHVyZVVwZGF0ZXIgPSBCaXRtYXBDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpj
cmVhdGUoQ29udGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKG1fZGVsZWdhdGUsIHRoaXMpLCBsYXll
clRyZWVIb3N0KCktPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CiAg
ICAgbV90ZXh0dXJlVXBkYXRlci0+c2V0T3BhcXVlKG9wYXF1ZSgpKTsKIAogICAgIEdDM0RlbnVt
IHRleHR1cmVGb3JtYXQgPSBsYXllclRyZWVIb3N0KCktPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRp
ZXMoKS5iZXN0VGV4dHVyZUZvcm1hdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwCmlu
ZGV4IDdlNTU4ZDA3NGEzYjQxZTc0NjE3MTkwOTc5OTIyMzkwYjg0OWQ4ODIuLmYxZmUxMDcyMTVi
ZTYyNTlhMDUyMjk4NjJmM2MxMDFhOGY2ZGY0NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcApAQCAtMjksMTAgKzI5LDEzIEBACiAKICNpbmNsdWRlICJUaWxlZExheWVyQ2hyb21p
dW0uaCIKIAorI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgorI2luY2x1ZGUgIkZvbnREZXNjcmlwdGlv
bi5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCiAjaW5jbHVkZSAiTGF5ZXJSZW5k
ZXJlckNocm9taXVtLmgiCiAjaW5jbHVkZSAiTWFuYWdlZFRleHR1cmUuaCIKICNpbmNsdWRlICJS
ZWdpb24uaCIKKyNpbmNsdWRlICJUZXh0UnVuLmgiCiAjaW5jbHVkZSAiVGV4dFN0cmVhbS5oIgog
I2luY2x1ZGUgIlRyYWNlRXZlbnQuaCIKIApAQCAtNjgsMTYgKzcxLDI1IEBAIHB1YmxpYzoKICAg
ICAvLyB1cGRhdGVSZWN0IGhvbGRzIHRoZSBhcmVhIG9mIHRoZSB0aWxlIHRoYXQgd2FzIHVwZGF0
ZWQuIE90aGVyd2lzZSwgdGhlIGFyZWEgdGhhdCB3b3VsZCBoYXZlIGJlZW4gdXBkYXRlZC4KICAg
ICBib29sIGlzRGlydHlGb3JDdXJyZW50RnJhbWUoKSB7IHJldHVybiAhZGlydHlSZWN0LmlzRW1w
dHkoKSAmJiAodXBkYXRlUmVjdC5pc0VtcHR5KCkgfHwgIXVwZGF0ZWQpOyB9CiAKKyAgICB2b2lk
IHNldFVwZGF0ZUZyYW1lKGludCB1cGRhdGVGcmFtZSkgeyBsYXN0VXBkYXRlRnJhbWUgPSB1cGRh
dGVGcmFtZTsgfQorICAgIHZvaWQgaW5jcmVtZW50UGFpbnRDb3VudCgpIHsgdG90YWxQYWludENv
dW50Kys7IH0KKyAgICBpbnQgdXBkYXRlRnJhbWUoKSBjb25zdCB7IHJldHVybiBsYXN0VXBkYXRl
RnJhbWU7IH0KKyAgICBpbnQgcGFpbnRDb3VudCgpIGNvbnN0IHsgcmV0dXJuIHRvdGFsUGFpbnRD
b3VudDsgfQorCiAgICAgSW50UmVjdCBkaXJ0eVJlY3Q7CiAgICAgSW50UmVjdCB1cGRhdGVSZWN0
OwogICAgIGJvb2wgcGFydGlhbFVwZGF0ZTsKICAgICBib29sIHVwZGF0ZWQ7CiAgICAgYm9vbCBp
c0luVXNlT25JbXBsOworICAgIGludCBsYXN0VXBkYXRlRnJhbWU7CisgICAgaW50IHRvdGFsUGFp
bnRDb3VudDsKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgVXBkYXRhYmxlVGlsZShQYXNzT3duUHRy
PExheWVyVGV4dHVyZVVwZGF0ZXI6OlRleHR1cmU+IHRleHR1cmUpCiAgICAgICAgIDogcGFydGlh
bFVwZGF0ZShmYWxzZSkKICAgICAgICAgLCB1cGRhdGVkKGZhbHNlKQogICAgICAgICAsIGlzSW5V
c2VPbkltcGwoZmFsc2UpCisgICAgICAgICwgbGFzdFVwZGF0ZUZyYW1lKDApCisgICAgICAgICwg
dG90YWxQYWludENvdW50KDApCiAgICAgICAgICwgbV90ZXh0dXJlKHRleHR1cmUpCiAgICAgewog
ICAgIH0KQEAgLTQxNCw2ICs0MjYsMTMgQEAgdm9pZCBUaWxlZExheWVyQ2hyb21pdW06OnVwZGF0
ZVRpbGVzKGJvb2wgaWRsZSwgaW50IGxlZnQsIGludCB0b3AsIGludCByaWdodCwgaW4KICAgICAg
ICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgIGlmICh0aWxl
LT5pc0RpcnR5KCkgJiYgbGF5ZXJUcmVlSG9zdCgpLT5zZXR0aW5ncygpLmRlYnVnU2hvd1RpbGVJ
bmZvKSB7CisgICAgICAgICAgICAgICAgLy8gSW52YWxpZGF0ZSB0aGUgZW50aXJlIHRpbGUgc28g
dGhhdCB0ZXh0IHVwZGF0ZXMuCisgICAgICAgICAgICAgICAgdGlsZS0+ZGlydHlSZWN0ID0gbV90
aWxlci0+dGlsZVJlY3QodGlsZSk7CisgICAgICAgICAgICAgICAgdGlsZS0+c2V0VXBkYXRlRnJh
bWUobGF5ZXJUcmVlSG9zdCgpLT5mcmFtZU51bWJlcigpKTsKKyAgICAgICAgICAgICAgICB0aWxl
LT5pbmNyZW1lbnRQYWludENvdW50KCk7CisgICAgICAgICAgICB9CisKICAgICAgICAgICAgIHBh
aW50UmVjdC51bml0ZSh0aWxlLT5kaXJ0eVJlY3QpOwogICAgICAgICB9CiAgICAgfQpAQCAtNzE3
LDUgKzczNiw3MSBAQCBJbnRSZWN0IFRpbGVkTGF5ZXJDaHJvbWl1bTo6aWRsZVBhaW50UmVjdChj
b25zdCBJbnRSZWN0JiB2aXNpYmxlTGF5ZXJSZWN0KQogICAgIHJldHVybiBwcmVwYWludFJlY3Q7
CiB9CiAKK3ZvaWQgVGlsZWRMYXllckNocm9taXVtOjpwYWludERlYnVnVGlsZUluZm8oR3JhcGhp
Y3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiBsYXllclJlY3QpCit7CisgICAgRm9u
dENhY2hlUHVyZ2VQcmV2ZW50ZXIgZm9udENhY2hlUHVyZ2VQcmV2ZW50ZXI7CisKKyAgICAvLyBE
b24ndCBib3RoZXIgd3JpdGluZyBpbmZvIG9udG8gc21hbGwgdGlsZXMuCisgICAgY29uc3QgaW50
IG1pbkRpbWVuc2lvbiA9IDIwMDsKKyAgICBpZiAobV90aWxlci0+dGlsZVNpemUoKS53aWR0aCgp
IDwgbWluRGltZW5zaW9uIHx8IG1fdGlsZXItPnRpbGVTaXplKCkuaGVpZ2h0KCkgPCBtaW5EaW1l
bnNpb24pCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghbV9kZWJ1Z0luZm9Gb250KSB7Cisg
ICAgICAgIEZvbnREZXNjcmlwdGlvbiBmb250RGVzYzsKKyAgICAgICAgZm9udERlc2Muc2V0R2Vu
ZXJpY0ZhbWlseShGb250RGVzY3JpcHRpb246Ok1vbm9zcGFjZUZhbWlseSk7CisgICAgICAgIGZv
bnREZXNjLnNldENvbXB1dGVkU2l6ZSgxMCk7CisgICAgICAgIG1fZGVidWdJbmZvRm9udCA9IGFk
b3B0UHRyKG5ldyBGb250KGZvbnREZXNjLCAwLCAwKSk7CisgICAgICAgIG1fZGVidWdJbmZvRm9u
dC0+dXBkYXRlKDApOworICAgIH0KKworICAgIGludCBmb250SGVpZ2h0ID0gbV9kZWJ1Z0luZm9G
b250LT5mb250TWV0cmljcygpLmZsb2F0SGVpZ2h0KCkgKyAyOworCisgICAgaW50IGxlZnQsIHRv
cCwgcmlnaHQsIGJvdHRvbTsKKyAgICBtX3RpbGVyLT5sYXllclJlY3RUb1RpbGVJbmRpY2VzKGxh
eWVyUmVjdCwgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tKTsKKyAgICBmb3IgKGludCBqID0gdG9w
OyBqIDw9IGJvdHRvbTsgKytqKSB7CisgICAgICAgIGZvciAoaW50IGkgPSBsZWZ0OyBpIDw9IHJp
Z2h0OyArK2kpIHsKKyAgICAgICAgICAgIFVwZGF0YWJsZVRpbGUqIHRpbGUgPSB0aWxlQXQoaSwg
aik7CisgICAgICAgICAgICBpZiAoIXRpbGUpCisgICAgICAgICAgICAgICAgY29udGludWU7CisK
KyAgICAgICAgICAgIEludFJlY3QgdGlsZVJlY3QgPSBtX3RpbGVyLT50aWxlUmVjdCh0aWxlKTsK
KyAgICAgICAgICAgIFN0cmluZyBpbmZvW10gPSB7CisgICAgICAgICAgICAgICAgU3RyaW5nOjpm
b3JtYXQoIkxheWVySWQoJWQpIiwgaWQoKSksCisgICAgICAgICAgICAgICAgU3RyaW5nOjpmb3Jt
YXQoIkluZGV4KCVkLCAlZCkiLCBpLCBqKSwKKyAgICAgICAgICAgICAgICBTdHJpbmc6OmZvcm1h
dCgiVGlsZSglZCwgJWQsICVkLCAlZCkiLCB0aWxlUmVjdC54KCksIHRpbGVSZWN0LnkoKSwgdGls
ZVJlY3Qud2lkdGgoKSwgdGlsZVJlY3QuaGVpZ2h0KCkpLAorICAgICAgICAgICAgICAgIFN0cmlu
Zzo6Zm9ybWF0KCJGcmFtZSglZCkiLCB0aWxlLT51cGRhdGVGcmFtZSgpKSwKKyAgICAgICAgICAg
ICAgICBTdHJpbmc6OmZvcm1hdCgiQ291bnQoJWQpIiwgdGlsZS0+cGFpbnRDb3VudCgpKSwKKyAg
ICAgICAgICAgICAgICBTdHJpbmc6OmZvcm1hdCgiTGF5ZXIoJWQsICVkKSIsIGNvbnRlbnRCb3Vu
ZHMoKS53aWR0aCgpLCBjb250ZW50Qm91bmRzKCkuaGVpZ2h0KCkpLAorICAgICAgICAgICAgfTsK
KyAgICAgICAgICAgIGNvbnN0IHNpemVfdCBsaW5lcyA9IHNpemVvZihpbmZvKSAvIHNpemVvZihp
bmZvWzBdKTsKKyAgICAgICAgICAgIGludCB3aWR0aFtsaW5lc107CisKKyAgICAgICAgICAgIElu
dFBvaW50IGNlbnRlciA9IG1fdGlsZXItPnRpbGVSZWN0KHRpbGUpLmNlbnRlcigpOworICAgICAg
ICAgICAgaW50IGN1cnJlbnRZID0gY2VudGVyLnkoKSAtIGZvbnRIZWlnaHQgKiBsaW5lcyAvIDI7
CisKKyAgICAgICAgICAgIGludCBtYXhXaWR0aCA9IDA7CisgICAgICAgICAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IGxpbmVzOyArK2kpIHsKKyAgICAgICAgICAgICAgICB3aWR0aFtpXSA9IG1f
ZGVidWdJbmZvRm9udC0+d2lkdGgoVGV4dFJ1bihpbmZvW2ldKSk7CisgICAgICAgICAgICAgICAg
bWF4V2lkdGggPSBtYXgod2lkdGhbaV0sIG1heFdpZHRoKTsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgSW50UmVjdCB0ZXh0UmVjdChJbnRQb2ludChjZW50ZXIueCgpIC0gbWF4V2lkdGgg
LyAyLCBjdXJyZW50WSAtIGZvbnRIZWlnaHQgLyAyKSwgSW50U2l6ZShtYXhXaWR0aCwgZm9udEhl
aWdodCAqIGxpbmVzICsgZm9udEhlaWdodCAvIDIpKTsKKworICAgICAgICAgICAgY29udGV4dC5z
ZXRGaWxsQ29sb3IoQ29sb3IoMTkyLCAxOTIsIDE5MiwgMTkyKSwgQ29sb3JTcGFjZURldmljZVJH
Qik7CisgICAgICAgICAgICBjb250ZXh0LmZpbGxSZWN0KEZsb2F0UmVjdCh0ZXh0UmVjdCkpOwor
CisgICAgICAgICAgICBjb250ZXh0LnNldEZpbGxDb2xvcihDb2xvcig2NCwgNjQsIDY0KSwgQ29s
b3JTcGFjZURldmljZVJHQik7CisKKyAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
bGluZXM7ICsraSkgeworICAgICAgICAgICAgICAgIFRleHRSdW4gcnVuKGluZm9baV0pOworICAg
ICAgICAgICAgICAgIGludCB0ZXh0V2lkdGggPSBtX2RlYnVnSW5mb0ZvbnQtPndpZHRoKHJ1bik7
CisgICAgICAgICAgICAgICAgSW50UG9pbnQgdGV4dFN0YXJ0KGNlbnRlci54KCkgLSB0ZXh0V2lk
dGggLyAyLCBjdXJyZW50WSArIGZvbnRIZWlnaHQgLyAyKTsKKyAgICAgICAgICAgICAgICBjb250
ZXh0LmRyYXdUZXh0KCptX2RlYnVnSW5mb0ZvbnQsIHJ1biwgdGV4dFN0YXJ0KTsKKyAgICAgICAg
ICAgICAgICBjdXJyZW50WSArPSBmb250SGVpZ2h0OworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgfQorfQorCiB9CiAjZW5kaWYgLy8gVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGls
ZWRMYXllckNocm9taXVtLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9UaWxlZExheWVyQ2hyb21pdW0uaAppbmRleCAxMDJmNTMyZjBlZTcxM2FiYWY0MzdlOWY4
OTcwZTljYzFmYzg2MzBlLi41MjZmOGUwNThiZWQ1M2FhNzhjYzBlODdmOTg5NjBjY2FlMWE2NDc5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9U
aWxlZExheWVyQ2hyb21pdW0uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogCisjaW5jbHVkZSAiRm9udC5oIgogI2luY2x1
ZGUgIkxheWVyQ2hyb21pdW0uaCIKICNpbmNsdWRlICJjYy9DQ0xheWVyVGlsaW5nRGF0YS5oIgog
I2luY2x1ZGUgImNjL0NDVGlsZWRMYXllckltcGwuaCIKQEAgLTY1LDYgKzY2LDggQEAgcHVibGlj
OgogCiAgICAgdmlydHVhbCBSZWdpb24gdmlzaWJsZUNvbnRlbnRPcGFxdWVSZWdpb24oKSBjb25z
dCBPVkVSUklERTsKIAorICAgIHZvaWQgcGFpbnREZWJ1Z1RpbGVJbmZvKEdyYXBoaWNzQ29udGV4
dCYsIGNvbnN0IEludFJlY3QmKTsKKwogcHJvdGVjdGVkOgogICAgIFRpbGVkTGF5ZXJDaHJvbWl1
bSgpOwogCkBAIC0xMjksNiArMTMyLDcgQEAgcHJpdmF0ZToKIAogICAgIFRpbGluZ09wdGlvbiBt
X3RpbGluZ09wdGlvbjsKICAgICBPd25QdHI8Q0NMYXllclRpbGluZ0RhdGE+IG1fdGlsZXI7Cisg
ICAgT3duUHRyPEZvbnQ+IG1fZGVidWdJbmZvRm9udDsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
clRyZWVIb3N0LmgKaW5kZXggM2E4NjNmNzdkNTg4MGZmOTQ4ZDQ4NjhlYzc1NGI5MmY4M2FiY2I4
NC4uNjliNjcxODE3YzlhYmNlNjUzOGRlM2UwMmRhMTAyNDI4OTdlYTExMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVI
b3N0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NMYXllclRyZWVIb3N0LmgKQEAgLTc0LDYgKzc0LDcgQEAgcHJvdGVjdGVkOgogc3RydWN0IEND
U2V0dGluZ3MgewogICAgIENDU2V0dGluZ3MoKQogICAgICAgICAgICAgOiBhY2NlbGVyYXRlUGFp
bnRpbmcoZmFsc2UpCisgICAgICAgICAgICAsIGRlYnVnU2hvd1RpbGVJbmZvKGZhbHNlKQogICAg
ICAgICAgICAgLCBzaG93RlBTQ291bnRlcihmYWxzZSkKICAgICAgICAgICAgICwgc2hvd1BsYXRm
b3JtTGF5ZXJUcmVlKGZhbHNlKQogICAgICAgICAgICAgLCBzaG93UGFpbnRSZWN0cyhmYWxzZSkK
QEAgLTkwLDYgKzkxLDcgQEAgc3RydWN0IENDU2V0dGluZ3MgewogICAgIHsgfQogCiAgICAgYm9v
bCBhY2NlbGVyYXRlUGFpbnRpbmc7CisgICAgYm9vbCBkZWJ1Z1Nob3dUaWxlSW5mbzsKICAgICBi
b29sIHNob3dGUFNDb3VudGVyOwogICAgIGJvb2wgc2hvd1BsYXRmb3JtTGF5ZXJUcmVlOwogICAg
IGJvb2wgc2hvd1BhaW50UmVjdHM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144140</attachid>
            <date>2012-05-25 13:50:05 -0700</date>
            <delta_ts>2012-05-25 15:51:37 -0700</delta_ts>
            <desc>Cleanup</desc>
            <filename>bug-75763-20120525135004.patch</filename>
            <type>text/plain</type>
            <size>12305</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4NTM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGQwZDk4NWMzOTcyOTdh
MGQwYjA1OGE4YzEyNTlkNmMxMTllODU2ZS4uZmIzMGI1OWI0N2VhNjMxNWI4OWM5NWY4ZmI2Y2Rj
MmU5NmUwZTgxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA1LTI1ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
c2V0dGluZyBmb3IgcGFpbnRpbmcgZGVidWcgaW5mbyBvbnRvIHRpbGVzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTc2MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIGNvbXBpbGUtdGltZSBDQ1Nl
dHRpbmcgdG8gcGFpbnQgZGVidWcgaW5mb3JtYXRpb24gb250byB0aWxlcy4gVGhpcworICAgICAg
ICBjYW4gaGVscCB0byB1bmRlcnN0YW5kIHBhaW50IGNvdW50cyBhbmQgbGF5ZXIgaW5kaWNlcy4g
VGhpcyBzZXR0aW5nIGlzCisgICAgICAgIG9mZiBieSBkZWZhdWx0LgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q29udGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRlbnRMYXllclBhaW50ZXI6OnBhaW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRl
bnRMYXllclBhaW50ZXI6OkNvbnRlbnRMYXllclBhaW50ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
Q29udGVudExheWVyQ2hyb21pdW06OmNyZWF0ZVRleHR1cmVVcGRhdGVyKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VXBkYXRhYmxlVGlsZTo6VXBkYXRhYmxlVGlsZSk6CisgICAgICAgIChXZWJD
b3JlOjpVcGRhdGFibGVUaWxlOjpzZXRVcGRhdGVGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpV
cGRhdGFibGVUaWxlOjppbmNyZW1lbnRQYWludENvdW50KToKKyAgICAgICAgKFdlYkNvcmU6OlVw
ZGF0YWJsZVRpbGU6OnVwZGF0ZUZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlVwZGF0YWJsZVRp
bGU6OnBhaW50Q291bnQpOgorICAgICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVtOjpU
aWxlZExheWVyQ2hyb21pdW0pOgorICAgICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVt
OjpwcmVwYXJlVG9VcGRhdGVUaWxlcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hy
b21pdW06OnBhaW50RGVidWdUaWxlSW5mbyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDQ1Nl
dHRpbmdzOjpDQ1NldHRpbmdzKToKKwogMjAxMi0wNS0yNSAgQWxleGFuZGVyIFBhdmxvdiAgPGFw
YXZsb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEhhbmd1cCB3aGVu
IGNvbnRpbnVvdXNseSBjaGFuZ2luZyBhIGNzcyB3aWR0aCB2YWx1ZSBpbiBJbnNwZWN0b3IKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRl
bnRMYXllckNocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcAppbmRleCBhZThkMzIwOGJmYmFiOGQ3YWRl
OTgyYTdkOGE5M2EyZDgzZWQ3ZGFmLi5iODZhZDMxZGEyZjYzNGMzNmU3ZmE5NzQzMWRkNGMwNWFj
MGEzOGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9Db250ZW50TGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwCkBAIC00OSw5ICs0
OSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIENvbnRlbnRMYXllclBhaW50ZXIgOiBw
dWJsaWMgTGF5ZXJQYWludGVyQ2hyb21pdW0gewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENv
bnRlbnRMYXllclBhaW50ZXIpOwogcHVibGljOgotICAgIHN0YXRpYyBQYXNzT3duUHRyPENvbnRl
bnRMYXllclBhaW50ZXI+IGNyZWF0ZShDb250ZW50TGF5ZXJEZWxlZ2F0ZSogZGVsZWdhdGUpCisg
ICAgc3RhdGljIFBhc3NPd25QdHI8Q29udGVudExheWVyUGFpbnRlcj4gY3JlYXRlKENvbnRlbnRM
YXllckRlbGVnYXRlKiBkZWxlZ2F0ZSwgVGlsZWRMYXllckNocm9taXVtKiBsYXllcikKICAgICB7
Ci0gICAgICAgIHJldHVybiBhZG9wdFB0cihuZXcgQ29udGVudExheWVyUGFpbnRlcihkZWxlZ2F0
ZSkpOworICAgICAgICByZXR1cm4gYWRvcHRQdHIobmV3IENvbnRlbnRMYXllclBhaW50ZXIoZGVs
ZWdhdGUsIGxheWVyKSk7CiAgICAgfQogCiAgICAgdmlydHVhbCB2b2lkIHBhaW50KEdyYXBoaWNz
Q29udGV4dCYgY29udGV4dCwgY29uc3QgSW50UmVjdCYgY29udGVudFJlY3QpCkBAIC01OSwxOSAr
NTksMjcgQEAgcHVibGljOgogICAgICAgICBkb3VibGUgcGFpbnRTdGFydCA9IGN1cnJlbnRUaW1l
KCk7CiAgICAgICAgIGNvbnRleHQuY2xlYXJSZWN0KGNvbnRlbnRSZWN0KTsKICAgICAgICAgY29u
dGV4dC5jbGlwKGNvbnRlbnRSZWN0KTsKLSAgICAgICAgbV9kZWxlZ2F0ZS0+cGFpbnRDb250ZW50
cyhjb250ZXh0LCBjb250ZW50UmVjdCk7Ci0gICAgICAgIGRvdWJsZSBwYWludEVuZCA9IGN1cnJl
bnRUaW1lKCk7Ci0gICAgICAgIGRvdWJsZSBwaXhlbHNQZXJTZWMgPSAoY29udGVudFJlY3Qud2lk
dGgoKSAqIGNvbnRlbnRSZWN0LmhlaWdodCgpKSAvIChwYWludEVuZCAtIHBhaW50U3RhcnQpOwot
ICAgICAgICBXZWJLaXQ6OlBsYXRmb3JtOjpjdXJyZW50KCktPmhpc3RvZ3JhbUN1c3RvbUNvdW50
cygiUmVuZGVyZXI0LkFjY2VsQ29udGVudFBhaW50RHVyYXRpb25NUyIsIChwYWludEVuZCAtIHBh
aW50U3RhcnQpICogMTAwMCwgMCwgMTIwLCAzMCk7Ci0gICAgICAgIFdlYktpdDo6UGxhdGZvcm06
OmN1cnJlbnQoKS0+aGlzdG9ncmFtQ3VzdG9tQ291bnRzKCJSZW5kZXJlcjQuQWNjZWxDb250ZW50
UGFpbnRNZWdhcGl4UGVyU2Vjb25kIiwgcGl4ZWxzUGVyU2VjIC8gMTAwMDAwMCwgMTAsIDIxMCwg
MzApOworICAgICAgICB7CisgICAgICAgICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0
YXRlU2F2ZXIoY29udGV4dCwgbV9sYXllci0+bGF5ZXJUcmVlSG9zdCgpLT5zZXR0aW5ncygpLmRl
YnVnU2hvd1RpbGVJbmZvKTsKKworICAgICAgICAgICAgbV9kZWxlZ2F0ZS0+cGFpbnRDb250ZW50
cyhjb250ZXh0LCBjb250ZW50UmVjdCk7CisgICAgICAgICAgICBkb3VibGUgcGFpbnRFbmQgPSBj
dXJyZW50VGltZSgpOworICAgICAgICAgICAgZG91YmxlIHBpeGVsc1BlclNlYyA9IChjb250ZW50
UmVjdC53aWR0aCgpICogY29udGVudFJlY3QuaGVpZ2h0KCkpIC8gKHBhaW50RW5kIC0gcGFpbnRT
dGFydCk7CisgICAgICAgICAgICBXZWJLaXQ6OlBsYXRmb3JtOjpjdXJyZW50KCktPmhpc3RvZ3Jh
bUN1c3RvbUNvdW50cygiUmVuZGVyZXI0LkFjY2VsQ29udGVudFBhaW50RHVyYXRpb25NUyIsIChw
YWludEVuZCAtIHBhaW50U3RhcnQpICogMTAwMCwgMCwgMTIwLCAzMCk7CisgICAgICAgICAgICBX
ZWJLaXQ6OlBsYXRmb3JtOjpjdXJyZW50KCktPmhpc3RvZ3JhbUN1c3RvbUNvdW50cygiUmVuZGVy
ZXI0LkFjY2VsQ29udGVudFBhaW50TWVnYXBpeFBlclNlY29uZCIsIHBpeGVsc1BlclNlYyAvIDEw
MDAwMDAsIDEwLCAyMTAsIDMwKTsKKyAgICAgICAgfQorICAgICAgICBpZiAobV9sYXllci0+bGF5
ZXJUcmVlSG9zdCgpLT5zZXR0aW5ncygpLmRlYnVnU2hvd1RpbGVJbmZvKQorICAgICAgICAgICAg
bV9sYXllci0+cGFpbnREZWJ1Z1RpbGVJbmZvKGNvbnRleHQsIGNvbnRlbnRSZWN0KTsKICAgICB9
CiBwcml2YXRlOgotICAgIGV4cGxpY2l0IENvbnRlbnRMYXllclBhaW50ZXIoQ29udGVudExheWVy
RGVsZWdhdGUqIGRlbGVnYXRlKQorICAgIGV4cGxpY2l0IENvbnRlbnRMYXllclBhaW50ZXIoQ29u
dGVudExheWVyRGVsZWdhdGUqIGRlbGVnYXRlLCBUaWxlZExheWVyQ2hyb21pdW0qIGxheWVyKQog
ICAgICAgICA6IG1fZGVsZWdhdGUoZGVsZWdhdGUpCisgICAgICAgICwgbV9sYXllcihsYXllcikK
ICAgICB7CiAgICAgfQogCiAgICAgQ29udGVudExheWVyRGVsZWdhdGUqIG1fZGVsZWdhdGU7Cisg
ICAgVGlsZWRMYXllckNocm9taXVtKiBtX2xheWVyOwogfTsKIAogUGFzc1JlZlB0cjxDb250ZW50
TGF5ZXJDaHJvbWl1bT4gQ29udGVudExheWVyQ2hyb21pdW06OmNyZWF0ZShDb250ZW50TGF5ZXJE
ZWxlZ2F0ZSogZGVsZWdhdGUpCkBAIC0xMjYsMTEgKzEzNCwxMSBAQCB2b2lkIENvbnRlbnRMYXll
ckNocm9taXVtOjpjcmVhdGVUZXh0dXJlVXBkYXRlcklmTmVlZGVkKCkKICAgICBpZiAobV90ZXh0
dXJlVXBkYXRlcikKICAgICAgICAgcmV0dXJuOwogICAgIGlmIChsYXllclRyZWVIb3N0KCktPnNl
dHRpbmdzKCkuYWNjZWxlcmF0ZVBhaW50aW5nKQotICAgICAgICBtX3RleHR1cmVVcGRhdGVyID0g
RnJhbWVCdWZmZXJTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpjcmVhdGUoQ29u
dGVudExheWVyUGFpbnRlcjo6Y3JlYXRlKG1fZGVsZWdhdGUpKTsKKyAgICAgICAgbV90ZXh0dXJl
VXBkYXRlciA9IEZyYW1lQnVmZmVyU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlcjo6
Y3JlYXRlKENvbnRlbnRMYXllclBhaW50ZXI6OmNyZWF0ZShtX2RlbGVnYXRlLCB0aGlzKSk7CiAg
ICAgZWxzZSBpZiAobGF5ZXJUcmVlSG9zdCgpLT5zZXR0aW5ncygpLnBlclRpbGVQYWludGluZykK
LSAgICAgICAgbV90ZXh0dXJlVXBkYXRlciA9IEJpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4
dHVyZVVwZGF0ZXI6OmNyZWF0ZShDb250ZW50TGF5ZXJQYWludGVyOjpjcmVhdGUobV9kZWxlZ2F0
ZSksIGxheWVyVHJlZUhvc3QoKS0+bGF5ZXJSZW5kZXJlckNhcGFiaWxpdGllcygpLnVzaW5nTWFw
U3ViKTsKKyAgICAgICAgbV90ZXh0dXJlVXBkYXRlciA9IEJpdG1hcFNrUGljdHVyZUNhbnZhc0xh
eWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShDb250ZW50TGF5ZXJQYWludGVyOjpjcmVhdGUobV9k
ZWxlZ2F0ZSwgdGhpcyksIGxheWVyVHJlZUhvc3QoKS0+bGF5ZXJSZW5kZXJlckNhcGFiaWxpdGll
cygpLnVzaW5nTWFwU3ViKTsKICAgICBlbHNlCi0gICAgICAgIG1fdGV4dHVyZVVwZGF0ZXIgPSBC
aXRtYXBDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRl
cjo6Y3JlYXRlKG1fZGVsZWdhdGUpLCBsYXllclRyZWVIb3N0KCktPmxheWVyUmVuZGVyZXJDYXBh
YmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CisgICAgICAgIG1fdGV4dHVyZVVwZGF0ZXIgPSBCaXRt
YXBDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpjcmVhdGUoQ29udGVudExheWVyUGFpbnRlcjo6
Y3JlYXRlKG1fZGVsZWdhdGUsIHRoaXMpLCBsYXllclRyZWVIb3N0KCktPmxheWVyUmVuZGVyZXJD
YXBhYmlsaXRpZXMoKS51c2luZ01hcFN1Yik7CiAgICAgbV90ZXh0dXJlVXBkYXRlci0+c2V0T3Bh
cXVlKG9wYXF1ZSgpKTsKIAogICAgIEdDM0RlbnVtIHRleHR1cmVGb3JtYXQgPSBsYXllclRyZWVI
b3N0KCktPmxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS5iZXN0VGV4dHVyZUZvcm1hdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVk
TGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwCmluZGV4IDE3YzM1MWY2ZDdkZmJkYmFjMWM5ZDg1
ZWJhNzRlODY5NzFjYzljYzYuLmQwMjlkNzc1ZmZhNDc5YTk3ZDRmNDFiZWM3MDczNGFlZDE3NDM2
OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcApAQCAtMjksMTAgKzI5LDEzIEBA
CiAKICNpbmNsdWRlICJUaWxlZExheWVyQ2hyb21pdW0uaCIKIAorI2luY2x1ZGUgIkZvbnRDYWNo
ZS5oIgorI2luY2x1ZGUgIkZvbnREZXNjcmlwdGlvbi5oIgogI2luY2x1ZGUgIkdyYXBoaWNzQ29u
dGV4dDNELmgiCiAjaW5jbHVkZSAiTGF5ZXJSZW5kZXJlckNocm9taXVtLmgiCiAjaW5jbHVkZSAi
TWFuYWdlZFRleHR1cmUuaCIKICNpbmNsdWRlICJSZWdpb24uaCIKKyNpbmNsdWRlICJUZXh0UnVu
LmgiCiAjaW5jbHVkZSAiVGV4dFN0cmVhbS5oIgogI2luY2x1ZGUgIlRyYWNlRXZlbnQuaCIKIApA
QCAtNzMsMTEgKzc2LDE1IEBAIHB1YmxpYzoKICAgICBib29sIHBhcnRpYWxVcGRhdGU7CiAgICAg
Ym9vbCB1cGRhdGVkOwogICAgIGJvb2wgaXNJblVzZU9uSW1wbDsKKyAgICBpbnQgbGFzdFVwZGF0
ZUZyYW1lOworICAgIGludCB0b3RhbFBhaW50Q291bnQ7CiBwcml2YXRlOgogICAgIGV4cGxpY2l0
IFVwZGF0YWJsZVRpbGUoUGFzc093blB0cjxMYXllclRleHR1cmVVcGRhdGVyOjpUZXh0dXJlPiB0
ZXh0dXJlKQogICAgICAgICA6IHBhcnRpYWxVcGRhdGUoZmFsc2UpCiAgICAgICAgICwgdXBkYXRl
ZChmYWxzZSkKICAgICAgICAgLCBpc0luVXNlT25JbXBsKGZhbHNlKQorICAgICAgICAsIGxhc3RV
cGRhdGVGcmFtZSgwKQorICAgICAgICAsIHRvdGFsUGFpbnRDb3VudCgwKQogICAgICAgICAsIG1f
dGV4dHVyZSh0ZXh0dXJlKQogICAgIHsKICAgICB9CkBAIC00MDksNiArNDE2LDEzIEBAIHZvaWQg
VGlsZWRMYXllckNocm9taXVtOjp1cGRhdGVUaWxlcyhib29sIGlkbGUsIGludCBsZWZ0LCBpbnQg
dG9wLCBpbnQgcmlnaHQsIGluCiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAg
fQogCisgICAgICAgICAgICBpZiAodGlsZS0+aXNEaXJ0eSgpICYmIGxheWVyVHJlZUhvc3QoKS0+
c2V0dGluZ3MoKS5kZWJ1Z1Nob3dUaWxlSW5mbykgeworICAgICAgICAgICAgICAgIC8vIEludmFs
aWRhdGUgdGhlIGVudGlyZSB0aWxlIHNvIHRoYXQgdGV4dCB1cGRhdGVzLgorICAgICAgICAgICAg
ICAgIHRpbGUtPmRpcnR5UmVjdCA9IG1fdGlsZXItPnRpbGVSZWN0KHRpbGUpOworICAgICAgICAg
ICAgICAgIHRpbGUtPmxhc3RVcGRhdGVGcmFtZSA9IGxheWVyVHJlZUhvc3QoKS0+ZnJhbWVOdW1i
ZXIoKTsKKyAgICAgICAgICAgICAgICB0aWxlLT50b3RhbFBhaW50Q291bnQrKzsKKyAgICAgICAg
ICAgIH0KKwogICAgICAgICAgICAgcGFpbnRSZWN0LnVuaXRlKHRpbGUtPmRpcnR5UmVjdCk7CiAg
ICAgICAgIH0KICAgICB9CkBAIC03MTIsNSArNzI2LDcxIEBAIEludFJlY3QgVGlsZWRMYXllckNo
cm9taXVtOjppZGxlUGFpbnRSZWN0KGNvbnN0IEludFJlY3QmIHZpc2libGVMYXllclJlY3QpCiAg
ICAgcmV0dXJuIHByZXBhaW50UmVjdDsKIH0KIAordm9pZCBUaWxlZExheWVyQ2hyb21pdW06OnBh
aW50RGVidWdUaWxlSW5mbyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEludFJlY3Qm
IGxheWVyUmVjdCkKK3sKKyAgICBGb250Q2FjaGVQdXJnZVByZXZlbnRlciBmb250Q2FjaGVQdXJn
ZVByZXZlbnRlcjsKKworICAgIC8vIERvbid0IGJvdGhlciB3cml0aW5nIGluZm8gb250byBzbWFs
bCB0aWxlcy4KKyAgICBjb25zdCBpbnQgbWluRGltZW5zaW9uID0gMjAwOworICAgIGlmIChtX3Rp
bGVyLT50aWxlU2l6ZSgpLndpZHRoKCkgPCBtaW5EaW1lbnNpb24gfHwgbV90aWxlci0+dGlsZVNp
emUoKS5oZWlnaHQoKSA8IG1pbkRpbWVuc2lvbikKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYg
KCFtX2RlYnVnSW5mb0ZvbnQpIHsKKyAgICAgICAgRm9udERlc2NyaXB0aW9uIGZvbnREZXNjOwor
ICAgICAgICBmb250RGVzYy5zZXRHZW5lcmljRmFtaWx5KEZvbnREZXNjcmlwdGlvbjo6TW9ub3Nw
YWNlRmFtaWx5KTsKKyAgICAgICAgZm9udERlc2Muc2V0Q29tcHV0ZWRTaXplKDEwKTsKKyAgICAg
ICAgbV9kZWJ1Z0luZm9Gb250ID0gYWRvcHRQdHIobmV3IEZvbnQoZm9udERlc2MsIDAsIDApKTsK
KyAgICAgICAgbV9kZWJ1Z0luZm9Gb250LT51cGRhdGUoMCk7CisgICAgfQorCisgICAgaW50IGZv
bnRIZWlnaHQgPSBtX2RlYnVnSW5mb0ZvbnQtPmZvbnRNZXRyaWNzKCkuZmxvYXRIZWlnaHQoKSAr
IDI7CisKKyAgICBpbnQgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tOworICAgIG1fdGlsZXItPmxh
eWVyUmVjdFRvVGlsZUluZGljZXMobGF5ZXJSZWN0LCBsZWZ0LCB0b3AsIHJpZ2h0LCBib3R0b20p
OworICAgIGZvciAoaW50IGogPSB0b3A7IGogPD0gYm90dG9tOyArK2opIHsKKyAgICAgICAgZm9y
IChpbnQgaSA9IGxlZnQ7IGkgPD0gcmlnaHQ7ICsraSkgeworICAgICAgICAgICAgVXBkYXRhYmxl
VGlsZSogdGlsZSA9IHRpbGVBdChpLCBqKTsKKyAgICAgICAgICAgIGlmICghdGlsZSkKKyAgICAg
ICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAgICAgSW50UmVjdCB0aWxlUmVjdCA9IG1f
dGlsZXItPnRpbGVSZWN0KHRpbGUpOworICAgICAgICAgICAgU3RyaW5nIGluZm9bXSA9IHsKKyAg
ICAgICAgICAgICAgICBTdHJpbmc6OmZvcm1hdCgiTGF5ZXJJZCglZCkiLCBpZCgpKSwKKyAgICAg
ICAgICAgICAgICBTdHJpbmc6OmZvcm1hdCgiSW5kZXgoJWQsICVkKSIsIGksIGopLAorICAgICAg
ICAgICAgICAgIFN0cmluZzo6Zm9ybWF0KCJUaWxlKCVkLCAlZCwgJWQsICVkKSIsIHRpbGVSZWN0
LngoKSwgdGlsZVJlY3QueSgpLCB0aWxlUmVjdC53aWR0aCgpLCB0aWxlUmVjdC5oZWlnaHQoKSks
CisgICAgICAgICAgICAgICAgU3RyaW5nOjpmb3JtYXQoIkZyYW1lKCVkKSIsIHRpbGUtPmxhc3RV
cGRhdGVGcmFtZSksCisgICAgICAgICAgICAgICAgU3RyaW5nOjpmb3JtYXQoIkNvdW50KCVkKSIs
IHRpbGUtPnRvdGFsUGFpbnRDb3VudCksCisgICAgICAgICAgICAgICAgU3RyaW5nOjpmb3JtYXQo
IkxheWVyKCVkLCAlZCkiLCBjb250ZW50Qm91bmRzKCkud2lkdGgoKSwgY29udGVudEJvdW5kcygp
LmhlaWdodCgpKSwKKyAgICAgICAgICAgIH07CisgICAgICAgICAgICBjb25zdCBzaXplX3QgbGlu
ZXMgPSBzaXplb2YoaW5mbykgLyBzaXplb2YoaW5mb1swXSk7CisgICAgICAgICAgICBpbnQgd2lk
dGhbbGluZXNdOworCisgICAgICAgICAgICBJbnRQb2ludCBjZW50ZXIgPSBtX3RpbGVyLT50aWxl
UmVjdCh0aWxlKS5jZW50ZXIoKTsKKyAgICAgICAgICAgIGludCBjdXJyZW50WSA9IGNlbnRlci55
KCkgLSBmb250SGVpZ2h0ICogbGluZXMgLyAyOworCisgICAgICAgICAgICBpbnQgbWF4V2lkdGgg
PSAwOworICAgICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBsaW5lczsgKytpKSB7Cisg
ICAgICAgICAgICAgICAgd2lkdGhbaV0gPSBtX2RlYnVnSW5mb0ZvbnQtPndpZHRoKFRleHRSdW4o
aW5mb1tpXSkpOworICAgICAgICAgICAgICAgIG1heFdpZHRoID0gbWF4KHdpZHRoW2ldLCBtYXhX
aWR0aCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIEludFJlY3QgdGV4dFJlY3QoSW50
UG9pbnQoY2VudGVyLngoKSAtIG1heFdpZHRoIC8gMiwgY3VycmVudFkgLSBmb250SGVpZ2h0IC8g
MiksIEludFNpemUobWF4V2lkdGgsIGZvbnRIZWlnaHQgKiBsaW5lcyArIGZvbnRIZWlnaHQgLyAy
KSk7CisKKyAgICAgICAgICAgIGNvbnRleHQuc2V0RmlsbENvbG9yKENvbG9yKDE5MiwgMTkyLCAx
OTIsIDE5MiksIENvbG9yU3BhY2VEZXZpY2VSR0IpOworICAgICAgICAgICAgY29udGV4dC5maWxs
UmVjdChGbG9hdFJlY3QodGV4dFJlY3QpKTsKKworICAgICAgICAgICAgY29udGV4dC5zZXRGaWxs
Q29sb3IoQ29sb3IoNjQsIDY0LCA2NCksIENvbG9yU3BhY2VEZXZpY2VSR0IpOworCisgICAgICAg
ICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxpbmVzOyArK2kpIHsKKyAgICAgICAgICAgICAg
ICBUZXh0UnVuIHJ1bihpbmZvW2ldKTsKKyAgICAgICAgICAgICAgICBpbnQgdGV4dFdpZHRoID0g
bV9kZWJ1Z0luZm9Gb250LT53aWR0aChydW4pOworICAgICAgICAgICAgICAgIEludFBvaW50IHRl
eHRTdGFydChjZW50ZXIueCgpIC0gdGV4dFdpZHRoIC8gMiwgY3VycmVudFkgKyBmb250SGVpZ2h0
IC8gMik7CisgICAgICAgICAgICAgICAgY29udGV4dC5kcmF3VGV4dCgqbV9kZWJ1Z0luZm9Gb250
LCBydW4sIHRleHRTdGFydCk7CisgICAgICAgICAgICAgICAgY3VycmVudFkgKz0gZm9udEhlaWdo
dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KK30KKwogfQogI2VuZGlmIC8vIFVT
RShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgKaW5k
ZXggY2EzODlmMmU0YzU3MjVjMTIxNzk3MjcwMDVmMDZiOTFhY2NjNGMxNy4uZWJjNGVlNDkyNjk3
MTA5MTAwMmQ5NTE5YjkwY2M1MGM2ODE0MzIxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVt
LmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykK
IAorI2luY2x1ZGUgIkZvbnQuaCIKICNpbmNsdWRlICJMYXllckNocm9taXVtLmgiCiAjaW5jbHVk
ZSAiY2MvQ0NMYXllclRpbGluZ0RhdGEuaCIKICNpbmNsdWRlICJjYy9DQ1RpbGVkTGF5ZXJJbXBs
LmgiCkBAIC02NSw2ICs2Niw4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgUmVnaW9uIHZpc2li
bGVDb250ZW50T3BhcXVlUmVnaW9uKCkgY29uc3QgT1ZFUlJJREU7CiAKKyAgICB2b2lkIHBhaW50
RGVidWdUaWxlSW5mbyhHcmFwaGljc0NvbnRleHQmLCBjb25zdCBJbnRSZWN0Jik7CisKIHByb3Rl
Y3RlZDoKICAgICBUaWxlZExheWVyQ2hyb21pdW0oKTsKIApAQCAtMTI3LDYgKzEzMCw3IEBAIHBy
aXZhdGU6CiAKICAgICBUaWxpbmdPcHRpb24gbV90aWxpbmdPcHRpb247CiAgICAgT3duUHRyPEND
TGF5ZXJUaWxpbmdEYXRhPiBtX3RpbGVyOworICAgIE93blB0cjxGb250PiBtX2RlYnVnSW5mb0Zv
bnQ7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCmluZGV4IGVjZWMyM2IxMWRh
ZDdmZjE5MGE5OTNjNzM0OTVhMjg4Zjg1ODk1ZWIuLjcxNDYwMjM1NmI2NDgyMzlhYjA2ZmE5Mjlh
ZDkwNTA4ZjUzODY1MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCkBAIC03Nyw2ICs3
Nyw3IEBAIHByb3RlY3RlZDoKIHN0cnVjdCBDQ1NldHRpbmdzIHsKICAgICBDQ1NldHRpbmdzKCkK
ICAgICAgICAgICAgIDogYWNjZWxlcmF0ZVBhaW50aW5nKGZhbHNlKQorICAgICAgICAgICAgLCBk
ZWJ1Z1Nob3dUaWxlSW5mbyhmYWxzZSkKICAgICAgICAgICAgICwgc2hvd0ZQU0NvdW50ZXIoZmFs
c2UpCiAgICAgICAgICAgICAsIHNob3dQbGF0Zm9ybUxheWVyVHJlZShmYWxzZSkKICAgICAgICAg
ICAgICwgc2hvd1BhaW50UmVjdHMoZmFsc2UpCkBAIC05Myw2ICs5NCw3IEBAIHN0cnVjdCBDQ1Nl
dHRpbmdzIHsKICAgICB7IH0KIAogICAgIGJvb2wgYWNjZWxlcmF0ZVBhaW50aW5nOworICAgIGJv
b2wgZGVidWdTaG93VGlsZUluZm87CiAgICAgYm9vbCBzaG93RlBTQ291bnRlcjsKICAgICBib29s
IHNob3dQbGF0Zm9ybUxheWVyVHJlZTsKICAgICBib29sIHNob3dQYWludFJlY3RzOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>