<?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>171467</bug_id>
          
          <creation_ts>2017-04-28 17:21:15 -0700</creation_ts>
          <short_desc>Async image decoding should be disabled for snapshots, printing and preview</short_desc>
          <delta_ts>2017-05-03 12:43:47 -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>Images</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>aestes</cc>
    
    <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1302888</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-04-28 17:21:15 -0700</bug_when>
    <thetext>Async image decoding should only be used for window display where RenderElements can be repainted and painted. For cases where there is only one chance to draw the image, synchronous decoding should be used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302890</commentid>
    <comment_count>1</comment_count>
      <attachid>308625</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-04-28 17:22:03 -0700</bug_when>
    <thetext>Created attachment 308625
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302893</commentid>
    <comment_count>2</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-04-28 17:23:48 -0700</bug_when>
    <thetext>&lt;rdar://problem/31308092&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303288</commentid>
    <comment_count>3</comment_count>
      <attachid>308625</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-05-01 10:51:20 -0700</bug_when>
    <thetext>Comment on attachment 308625
Patch

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

&gt; Source/WebCore/page/FrameView.cpp:4410
&gt; +        frame().settings().setLargeImageAsyncDecodingEnabled(false);

We don&apos;t generally toggle settings as a way of setting temporary runtime state; toggling settings can have side effects like all-frame style recalcs.

Why not just test (view().frameView().paintBehavior() &amp; PaintBehaviorFlattenCompositingLayers) as we do in RenderBox::paintMaskImages?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303335</commentid>
    <comment_count>4</comment_count>
      <attachid>308748</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-05-01 12:32:16 -0700</bug_when>
    <thetext>Created attachment 308748
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1303393</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-05-01 14:16:29 -0700</bug_when>
    <thetext>Is this testable (say, with an API test)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1304100</commentid>
    <comment_count>6</comment_count>
      <attachid>308921</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-05-03 10:23:06 -0700</bug_when>
    <thetext>Created attachment 308921
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1304141</commentid>
    <comment_count>7</comment_count>
      <attachid>308921</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-05-03 11:26:02 -0700</bug_when>
    <thetext>Comment on attachment 308921
Patch

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

&gt; Tools/TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm:271
&gt; +        CGContextRef context = CGBitmapContextCreate(rgba, viewWidth, viewHeight, 8, 4 * viewWidth, colorSpace.get(), kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);

We we use RetainPtr&lt;&gt; = adoptCF() here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1304156</commentid>
    <comment_count>8</comment_count>
      <attachid>308935</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-05-03 11:56:48 -0700</bug_when>
    <thetext>Created attachment 308935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1304187</commentid>
    <comment_count>9</comment_count>
      <attachid>308935</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-03 12:43:46 -0700</bug_when>
    <thetext>Comment on attachment 308935
Patch

Clearing flags on attachment: 308935

Committed r216135: &lt;http://trac.webkit.org/changeset/216135&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1304188</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-03 12:43:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308625</attachid>
            <date>2017-04-28 17:22:03 -0700</date>
            <delta_ts>2017-05-01 12:32:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171467-20170428172202.patch</filename>
            <type>text/plain</type>
            <size>4750</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE1ODEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTMwZDMxNGVjZmRkMWUz
NWNhY2EwYmUwNGU0NDVkMTBkNmE1ZDIxNS4uZmM2MDRmNWE4ZDhlOTgwYmJlYzhjMTcwYjAxN2Mx
MzU1YTdjOTFhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA0LTI4ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMg
aW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRpc2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5n
IGFuZCBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzE0NjcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBc3luY2hyb25vdXMgaW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIG9ubHkgYmUgdXNlZCBmb3Ig
d2luZG93IGRpc3BsYXkgd2hlcmUKKyAgICAgICAgUmVuZGVyRWxlbWVudHMgY2FuIGJlIHJlcGFp
bnRlZCBhbmQgcGFpbnRlZC4gRm9yIGNhc2VzIHdoZXJlIHRoZXJlIGlzIG9ubHkKKyAgICAgICAg
b25lIGNoYW5jZSB0byBkcmF3IHRoZSBpbWFnZSwgc3luY2hyb25vdXMgZGVjb2Rpbmcgc2hvdWxk
IGJlIHVzZWQuIAorCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RnJhbWVWaWV3Ojp3aWxsUGFpbnRDb250ZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZVZpZXc6OmRpZFBhaW50Q29udGVudHMpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3
OjpwYWludENvbnRlbnRzRm9yU25hcHNob3QpOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6
CisKIDIwMTctMDQtMjUgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAg
IFtDb2xvcl0gTWFrZSBncmFkaWVudHMgd29yayB3aXRoIEV4dGVuZGVkQ29sb3JzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggMzY4YzZjZDBjODQzY2IyOTBlOGIwYWYwYTRlYjI1Mzc3
ODExZmQ2MC4uMDk1OGM3YzNhOWQxODM0ZjBkNGJlZTcxYmJmNGJiOWQwYWI0MzUxYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNDM5OCwxNCArNDM5OCwxNyBAQCB2b2lkIEZyYW1l
Vmlldzo6d2lsbFBhaW50Q29udGVudHMoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBJ
bnRSZWN0JiwgUGFpbgogICAgICAgICBzQ3VycmVudFBhaW50VGltZVN0YW1wID0gbW9ub3Rvbmlj
YWxseUluY3JlYXNpbmdUaW1lKCk7CiAKICAgICBwYWludGluZ1N0YXRlLnBhaW50QmVoYXZpb3Ig
PSBtX3BhaW50QmVoYXZpb3I7CisgICAgcGFpbnRpbmdTdGF0ZS5pc0xhcmdlSW1hZ2VBc3luY0Rl
Y29kaW5nRW5hYmxlZCA9IGZyYW1lKCkuc2V0dGluZ3MoKS5sYXJnZUltYWdlQXN5bmNEZWNvZGlu
Z0VuYWJsZWQoKTsKICAgICAKICAgICBpZiAoRnJhbWVWaWV3KiBwYXJlbnRWaWV3ID0gcGFyZW50
RnJhbWVWaWV3KCkpIHsKICAgICAgICAgaWYgKHBhcmVudFZpZXctPnBhaW50QmVoYXZpb3IoKSAm
IFBhaW50QmVoYXZpb3JGbGF0dGVuQ29tcG9zaXRpbmdMYXllcnMpCiAgICAgICAgICAgICBtX3Bh
aW50QmVoYXZpb3IgfD0gUGFpbnRCZWhhdmlvckZsYXR0ZW5Db21wb3NpdGluZ0xheWVyczsKICAg
ICB9CiAKLSAgICBpZiAoZG9jdW1lbnQtPnByaW50aW5nKCkpCisgICAgaWYgKGRvY3VtZW50LT5w
cmludGluZygpKSB7CiAgICAgICAgIG1fcGFpbnRCZWhhdmlvciB8PSBQYWludEJlaGF2aW9yRmxh
dHRlbkNvbXBvc2l0aW5nTGF5ZXJzOworICAgICAgICBmcmFtZSgpLnNldHRpbmdzKCkuc2V0TGFy
Z2VJbWFnZUFzeW5jRGVjb2RpbmdFbmFibGVkKGZhbHNlKTsKKyAgICB9CiAKICAgICBwYWludGlu
Z1N0YXRlLmlzRmxhdHRlbmluZ1BhaW50T2ZSb290RnJhbWUgPSAobV9wYWludEJlaGF2aW9yICYg
UGFpbnRCZWhhdmlvckZsYXR0ZW5Db21wb3NpdGluZ0xheWVycykgJiYgIWZyYW1lKCkub3duZXJF
bGVtZW50KCk7CiAgICAgaWYgKHBhaW50aW5nU3RhdGUuaXNGbGF0dGVuaW5nUGFpbnRPZlJvb3RG
cmFtZSkKQEAgLTQ0MjQsNiArNDQyNyw3IEBAIHZvaWQgRnJhbWVWaWV3OjpkaWRQYWludENvbnRl
bnRzKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgSW50UmVjdCYgZGlydHlSCiAKICAg
ICBtX3BhaW50QmVoYXZpb3IgPSBwYWludGluZ1N0YXRlLnBhaW50QmVoYXZpb3I7CiAgICAgbV9s
YXN0UGFpbnRUaW1lID0gbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCk7CisgICAgZnJhbWUo
KS5zZXR0aW5ncygpLnNldExhcmdlSW1hZ2VBc3luY0RlY29kaW5nRW5hYmxlZChwYWludGluZ1N0
YXRlLmlzTGFyZ2VJbWFnZUFzeW5jRGVjb2RpbmdFbmFibGVkKTsKIAogICAgIC8vIFBhaW50aW5n
IGNhbiBsZWFkIHRvIGRlY29kaW5nIG9mIGxhcmdlIGFtb3VudHMgb2YgYml0bWFwcwogICAgIC8v
IElmIHdlIGFyZSBsb3cgb24gbWVtb3J5LCB3aXBlIHRoZW0gb3V0IGFmdGVyIHRoZSBwYWludC4K
QEAgLTQ1MzAsOSArNDUzNCwxMiBAQCB2b2lkIEZyYW1lVmlldzo6cGFpbnRDb250ZW50c0ZvclNu
YXBzaG90KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgSW50UmVjdAogewogICAgIHVw
ZGF0ZUxheW91dEFuZFN0eWxlSWZOZWVkZWRSZWN1cnNpdmUoKTsKIAotICAgIC8vIENhY2hlIHBh
aW50IGJlaGF2aW9yIGFuZCBzZXQgYSBuZXcgYmVoYXZpb3IgYXBwcm9wcmlhdGUgZm9yIHNuYXBz
aG90cy4KKyAgICAvLyBDYWNoZSBvcmlnaW5hbCBwYWludGluZyBvcHRpb25zIGFuZCBzZXQgbmV3
IG9uZXMgc3VpdGFibGUgZm9yIHNuYXBzaG90cy4KICAgICBQYWludEJlaGF2aW9yIG9sZEJlaGF2
aW9yID0gcGFpbnRCZWhhdmlvcigpOwogICAgIHNldFBhaW50QmVoYXZpb3Iob2xkQmVoYXZpb3Ig
fCBQYWludEJlaGF2aW9yRmxhdHRlbkNvbXBvc2l0aW5nTGF5ZXJzKTsKKyAgICAKKyAgICBib29s
IG9sZExhcmdlSW1hZ2VBc3luY0RlY29kaW5nRW5hYmxlZCA9IGZyYW1lKCkuc2V0dGluZ3MoKS5s
YXJnZUltYWdlQXN5bmNEZWNvZGluZ0VuYWJsZWQoKTsKKyAgICBmcmFtZSgpLnNldHRpbmdzKCku
c2V0TGFyZ2VJbWFnZUFzeW5jRGVjb2RpbmdFbmFibGVkKGZhbHNlKTsKIAogICAgIC8vIElmIHRo
ZSBzbmFwc2hvdCBzaG91bGQgZXhjbHVkZSBzZWxlY3Rpb24sIHRoZW4gd2UnbGwgY2xlYXIgdGhl
IGN1cnJlbnQgc2VsZWN0aW9uCiAgICAgLy8gaW4gdGhlIHJlbmRlciB0cmVlIG9ubHkuIFRoaXMg
d2lsbCBhbGxvdyB1cyB0byByZXN0b3JlIHRoZSBzZWxlY3Rpb24gZnJvbSB0aGUgRE9NCkBAIC00
NTU4LDggKzQ1NjUsOSBAQCB2b2lkIEZyYW1lVmlldzo6cGFpbnRDb250ZW50c0ZvclNuYXBzaG90
KEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgSW50UmVjdAogICAgICAgICAgICAgZnJh
bWUtPnNlbGVjdGlvbigpLnVwZGF0ZUFwcGVhcmFuY2UoKTsKICAgICB9CiAKLSAgICAvLyBSZXN0
b3JlIGNhY2hlZCBwYWludCBiZWhhdmlvci4KKyAgICAvLyBSZXN0b3JlIG9yaWdpbmFsIHBhaW50
aW5nIG9wdGlvbnMuCiAgICAgc2V0UGFpbnRCZWhhdmlvcihvbGRCZWhhdmlvcik7CisgICAgZnJh
bWUoKS5zZXR0aW5ncygpLnNldExhcmdlSW1hZ2VBc3luY0RlY29kaW5nRW5hYmxlZChvbGRMYXJn
ZUltYWdlQXN5bmNEZWNvZGluZ0VuYWJsZWQpOwogfQogCiB2b2lkIEZyYW1lVmlldzo6cGFpbnRP
dmVyaGFuZ0FyZWFzKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgSW50UmVjdCYgaG9y
aXpvbnRhbE92ZXJoYW5nQXJlYSwgY29uc3QgSW50UmVjdCYgdmVydGljYWxPdmVyaGFuZ0FyZWEs
IGNvbnN0IEludFJlY3QmIGRpcnR5UmVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCmluZGV4IDBh
MzI3NTMwMDQyNGNkY2I2OWVlNmU5Y2EzZTgyMGU2OThhY2Y5NGMuLjgwZTJmMTBmZTg2ZjA0YWVh
NDMzODE2YmE5ODY5ZWE1Y2FiYTZiZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RnJhbWVWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaApAQCAtMzUz
LDEwICszNTMsMTIgQEAgcHVibGljOgogICAgICAgICBQYWludEJlaGF2aW9yIHBhaW50QmVoYXZp
b3I7CiAgICAgICAgIGJvb2wgaXNUb3BMZXZlbFBhaW50ZXI7CiAgICAgICAgIGJvb2wgaXNGbGF0
dGVuaW5nUGFpbnRPZlJvb3RGcmFtZTsKKyAgICAgICAgYm9vbCBpc0xhcmdlSW1hZ2VBc3luY0Rl
Y29kaW5nRW5hYmxlZDsKICAgICAgICAgUGFpbnRpbmdTdGF0ZSgpCiAgICAgICAgICAgICA6IHBh
aW50QmVoYXZpb3IoKQogICAgICAgICAgICAgLCBpc1RvcExldmVsUGFpbnRlcihmYWxzZSkKICAg
ICAgICAgICAgICwgaXNGbGF0dGVuaW5nUGFpbnRPZlJvb3RGcmFtZShmYWxzZSkKKyAgICAgICAg
ICAgICwgaXNMYXJnZUltYWdlQXN5bmNEZWNvZGluZ0VuYWJsZWQoZmFsc2UpCiAgICAgICAgIHsK
ICAgICAgICAgfQogICAgIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308748</attachid>
            <date>2017-05-01 12:32:16 -0700</date>
            <delta_ts>2017-05-03 10:23:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171467-20170501123215.patch</filename>
            <type>text/plain</type>
            <size>3368</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjAyMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE3LTA1LTAxICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMgaW1h
Z2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRpc2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5nIGFu
ZCBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzE0NjcKKyAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgCisgICAg
ICAgIEFzeW5jaHJvbm91cyBpbWFnZSBkZWNvZGluZyBzaG91bGQgb25seSBiZSB1c2VkIGZvciB3
aW5kb3cgZGlzcGxheSB3aGVyZQorICAgICAgICBSZW5kZXJFbGVtZW50cyBjYW4gYmUgcmVwYWlu
dGVkIGFuZCBwYWludGVkLiBGb3IgY2FzZXMgd2hlcmUgdGhlcmUgaXMgb25seQorICAgICAgICBv
bmUgY2hhbmNlIHRvIGRyYXcgdGhlIGltYWdlLCBzeW5jaHJvbm91cyBkZWNvZGluZyBzaG91bGQg
YmUgdXNlZC4gCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVy
RXh0ZW5kZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6cGFpbnRJbnRvUmVjdCk6CisKIDIwMTctMDUtMDEgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgc29tZSB1c2Fn
ZSBvZiBQYXNzUmVmUHRyIGluIGVkaXRpbmcgY29kZQpJbmRleDogU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCShyZXZpc2lvbiAyMTU5NTQp
CisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC04ODIsNyArODgyLDggQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVj
dDo6cGFpbnRGaWxsTGF5ZQogICAgICAgICAgICAgICAgIGRvd25jYXN0PEJpdG1hcEltYWdlPigq
aW1hZ2UpLnVwZGF0ZUZyb21TZXR0aW5ncyhzZXR0aW5ncygpKTsKIAogICAgICAgICAgICAgYXV0
byBpbnRlcnBvbGF0aW9uID0gY2hvb3NlSW50ZXJwb2xhdGlvblF1YWxpdHkoY29udGV4dCwgKmlt
YWdlLCAmYmdMYXllciwgZ2VvbWV0cnkudGlsZVNpemUoKSk7Ci0gICAgICAgICAgICBjb250ZXh0
LmRyYXdUaWxlZEltYWdlKCppbWFnZSwgZ2VvbWV0cnkuZGVzdFJlY3QoKSwgdG9MYXlvdXRQb2lu
dChnZW9tZXRyeS5yZWxhdGl2ZVBoYXNlKCkpLCBnZW9tZXRyeS50aWxlU2l6ZSgpLCBnZW9tZXRy
eS5zcGFjZVNpemUoKSwgSW1hZ2VQYWludGluZ09wdGlvbnMoY29tcG9zaXRlT3AsIGJnTGF5ZXIu
YmxlbmRNb2RlKCksIERlY29kaW5nTW9kZTo6QXN5bmNocm9ub3VzLCBJbWFnZU9yaWVudGF0aW9u
RGVzY3JpcHRpb24oKSwgaW50ZXJwb2xhdGlvbikpOworICAgICAgICAgICAgYXV0byBkZWNvZGlu
Z01vZGUgPSAodmlldygpLmZyYW1lVmlldygpLnBhaW50QmVoYXZpb3IoKSAmIFBhaW50QmVoYXZp
b3JGbGF0dGVuQ29tcG9zaXRpbmdMYXllcnMpID8gRGVjb2RpbmdNb2RlOjpTeW5jaHJvbm91cyA6
IERlY29kaW5nTW9kZTo6QXN5bmNocm9ub3VzOworICAgICAgICAgICAgY29udGV4dC5kcmF3VGls
ZWRJbWFnZSgqaW1hZ2UsIGdlb21ldHJ5LmRlc3RSZWN0KCksIHRvTGF5b3V0UG9pbnQoZ2VvbWV0
cnkucmVsYXRpdmVQaGFzZSgpKSwgZ2VvbWV0cnkudGlsZVNpemUoKSwgZ2VvbWV0cnkuc3BhY2VT
aXplKCksIEltYWdlUGFpbnRpbmdPcHRpb25zKGNvbXBvc2l0ZU9wLCBiZ0xheWVyLmJsZW5kTW9k
ZSgpLCBkZWNvZGluZ01vZGUsIEltYWdlT3JpZW50YXRpb25EZXNjcmlwdGlvbigpLCBpbnRlcnBv
bGF0aW9uKSk7CiAgICAgICAgIH0KICAgICB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJJbWFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckltYWdlLmNwcAkocmV2aXNpb24gMjE1OTU0KQorKysgU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTg0LDcgKzU4NCw4
IEBAIHZvaWQgUmVuZGVySW1hZ2U6OnBhaW50SW50b1JlY3QoR3JhcGhpY3MKICAgICAgICAgZG93
bmNhc3Q8Qml0bWFwSW1hZ2U+KCppbWFnZSkudXBkYXRlRnJvbVNldHRpbmdzKHNldHRpbmdzKCkp
OwogCiAgICAgSW1hZ2VPcmllbnRhdGlvbkRlc2NyaXB0aW9uIG9yaWVudGF0aW9uRGVzY3JpcHRp
b24oc2hvdWxkUmVzcGVjdEltYWdlT3JpZW50YXRpb24oKSwgc3R5bGUoKS5pbWFnZU9yaWVudGF0
aW9uKCkpOwotICAgIGNvbnRleHQuZHJhd0ltYWdlKCppbWcsIHJlY3QsIEltYWdlUGFpbnRpbmdP
cHRpb25zKGNvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGVOb3JtYWwsIERlY29kaW5nTW9kZTo6
QXN5bmNocm9ub3VzLCBvcmllbnRhdGlvbkRlc2NyaXB0aW9uLCBpbnRlcnBvbGF0aW9uKSk7Cisg
ICAgYXV0byBkZWNvZGluZ01vZGUgPSAodmlldygpLmZyYW1lVmlldygpLnBhaW50QmVoYXZpb3Io
KSAmIFBhaW50QmVoYXZpb3JGbGF0dGVuQ29tcG9zaXRpbmdMYXllcnMpID8gRGVjb2RpbmdNb2Rl
OjpTeW5jaHJvbm91cyA6IERlY29kaW5nTW9kZTo6QXN5bmNocm9ub3VzOworICAgIGNvbnRleHQu
ZHJhd0ltYWdlKCppbWcsIHJlY3QsIEltYWdlUGFpbnRpbmdPcHRpb25zKGNvbXBvc2l0ZU9wZXJh
dG9yLCBCbGVuZE1vZGVOb3JtYWwsIGRlY29kaW5nTW9kZSwgb3JpZW50YXRpb25EZXNjcmlwdGlv
biwgaW50ZXJwb2xhdGlvbikpOwogfQogCiBib29sIFJlbmRlckltYWdlOjpib3hTaGFkb3dTaG91
bGRCZUFwcGxpZWRUb0JhY2tncm91bmQoY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0LCBC
YWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgYmxlZWRBdm9pZGFuY2UsIElubGluZUZsb3dCb3gqKSBj
b25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308921</attachid>
            <date>2017-05-03 10:23:06 -0700</date>
            <delta_ts>2017-05-03 11:56:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171467-20170503102306.patch</filename>
            <type>text/plain</type>
            <size>11453</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjAyMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE3LTA1LTAzICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMgaW1h
Z2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRpc2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5nIGFu
ZCBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzE0NjcKKyAKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorIAorICAgICAg
ICBBc3luY2hyb25vdXMgaW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIG9ubHkgYmUgdXNlZCBmb3Igd2lu
ZG93IGRpc3BsYXkgd2hlcmUKKyAgICAgICAgUmVuZGVyRWxlbWVudHMgY2FuIGJlIHJlcGFpbnRl
ZCBhbmQgcGFpbnRlZC4gRm9yIGNhc2VzIHdoZXJlIHRoZXJlIGlzIG9ubHkKKyAgICAgICAgb25l
IGNoYW5jZSB0byBkcmF3IHRoZSBpbWFnZSwgc3luY2hyb25vdXMgZGVjb2Rpbmcgc2hvdWxkIGJl
IHVzZWQuIAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZpbGxMYXllckV4
dGVuZGVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVySW1hZ2U6OnBhaW50SW50b1JlY3QpOgorCiAyMDE3LTA1LTAxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHNvbWUgdXNhZ2Ug
b2YgUGFzc1JlZlB0ciBpbiBlZGl0aW5nIGNvZGUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAkocmV2aXNpb24gMjE1OTU0KQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtODgyLDcgKzg4Miw4IEBAIHZvaWQgUmVuZGVyQm94TW9kZWxPYmplY3Q6
OnBhaW50RmlsbExheWUKICAgICAgICAgICAgICAgICBkb3duY2FzdDxCaXRtYXBJbWFnZT4oKmlt
YWdlKS51cGRhdGVGcm9tU2V0dGluZ3Moc2V0dGluZ3MoKSk7CiAKICAgICAgICAgICAgIGF1dG8g
aW50ZXJwb2xhdGlvbiA9IGNob29zZUludGVycG9sYXRpb25RdWFsaXR5KGNvbnRleHQsICppbWFn
ZSwgJmJnTGF5ZXIsIGdlb21ldHJ5LnRpbGVTaXplKCkpOwotICAgICAgICAgICAgY29udGV4dC5k
cmF3VGlsZWRJbWFnZSgqaW1hZ2UsIGdlb21ldHJ5LmRlc3RSZWN0KCksIHRvTGF5b3V0UG9pbnQo
Z2VvbWV0cnkucmVsYXRpdmVQaGFzZSgpKSwgZ2VvbWV0cnkudGlsZVNpemUoKSwgZ2VvbWV0cnku
c3BhY2VTaXplKCksIEltYWdlUGFpbnRpbmdPcHRpb25zKGNvbXBvc2l0ZU9wLCBiZ0xheWVyLmJs
ZW5kTW9kZSgpLCBEZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91cywgSW1hZ2VPcmllbnRhdGlvbkRl
c2NyaXB0aW9uKCksIGludGVycG9sYXRpb24pKTsKKyAgICAgICAgICAgIGF1dG8gZGVjb2RpbmdN
b2RlID0gKHZpZXcoKS5mcmFtZVZpZXcoKS5wYWludEJlaGF2aW9yKCkgJiBQYWludEJlaGF2aW9y
RmxhdHRlbkNvbXBvc2l0aW5nTGF5ZXJzKSA/IERlY29kaW5nTW9kZTo6U3luY2hyb25vdXMgOiBE
ZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91czsKKyAgICAgICAgICAgIGNvbnRleHQuZHJhd1RpbGVk
SW1hZ2UoKmltYWdlLCBnZW9tZXRyeS5kZXN0UmVjdCgpLCB0b0xheW91dFBvaW50KGdlb21ldHJ5
LnJlbGF0aXZlUGhhc2UoKSksIGdlb21ldHJ5LnRpbGVTaXplKCksIGdlb21ldHJ5LnNwYWNlU2l6
ZSgpLCBJbWFnZVBhaW50aW5nT3B0aW9ucyhjb21wb3NpdGVPcCwgYmdMYXllci5ibGVuZE1vZGUo
KSwgZGVjb2RpbmdNb2RlLCBJbWFnZU9yaWVudGF0aW9uRGVzY3JpcHRpb24oKSwgaW50ZXJwb2xh
dGlvbikpOwogICAgICAgICB9CiAgICAgfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVySW1hZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJJbWFnZS5jcHAJKHJldmlzaW9uIDIxNTk1NCkKKysrIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU4NCw3ICs1ODQsOCBA
QCB2b2lkIFJlbmRlckltYWdlOjpwYWludEludG9SZWN0KEdyYXBoaWNzCiAgICAgICAgIGRvd25j
YXN0PEJpdG1hcEltYWdlPigqaW1hZ2UpLnVwZGF0ZUZyb21TZXR0aW5ncyhzZXR0aW5ncygpKTsK
IAogICAgIEltYWdlT3JpZW50YXRpb25EZXNjcmlwdGlvbiBvcmllbnRhdGlvbkRlc2NyaXB0aW9u
KHNob3VsZFJlc3BlY3RJbWFnZU9yaWVudGF0aW9uKCksIHN0eWxlKCkuaW1hZ2VPcmllbnRhdGlv
bigpKTsKLSAgICBjb250ZXh0LmRyYXdJbWFnZSgqaW1nLCByZWN0LCBJbWFnZVBhaW50aW5nT3B0
aW9ucyhjb21wb3NpdGVPcGVyYXRvciwgQmxlbmRNb2RlTm9ybWFsLCBEZWNvZGluZ01vZGU6OkFz
eW5jaHJvbm91cywgb3JpZW50YXRpb25EZXNjcmlwdGlvbiwgaW50ZXJwb2xhdGlvbikpOworICAg
IGF1dG8gZGVjb2RpbmdNb2RlID0gKHZpZXcoKS5mcmFtZVZpZXcoKS5wYWludEJlaGF2aW9yKCkg
JiBQYWludEJlaGF2aW9yRmxhdHRlbkNvbXBvc2l0aW5nTGF5ZXJzKSA/IERlY29kaW5nTW9kZTo6
U3luY2hyb25vdXMgOiBEZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91czsKKyAgICBjb250ZXh0LmRy
YXdJbWFnZSgqaW1nLCByZWN0LCBJbWFnZVBhaW50aW5nT3B0aW9ucyhjb21wb3NpdGVPcGVyYXRv
ciwgQmxlbmRNb2RlTm9ybWFsLCBkZWNvZGluZ01vZGUsIG9yaWVudGF0aW9uRGVzY3JpcHRpb24s
IGludGVycG9sYXRpb24pKTsKIH0KIAogYm9vbCBSZW5kZXJJbWFnZTo6Ym94U2hhZG93U2hvdWxk
QmVBcHBsaWVkVG9CYWNrZ3JvdW5kKGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCwgQmFj
a2dyb3VuZEJsZWVkQXZvaWRhbmNlIGJsZWVkQXZvaWRhbmNlLCBJbmxpbmVGbG93Qm94KikgY29u
c3QKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDIxNjEyMSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE4IEBACisyMDE3LTA1LTAzICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3
YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMgaW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRp
c2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5nIGFuZCBwcmV2aWV3CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE0NjcKKworICAgICAgICBSZXZp
ZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIGEgQVBJIHRlc3QgZm9yIHNuYXBz
aG90dGluZyB3aXRoIGxhcmdlIGltYWdlcy4gRW5zdXJlIHRoZSBpbWFnZXMgYXJlCisgICAgICAg
IGRyYXduIGNvcnJlY3RseSB3aGljaCBpbXBsaWVzIHRoZXkgc2hvdWxkIGhhdmUgYmVlbiBzeW5j
aHJvbm91c2x5IGRlY29kZWQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRB
UEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9XS1dlYlZpZXdTbmFwc2hvdC5tbToK
KyAgICAgICAgKFRFU1QpOgorCiAyMDE3LTA1LTAyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CiAKICAgICAgICAgY2hlY2std2Via2l0LXN0eWxlIHNob3VsZCBhbHNvIGtlZXAg
anMtdGVzdC1wb3N0Wy1hc3luY10uanMgaW4gc3luYwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oJKHJldmlzaW9uIDIxNTk1NCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQ
SS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xODAsNiArMTgw
LDcgQEAKIAkJNTM2NzcwMzQxQ0M4MDIyODAwRDQyNUIxIC8qIFdlYlNjcmlwdE9iamVjdERlc2Ny
aXB0aW9uLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM2NzcwMzMxQ0M4MDIyODAwRDQyNUIxIC8qIFdlYlNjcmlwdE9iamVjdERlc2NyaXB0aW9uLm1t
ICovOyB9OwogCQk1MzY3NzAzNjFDQzgxQjYxMDBENDI1QjEgLyogV2ViU2NyaXB0T2JqZWN0RGVz
Y3JpcHRpb24uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MzY3NzAzNTFDQzgxMkY5MDBENDI1QjEgLyogV2ViU2NyaXB0T2JqZWN0RGVz
Y3JpcHRpb24uaHRtbCAqLzsgfTsKIAkJNTNFQzI1NDExRTk2RkQ4NzAwMDgzMUI5IC8qIFByaW9y
aXR5UXVldWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTNFQzI1M0YxRTk2QkM4MDAwMDgzMUI5IC8qIFByaW9yaXR5UXVldWUuY3BwICovOyB9Owor
CQk1NTIyNkEyRjFFQkE0NEI5MDBDMzZBRDAgLyogbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1s
IGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU1
MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1yZWQtc3F1YXJlLWltYWdlLmh0bWwgKi87
IH07CiAJCTU1OTdGODM2MUQ5NTk2QzgwMDY2QkMyMSAvKiBTeW5jaHJvbml6ZWRGaXhlZFF1ZXVl
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU1OTdG
ODM0MUQ5NTk2QzgwMDY2QkMyMSAvKiBTeW5jaHJvbml6ZWRGaXhlZFF1ZXVlLmNwcCAqLzsgfTsK
IAkJNTcxNEVDQjkxQ0E4QjVCMDAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVzdE9yaWdpbmFsVVJM
Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTcxNEVDQjgxQ0E4QjU4ODAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVzdE9yaWdpbmFsVVJM
Lmh0bWwgKi87IH07CiAJCTU3MTRFQ0JCMUNBOEJGRTQwMDA1MUFDOCAvKiBEb3dubG9hZFJlcXVl
c3RPcmlnaW5hbFVSTEZyYW1lLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTcxNEVDQkExQ0E4QkZEMTAwMDUxQUM4IC8qIERvd25sb2Fk
UmVxdWVzdE9yaWdpbmFsVVJMRnJhbWUuaHRtbCAqLzsgfTsKQEAgLTY4MSw2ICs2ODIsNyBAQAog
CQkJZHN0UGF0aCA9IFRlc3RXZWJLaXRBUEkucmVzb3VyY2VzOwogCQkJZHN0U3ViZm9sZGVyU3Bl
YyA9IDc7CiAJCQlmaWxlcyA9ICgKKwkJCQk1NTIyNkEyRjFFQkE0NEI5MDBDMzZBRDAgLyogbGFy
Z2UtcmVkLXNxdWFyZS1pbWFnZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTA3NDk5
NDQyMUVBNTAzNEIwMDBEQTQ0RSAvKiBnZXRVc2VyTWVkaWEuaHRtbCBpbiBDb3B5IFJlc291cmNl
cyAqLywKIAkJCQlDOUJGMDZFRjFFOUMxMzI1MDA1OTVFM0UgLyogYXV0b3BsYXktbXV0ZWQtd2l0
aC1jb250cm9scy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0REVGNkVEMUU5QjRE
QjYwMDQ4RUY2MSAvKiBpbWFnZS1pbi1saW5rLWFuZC1pbnB1dC5odG1sIGluIENvcHkgUmVzb3Vy
Y2VzICovLApAQCAtMTEyOSw2ICsxMTMxLDcgQEAKIAkJNTM2NzcwMzMxQ0M4MDIyODAwRDQyNUIx
IC8qIFdlYlNjcmlwdE9iamVjdERlc2NyaXB0aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gV2ViU2NyaXB0T2JqZWN0RGVzY3JpcHRpb24ubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNjc3MDM1MUNDODEyRjkwMEQ0MjVCMSAvKiBXZWJTY3Jp
cHRPYmplY3REZXNjcmlwdGlvbi5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gV2Vi
U2NyaXB0T2JqZWN0RGVzY3JpcHRpb24uaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTNFQzI1M0YxRTk2QkM4MDAwMDgzMUI5IC8qIFByaW9yaXR5UXVldWUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJpb3JpdHlRdWV1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1y
ZWQtc3F1YXJlLWltYWdlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAibGFyZ2Ut
cmVkLXNxdWFyZS1pbWFnZS5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTU5
N0Y4MzQxRDk1OTZDODAwNjZCQzIxIC8qIFN5bmNocm9uaXplZEZpeGVkUXVldWUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3luY2hyb25pemVkRml4ZWRRdWV1ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU3MTRFQ0I4MUNBOEI1ODgwMDA1MUFD
OCAvKiBEb3dubG9hZFJlcXVlc3RPcmlnaW5hbFVSTC5odG1sICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1s
OyBwYXRoID0gRG93bmxvYWRSZXF1ZXN0T3JpZ2luYWxVUkwuaHRtbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTcxNEVDQkExQ0E4QkZEMTAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVz
dE9yaWdpbmFsVVJMRnJhbWUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9IERvd25s
b2FkUmVxdWVzdE9yaWdpbmFsVVJMRnJhbWUuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTIyMDgsNiArMjIxMSw3IEBACiAJCUJDOTA5NzdCMTI1NTcxQUUwMDA4Mzc1NiAvKiBS
ZXNvdXJjZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJ
CTU1MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1yZWQtc3F1YXJlLWltYWdlLmh0bWwg
Ki8sCiAJCQkJQzA0NUY5NDYxMzg1QzJGODAwQzBGM0NEIC8qIDE4LWNoYXJhY3RlcnMuaHRtbCAq
LywKIAkJCQkxQzJCODE4NTFDODkyNTIzMDBBNTUyOUYgLyogQWhlbS50dGYgKi8sCiAJCQkJOTNE
M0QxOUIxN0IxQTdCMDAwQzdDNDE1IC8qIGFsbC1jb250ZW50LWluLW9uZS1pZnJhbWUuaHRtbCAq
LywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9sYXJnZS1yZWQtc3F1
YXJlLWltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL2xhcmdlLXJlZC1zcXVhcmUtaW1hZ2UuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTMgQEAKKzxzdHlsZT4KKyAgICAucmVkLWJveCB7
CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnbGFyZ2UtcmVkLXNxdWFyZS5wbmcnKTsK
KyAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7CisgICAgICAgIHdpZHRoOjEwMHB4OworICAgICAg
ICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIHRvcDowcHg7CisgICAgICAgIGxlZnQ6MHB4OworICAg
IH0KKzwvc3R5bGU+Cis8Ym9keT4KKyAgICA8ZGl2IGNsYXNzPSJyZWQtYm94Ij48L2Rpdj4KKzwv
Ym9keT4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1dLV2Vi
Vmlld1NuYXBzaG90Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0MkNvY29hL1dLV2ViVmlld1NuYXBzaG90Lm1tCShyZXZpc2lvbiAyMTU5NTQpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9XS1dlYlZpZXdTbmFwc2hvdC5t
bQkod29ya2luZyBjb3B5KQpAQCAtMjQ0LDQgKzI0NCw1NiBAQCBURVNUKFdLV2ViVmlldywgU25h
cHNob3RJbWFnZVVuaW5pdGlhbGl6CiAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0Rv
bmUpOwogfQogCitURVNUKFdLV2ViVmlldywgU25hcHNob3RJbWFnZUxhcmdlQXN5bmNEZWNvZGlu
ZykKK3sKKyAgICBOU0ludGVnZXIgdmlld1dpZHRoID0gODAwOworICAgIE5TSW50ZWdlciB2aWV3
SGVpZ2h0ID0gNjAwOworICAgIFJldGFpblB0cjxXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5T
KFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgdmlld1dp
ZHRoLCB2aWV3SGVpZ2h0KV0pOworCisgICAgTlNVUkwgKmZpbGVVUkwgPSBbW05TQnVuZGxlIG1h
aW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAibGFyZ2UtcmVkLXNxdWFyZS1pbWFnZSIgd2l0aEV4
dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl07
CisgICAgW3dlYlZpZXcgbG9hZEZpbGVVUkw6ZmlsZVVSTCBhbGxvd2luZ1JlYWRBY2Nlc3NUb1VS
TDpmaWxlVVJMXTsKKyAgICBbd2ViVmlldyBfdGVzdF93YWl0Rm9yRGlkRmluaXNoTmF2aWdhdGlv
bl07CisKKyAgICBSZXRhaW5QdHI8V0tTbmFwc2hvdENvbmZpZ3VyYXRpb24+IHNuYXBzaG90Q29u
ZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1NuYXBzaG90Q29uZmlndXJhdGlvbiBhbGxvY10gaW5p
dF0pOworICAgIFtzbmFwc2hvdENvbmZpZ3VyYXRpb24gc2V0UmVjdDpOU01ha2VSZWN0KDAsIDAs
IHZpZXdXaWR0aCwgdmlld0hlaWdodCldOworICAgIFtzbmFwc2hvdENvbmZpZ3VyYXRpb24gc2V0
U25hcHNob3RXaWR0aDpAKHZpZXdXaWR0aCldOworCisgICAgaXNEb25lID0gZmFsc2U7CisgICAg
W3dlYlZpZXcgdGFrZVNuYXBzaG90V2l0aENvbmZpZ3VyYXRpb246c25hcHNob3RDb25maWd1cmF0
aW9uLmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oUGxhdGZvcm1JbWFnZSBzbmFwc2hvdEltYWdl
LCBOU0Vycm9yICplcnJvcikgeworICAgICAgICBFWFBFQ1RfTlVMTChlcnJvcik7CisKKyAgICAg
ICAgRVhQRUNUX0VRKHZpZXdXaWR0aCwgc25hcHNob3RJbWFnZS5zaXplLndpZHRoKTsKKworICAg
ICAgICBSZXRhaW5QdHI8Q0dJbWFnZVJlZj4gY2dJbWFnZSA9IGNvbnZlcnRUb0NHSW1hZ2Uoc25h
cHNob3RJbWFnZSk7CisgICAgICAgIFJldGFpblB0cjxDR0NvbG9yU3BhY2VSZWY+IGNvbG9yU3Bh
Y2UgPSBhZG9wdENGKENHQ29sb3JTcGFjZUNyZWF0ZURldmljZVJHQigpKTsKKworICAgICAgICB1
bnNpZ25lZCBjaGFyIHJnYmFbdmlld1dpZHRoICogdmlld0hlaWdodCAqIDRdOworICAgICAgICBD
R0NvbnRleHRSZWYgY29udGV4dCA9IENHQml0bWFwQ29udGV4dENyZWF0ZShyZ2JhLCB2aWV3V2lk
dGgsIHZpZXdIZWlnaHQsIDgsIDQgKiB2aWV3V2lkdGgsIGNvbG9yU3BhY2UuZ2V0KCksIGtDR0lt
YWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdCB8IGtDR0JpdG1hcEJ5dGVPcmRlcjMyQmlnKTsKKyAg
ICAgICAgQ0dDb250ZXh0RHJhd0ltYWdlKGNvbnRleHQsIENHUmVjdE1ha2UoMCwgMCwgdmlld1dp
ZHRoLCB2aWV3SGVpZ2h0KSwgY2dJbWFnZS5nZXQoKSk7CisKKyAgICAgICAgLy8gVG9wLWxlZnQg
Y29ybmVyIG9mIHRoZSBkaXYgKDAsIDAsIDEwMCwgMTAwKQorICAgICAgICBOU0ludGVnZXIgcGl4
ZWxJbmRleCA9IGdldFBpeGVsSW5kZXgoMCwgMCwgdmlld1dpZHRoKTsKKyAgICAgICAgRVhQRUNU
X0VRKDI1NSwgcmdiYVtwaXhlbEluZGV4XSk7CisgICAgICAgIEVYUEVDVF9FUSgwLCByZ2JhW3Bp
eGVsSW5kZXggKyAxXSk7CisgICAgICAgIEVYUEVDVF9FUSgwLCByZ2JhW3BpeGVsSW5kZXggKyAy
XSk7CisKKyAgICAgICAgLy8gUmlnaHQtYm90dG9tIGNvcm5lciBvZiB0aGUgZGl2ICgwLCAwLCAx
MDAsIDEwMCkKKyAgICAgICAgcGl4ZWxJbmRleCA9IGdldFBpeGVsSW5kZXgoOTksIDk5LCB2aWV3
V2lkdGgpOworICAgICAgICBFWFBFQ1RfRVEoMjU1LCByZ2JhW3BpeGVsSW5kZXhdKTsKKyAgICAg
ICAgRVhQRUNUX0VRKDAsIHJnYmFbcGl4ZWxJbmRleCArIDFdKTsKKyAgICAgICAgRVhQRUNUX0VR
KDAsIHJnYmFbcGl4ZWxJbmRleCArIDJdKTsKKworICAgICAgICAvLyBPdXRzaWRlIHRoZSBkaXYg
KDAsIDAsIDEwMCwgMTAwKQorICAgICAgICBwaXhlbEluZGV4ID0gZ2V0UGl4ZWxJbmRleCgxMDAs
IDEwMCwgdmlld1dpZHRoKTsKKyAgICAgICAgRVhQRUNUX0VRKDI1NSwgcmdiYVtwaXhlbEluZGV4
XSk7CisgICAgICAgIEVYUEVDVF9FUSgyNTUsIHJnYmFbcGl4ZWxJbmRleCArIDFdKTsKKyAgICAg
ICAgRVhQRUNUX0VRKDI1NSwgcmdiYVtwaXhlbEluZGV4ICsgMl0pOworCisgICAgICAgIENHQ29u
dGV4dFJlbGVhc2UoY29udGV4dCk7CisgICAgICAgIGlzRG9uZSA9IHRydWU7CisgICAgfV07CisK
KyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Cit9CisKICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308935</attachid>
            <date>2017-05-03 11:56:48 -0700</date>
            <delta_ts>2017-05-03 12:43:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171467-20170503115647.patch</filename>
            <type>text/plain</type>
            <size>12621</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjAyMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE3LTA1LTAzICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMgaW1h
Z2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRpc2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5nIGFu
ZCBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzE0NjcKKyAKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorIAorICAgICAg
ICBBc3luY2hyb25vdXMgaW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIG9ubHkgYmUgdXNlZCBmb3Igd2lu
ZG93IGRpc3BsYXkgd2hlcmUKKyAgICAgICAgUmVuZGVyRWxlbWVudHMgY2FuIGJlIHJlcGFpbnRl
ZCBhbmQgcGFpbnRlZC4gRm9yIGNhc2VzIHdoZXJlIHRoZXJlIGlzIG9ubHkKKyAgICAgICAgb25l
IGNoYW5jZSB0byBkcmF3IHRoZSBpbWFnZSwgc3luY2hyb25vdXMgZGVjb2Rpbmcgc2hvdWxkIGJl
IHVzZWQuIAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZpbGxMYXllckV4
dGVuZGVkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVySW1hZ2U6OnBhaW50SW50b1JlY3QpOgorCiAyMDE3LTA1LTAxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHNvbWUgdXNhZ2Ug
b2YgUGFzc1JlZlB0ciBpbiBlZGl0aW5nIGNvZGUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAkocmV2aXNpb24gMjE1OTU0KQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtODgyLDcgKzg4Miw4IEBAIHZvaWQgUmVuZGVyQm94TW9kZWxPYmplY3Q6
OnBhaW50RmlsbExheWUKICAgICAgICAgICAgICAgICBkb3duY2FzdDxCaXRtYXBJbWFnZT4oKmlt
YWdlKS51cGRhdGVGcm9tU2V0dGluZ3Moc2V0dGluZ3MoKSk7CiAKICAgICAgICAgICAgIGF1dG8g
aW50ZXJwb2xhdGlvbiA9IGNob29zZUludGVycG9sYXRpb25RdWFsaXR5KGNvbnRleHQsICppbWFn
ZSwgJmJnTGF5ZXIsIGdlb21ldHJ5LnRpbGVTaXplKCkpOwotICAgICAgICAgICAgY29udGV4dC5k
cmF3VGlsZWRJbWFnZSgqaW1hZ2UsIGdlb21ldHJ5LmRlc3RSZWN0KCksIHRvTGF5b3V0UG9pbnQo
Z2VvbWV0cnkucmVsYXRpdmVQaGFzZSgpKSwgZ2VvbWV0cnkudGlsZVNpemUoKSwgZ2VvbWV0cnku
c3BhY2VTaXplKCksIEltYWdlUGFpbnRpbmdPcHRpb25zKGNvbXBvc2l0ZU9wLCBiZ0xheWVyLmJs
ZW5kTW9kZSgpLCBEZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91cywgSW1hZ2VPcmllbnRhdGlvbkRl
c2NyaXB0aW9uKCksIGludGVycG9sYXRpb24pKTsKKyAgICAgICAgICAgIGF1dG8gZGVjb2RpbmdN
b2RlID0gKHZpZXcoKS5mcmFtZVZpZXcoKS5wYWludEJlaGF2aW9yKCkgJiBQYWludEJlaGF2aW9y
RmxhdHRlbkNvbXBvc2l0aW5nTGF5ZXJzKSA/IERlY29kaW5nTW9kZTo6U3luY2hyb25vdXMgOiBE
ZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91czsKKyAgICAgICAgICAgIGNvbnRleHQuZHJhd1RpbGVk
SW1hZ2UoKmltYWdlLCBnZW9tZXRyeS5kZXN0UmVjdCgpLCB0b0xheW91dFBvaW50KGdlb21ldHJ5
LnJlbGF0aXZlUGhhc2UoKSksIGdlb21ldHJ5LnRpbGVTaXplKCksIGdlb21ldHJ5LnNwYWNlU2l6
ZSgpLCBJbWFnZVBhaW50aW5nT3B0aW9ucyhjb21wb3NpdGVPcCwgYmdMYXllci5ibGVuZE1vZGUo
KSwgZGVjb2RpbmdNb2RlLCBJbWFnZU9yaWVudGF0aW9uRGVzY3JpcHRpb24oKSwgaW50ZXJwb2xh
dGlvbikpOwogICAgICAgICB9CiAgICAgfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVySW1hZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJJbWFnZS5jcHAJKHJldmlzaW9uIDIxNTk1NCkKKysrIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJJbWFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU4NCw3ICs1ODQsOCBA
QCB2b2lkIFJlbmRlckltYWdlOjpwYWludEludG9SZWN0KEdyYXBoaWNzCiAgICAgICAgIGRvd25j
YXN0PEJpdG1hcEltYWdlPigqaW1hZ2UpLnVwZGF0ZUZyb21TZXR0aW5ncyhzZXR0aW5ncygpKTsK
IAogICAgIEltYWdlT3JpZW50YXRpb25EZXNjcmlwdGlvbiBvcmllbnRhdGlvbkRlc2NyaXB0aW9u
KHNob3VsZFJlc3BlY3RJbWFnZU9yaWVudGF0aW9uKCksIHN0eWxlKCkuaW1hZ2VPcmllbnRhdGlv
bigpKTsKLSAgICBjb250ZXh0LmRyYXdJbWFnZSgqaW1nLCByZWN0LCBJbWFnZVBhaW50aW5nT3B0
aW9ucyhjb21wb3NpdGVPcGVyYXRvciwgQmxlbmRNb2RlTm9ybWFsLCBEZWNvZGluZ01vZGU6OkFz
eW5jaHJvbm91cywgb3JpZW50YXRpb25EZXNjcmlwdGlvbiwgaW50ZXJwb2xhdGlvbikpOworICAg
IGF1dG8gZGVjb2RpbmdNb2RlID0gKHZpZXcoKS5mcmFtZVZpZXcoKS5wYWludEJlaGF2aW9yKCkg
JiBQYWludEJlaGF2aW9yRmxhdHRlbkNvbXBvc2l0aW5nTGF5ZXJzKSA/IERlY29kaW5nTW9kZTo6
U3luY2hyb25vdXMgOiBEZWNvZGluZ01vZGU6OkFzeW5jaHJvbm91czsKKyAgICBjb250ZXh0LmRy
YXdJbWFnZSgqaW1nLCByZWN0LCBJbWFnZVBhaW50aW5nT3B0aW9ucyhjb21wb3NpdGVPcGVyYXRv
ciwgQmxlbmRNb2RlTm9ybWFsLCBkZWNvZGluZ01vZGUsIG9yaWVudGF0aW9uRGVzY3JpcHRpb24s
IGludGVycG9sYXRpb24pKTsKIH0KIAogYm9vbCBSZW5kZXJJbWFnZTo6Ym94U2hhZG93U2hvdWxk
QmVBcHBsaWVkVG9CYWNrZ3JvdW5kKGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCwgQmFj
a2dyb3VuZEJsZWVkQXZvaWRhbmNlIGJsZWVkQXZvaWRhbmNlLCBJbmxpbmVGbG93Qm94KikgY29u
c3QKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDIxNjEyMSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE4IEBACisyMDE3LTA1LTAzICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3
YUBhcHBsZS5jb20+CisKKyAgICAgICAgQXN5bmMgaW1hZ2UgZGVjb2Rpbmcgc2hvdWxkIGJlIGRp
c2FibGVkIGZvciBzbmFwc2hvdHMsIHByaW50aW5nIGFuZCBwcmV2aWV3CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzE0NjcKKworICAgICAgICBSZXZp
ZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgQWRkIGEgQVBJIHRlc3QgZm9yIHNuYXBz
aG90dGluZyB3aXRoIGxhcmdlIGltYWdlcy4gRW5zdXJlIHRoZSBpbWFnZXMgYXJlCisgICAgICAg
IGRyYXduIGNvcnJlY3RseSB3aGljaCBpbXBsaWVzIHRoZXkgc2hvdWxkIGhhdmUgYmVlbiBzeW5j
aHJvbm91c2x5IGRlY29kZWQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRB
UEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9XS1dlYlZpZXdTbmFwc2hvdC5tbToK
KyAgICAgICAgKFRFU1QpOgorCiAyMDE3LTA1LTAyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CiAKICAgICAgICAgY2hlY2std2Via2l0LXN0eWxlIHNob3VsZCBhbHNvIGtlZXAg
anMtdGVzdC1wb3N0Wy1hc3luY10uanMgaW4gc3luYwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oJKHJldmlzaW9uIDIxNTk1NCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQ
SS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xODAsNiArMTgw
LDcgQEAKIAkJNTM2NzcwMzQxQ0M4MDIyODAwRDQyNUIxIC8qIFdlYlNjcmlwdE9iamVjdERlc2Ny
aXB0aW9uLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM2NzcwMzMxQ0M4MDIyODAwRDQyNUIxIC8qIFdlYlNjcmlwdE9iamVjdERlc2NyaXB0aW9uLm1t
ICovOyB9OwogCQk1MzY3NzAzNjFDQzgxQjYxMDBENDI1QjEgLyogV2ViU2NyaXB0T2JqZWN0RGVz
Y3JpcHRpb24uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MzY3NzAzNTFDQzgxMkY5MDBENDI1QjEgLyogV2ViU2NyaXB0T2JqZWN0RGVz
Y3JpcHRpb24uaHRtbCAqLzsgfTsKIAkJNTNFQzI1NDExRTk2RkQ4NzAwMDgzMUI5IC8qIFByaW9y
aXR5UXVldWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTNFQzI1M0YxRTk2QkM4MDAwMDgzMUI5IC8qIFByaW9yaXR5UXVldWUuY3BwICovOyB9Owor
CQk1NTIyNkEyRjFFQkE0NEI5MDBDMzZBRDAgLyogbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1s
IGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU1
MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1yZWQtc3F1YXJlLWltYWdlLmh0bWwgKi87
IH07CiAJCTU1OTdGODM2MUQ5NTk2QzgwMDY2QkMyMSAvKiBTeW5jaHJvbml6ZWRGaXhlZFF1ZXVl
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU1OTdG
ODM0MUQ5NTk2QzgwMDY2QkMyMSAvKiBTeW5jaHJvbml6ZWRGaXhlZFF1ZXVlLmNwcCAqLzsgfTsK
IAkJNTcxNEVDQjkxQ0E4QjVCMDAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVzdE9yaWdpbmFsVVJM
Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTcxNEVDQjgxQ0E4QjU4ODAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVzdE9yaWdpbmFsVVJM
Lmh0bWwgKi87IH07CiAJCTU3MTRFQ0JCMUNBOEJGRTQwMDA1MUFDOCAvKiBEb3dubG9hZFJlcXVl
c3RPcmlnaW5hbFVSTEZyYW1lLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTcxNEVDQkExQ0E4QkZEMTAwMDUxQUM4IC8qIERvd25sb2Fk
UmVxdWVzdE9yaWdpbmFsVVJMRnJhbWUuaHRtbCAqLzsgfTsKQEAgLTY4MSw2ICs2ODIsNyBAQAog
CQkJZHN0UGF0aCA9IFRlc3RXZWJLaXRBUEkucmVzb3VyY2VzOwogCQkJZHN0U3ViZm9sZGVyU3Bl
YyA9IDc7CiAJCQlmaWxlcyA9ICgKKwkJCQk1NTIyNkEyRjFFQkE0NEI5MDBDMzZBRDAgLyogbGFy
Z2UtcmVkLXNxdWFyZS1pbWFnZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTA3NDk5
NDQyMUVBNTAzNEIwMDBEQTQ0RSAvKiBnZXRVc2VyTWVkaWEuaHRtbCBpbiBDb3B5IFJlc291cmNl
cyAqLywKIAkJCQlDOUJGMDZFRjFFOUMxMzI1MDA1OTVFM0UgLyogYXV0b3BsYXktbXV0ZWQtd2l0
aC1jb250cm9scy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0REVGNkVEMUU5QjRE
QjYwMDQ4RUY2MSAvKiBpbWFnZS1pbi1saW5rLWFuZC1pbnB1dC5odG1sIGluIENvcHkgUmVzb3Vy
Y2VzICovLApAQCAtMTEyOSw2ICsxMTMxLDcgQEAKIAkJNTM2NzcwMzMxQ0M4MDIyODAwRDQyNUIx
IC8qIFdlYlNjcmlwdE9iamVjdERlc2NyaXB0aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gV2ViU2NyaXB0T2JqZWN0RGVzY3JpcHRpb24ubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUzNjc3MDM1MUNDODEyRjkwMEQ0MjVCMSAvKiBXZWJTY3Jp
cHRPYmplY3REZXNjcmlwdGlvbi5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gV2Vi
U2NyaXB0T2JqZWN0RGVzY3JpcHRpb24uaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTNFQzI1M0YxRTk2QkM4MDAwMDgzMUI5IC8qIFByaW9yaXR5UXVldWUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJpb3JpdHlRdWV1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1y
ZWQtc3F1YXJlLWltYWdlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAibGFyZ2Ut
cmVkLXNxdWFyZS1pbWFnZS5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTU5
N0Y4MzQxRDk1OTZDODAwNjZCQzIxIC8qIFN5bmNocm9uaXplZEZpeGVkUXVldWUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3luY2hyb25pemVkRml4ZWRRdWV1ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU3MTRFQ0I4MUNBOEI1ODgwMDA1MUFD
OCAvKiBEb3dubG9hZFJlcXVlc3RPcmlnaW5hbFVSTC5odG1sICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1s
OyBwYXRoID0gRG93bmxvYWRSZXF1ZXN0T3JpZ2luYWxVUkwuaHRtbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNTcxNEVDQkExQ0E4QkZEMTAwMDUxQUM4IC8qIERvd25sb2FkUmVxdWVz
dE9yaWdpbmFsVVJMRnJhbWUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9IERvd25s
b2FkUmVxdWVzdE9yaWdpbmFsVVJMRnJhbWUuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTIyMDgsNiArMjIxMSw3IEBACiAJCUJDOTA5NzdCMTI1NTcxQUUwMDA4Mzc1NiAvKiBS
ZXNvdXJjZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJ
CTU1MjI2QTJFMUVCOTY5QjYwMEMzNkFEMCAvKiBsYXJnZS1yZWQtc3F1YXJlLWltYWdlLmh0bWwg
Ki8sCiAJCQkJQzA0NUY5NDYxMzg1QzJGODAwQzBGM0NEIC8qIDE4LWNoYXJhY3RlcnMuaHRtbCAq
LywKIAkJCQkxQzJCODE4NTFDODkyNTIzMDBBNTUyOUYgLyogQWhlbS50dGYgKi8sCiAJCQkJOTNE
M0QxOUIxN0IxQTdCMDAwQzdDNDE1IC8qIGFsbC1jb250ZW50LWluLW9uZS1pZnJhbWUuaHRtbCAq
LywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9sYXJnZS1yZWQtc3F1
YXJlLWltYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL2xhcmdlLXJlZC1zcXVhcmUtaW1hZ2UuaHRtbAkobm9uZXhpc3RlbnQpCisrKyBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvbGFyZ2UtcmVkLXNxdWFyZS1pbWFnZS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTMgQEAKKzxzdHlsZT4KKyAgICAucmVkLWJveCB7
CisgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnbGFyZ2UtcmVkLXNxdWFyZS5wbmcnKTsK
KyAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7CisgICAgICAgIHdpZHRoOjEwMHB4OworICAgICAg
ICBoZWlnaHQ6MTAwcHg7CisgICAgICAgIHRvcDowcHg7CisgICAgICAgIGxlZnQ6MHB4OworICAg
IH0KKzwvc3R5bGU+Cis8Ym9keT4KKyAgICA8ZGl2IGNsYXNzPSJyZWQtYm94Ij48L2Rpdj4KKzwv
Ym9keT4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1dLV2Vi
Vmlld1NuYXBzaG90Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0MkNvY29hL1dLV2ViVmlld1NuYXBzaG90Lm1tCShyZXZpc2lvbiAyMTU5NTQpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9XS1dlYlZpZXdTbmFwc2hvdC5t
bQkod29ya2luZyBjb3B5KQpAQCAtMTIzLDggKzEyMyw4IEBAIFRFU1QoV0tXZWJWaWV3LCBTbmFw
c2hvdEltYWdlQmFzZUNhc2UpCiAgICAgICAgIE5TSW50ZWdlciB2aWV3SGVpZ2h0SW5QaXhlbHMg
PSB2aWV3SGVpZ2h0ICogYmFja2luZ1NjYWxlRmFjdG9yOwogCiAgICAgICAgIHVuc2lnbmVkIGNo
YXIgcmdiYVt2aWV3V2lkdGhJblBpeGVscyAqIHZpZXdIZWlnaHRJblBpeGVscyAqIDRdOwotICAg
ICAgICBDR0NvbnRleHRSZWYgY29udGV4dCA9IENHQml0bWFwQ29udGV4dENyZWF0ZShyZ2JhLCB2
aWV3V2lkdGhJblBpeGVscywgdmlld0hlaWdodEluUGl4ZWxzLCA4LCA0ICogdmlld1dpZHRoSW5Q
aXhlbHMsIGNvbG9yU3BhY2UuZ2V0KCksIGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdCB8
IGtDR0JpdG1hcEJ5dGVPcmRlcjMyQmlnKTsKLSAgICAgICAgQ0dDb250ZXh0RHJhd0ltYWdlKGNv
bnRleHQsIENHUmVjdE1ha2UoMCwgMCwgdmlld1dpZHRoSW5QaXhlbHMsIHZpZXdIZWlnaHRJblBp
eGVscyksIGNnSW1hZ2UuZ2V0KCkpOworICAgICAgICBSZXRhaW5QdHI8Q0dDb250ZXh0UmVmPiBj
b250ZXh0ID0gQ0dCaXRtYXBDb250ZXh0Q3JlYXRlKHJnYmEsIHZpZXdXaWR0aEluUGl4ZWxzLCB2
aWV3SGVpZ2h0SW5QaXhlbHMsIDgsIDQgKiB2aWV3V2lkdGhJblBpeGVscywgY29sb3JTcGFjZS5n
ZXQoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxpZWRMYXN0IHwga0NHQml0bWFwQnl0ZU9yZGVy
MzJCaWcpOworICAgICAgICBDR0NvbnRleHREcmF3SW1hZ2UoY29udGV4dC5nZXQoKSwgQ0dSZWN0
TWFrZSgwLCAwLCB2aWV3V2lkdGhJblBpeGVscywgdmlld0hlaWdodEluUGl4ZWxzKSwgY2dJbWFn
ZS5nZXQoKSk7CiAKICAgICAgICAgTlNJbnRlZ2VyIHBpeGVsSW5kZXggPSBnZXRQaXhlbEluZGV4
KDAsIDAsIHZpZXdXaWR0aEluUGl4ZWxzKTsKICAgICAgICAgRVhQRUNUX0VRKDI1NSwgcmdiYVtw
aXhlbEluZGV4XSk7CkBAIC0xNDIsNyArMTQyLDYgQEAgVEVTVChXS1dlYlZpZXcsIFNuYXBzaG90
SW1hZ2VCYXNlQ2FzZSkKICAgICAgICAgRVhQRUNUX0VRKDAsIHJnYmFbcGl4ZWxJbmRleCArIDFd
KTsKICAgICAgICAgRVhQRUNUX0VRKDAsIHJnYmFbcGl4ZWxJbmRleCArIDJdKTsKIAotICAgICAg
ICBDR0NvbnRleHRSZWxlYXNlKGNvbnRleHQpOwogICAgICAgICBpc0RvbmUgPSB0cnVlOwogICAg
IH1dOwogCkBAIC0yNDQsNCArMjQzLDU1IEBAIFRFU1QoV0tXZWJWaWV3LCBTbmFwc2hvdEltYWdl
VW5pbml0aWFsaXoKICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7CiB9CiAK
K1RFU1QoV0tXZWJWaWV3LCBTbmFwc2hvdEltYWdlTGFyZ2VBc3luY0RlY29kaW5nKQoreworICAg
IE5TSW50ZWdlciB2aWV3V2lkdGggPSA4MDA7CisgICAgTlNJbnRlZ2VyIHZpZXdIZWlnaHQgPSA2
MDA7CisgICAgUmV0YWluUHRyPFdLV2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tXS1dlYlZp
ZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCB2aWV3V2lkdGgsIHZpZXdI
ZWlnaHQpXSk7CisKKyAgICBOU1VSTCAqZmlsZVVSTCA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0g
VVJMRm9yUmVzb3VyY2U6QCJsYXJnZS1yZWQtc3F1YXJlLWltYWdlIiB3aXRoRXh0ZW5zaW9uOkAi
aHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXTsKKyAgICBbd2Vi
VmlldyBsb2FkRmlsZVVSTDpmaWxlVVJMIGFsbG93aW5nUmVhZEFjY2Vzc1RvVVJMOmZpbGVVUkxd
OworICAgIFt3ZWJWaWV3IF90ZXN0X3dhaXRGb3JEaWRGaW5pc2hOYXZpZ2F0aW9uXTsKKworICAg
IFJldGFpblB0cjxXS1NuYXBzaG90Q29uZmlndXJhdGlvbj4gc25hcHNob3RDb25maWd1cmF0aW9u
ID0gYWRvcHROUyhbW1dLU25hcHNob3RDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAg
W3NuYXBzaG90Q29uZmlndXJhdGlvbiBzZXRSZWN0Ok5TTWFrZVJlY3QoMCwgMCwgdmlld1dpZHRo
LCB2aWV3SGVpZ2h0KV07CisgICAgW3NuYXBzaG90Q29uZmlndXJhdGlvbiBzZXRTbmFwc2hvdFdp
ZHRoOkAodmlld1dpZHRoKV07CisKKyAgICBpc0RvbmUgPSBmYWxzZTsKKyAgICBbd2ViVmlldyB0
YWtlU25hcHNob3RXaXRoQ29uZmlndXJhdGlvbjpzbmFwc2hvdENvbmZpZ3VyYXRpb24uZ2V0KCkg
Y29tcGxldGlvbkhhbmRsZXI6XihQbGF0Zm9ybUltYWdlIHNuYXBzaG90SW1hZ2UsIE5TRXJyb3Ig
KmVycm9yKSB7CisgICAgICAgIEVYUEVDVF9OVUxMKGVycm9yKTsKKworICAgICAgICBFWFBFQ1Rf
RVEodmlld1dpZHRoLCBzbmFwc2hvdEltYWdlLnNpemUud2lkdGgpOworCisgICAgICAgIFJldGFp
blB0cjxDR0ltYWdlUmVmPiBjZ0ltYWdlID0gY29udmVydFRvQ0dJbWFnZShzbmFwc2hvdEltYWdl
KTsKKyAgICAgICAgUmV0YWluUHRyPENHQ29sb3JTcGFjZVJlZj4gY29sb3JTcGFjZSA9IGFkb3B0
Q0YoQ0dDb2xvclNwYWNlQ3JlYXRlRGV2aWNlUkdCKCkpOworCisgICAgICAgIHVuc2lnbmVkIGNo
YXIgcmdiYVt2aWV3V2lkdGggKiB2aWV3SGVpZ2h0ICogNF07CisgICAgICAgIFJldGFpblB0cjxD
R0NvbnRleHRSZWY+IGNvbnRleHQgPSBDR0JpdG1hcENvbnRleHRDcmVhdGUocmdiYSwgdmlld1dp
ZHRoLCB2aWV3SGVpZ2h0LCA4LCA0ICogdmlld1dpZHRoLCBjb2xvclNwYWNlLmdldCgpLCBrQ0dJ
bWFnZUFscGhhUHJlbXVsdGlwbGllZExhc3QgfCBrQ0dCaXRtYXBCeXRlT3JkZXIzMkJpZyk7Cisg
ICAgICAgIENHQ29udGV4dERyYXdJbWFnZShjb250ZXh0LmdldCgpLCBDR1JlY3RNYWtlKDAsIDAs
IHZpZXdXaWR0aCwgdmlld0hlaWdodCksIGNnSW1hZ2UuZ2V0KCkpOworCisgICAgICAgIC8vIFRv
cC1sZWZ0IGNvcm5lciBvZiB0aGUgZGl2ICgwLCAwLCAxMDAsIDEwMCkKKyAgICAgICAgTlNJbnRl
Z2VyIHBpeGVsSW5kZXggPSBnZXRQaXhlbEluZGV4KDAsIDAsIHZpZXdXaWR0aCk7CisgICAgICAg
IEVYUEVDVF9FUSgyNTUsIHJnYmFbcGl4ZWxJbmRleF0pOworICAgICAgICBFWFBFQ1RfRVEoMCwg
cmdiYVtwaXhlbEluZGV4ICsgMV0pOworICAgICAgICBFWFBFQ1RfRVEoMCwgcmdiYVtwaXhlbElu
ZGV4ICsgMl0pOworCisgICAgICAgIC8vIFJpZ2h0LWJvdHRvbSBjb3JuZXIgb2YgdGhlIGRpdiAo
MCwgMCwgMTAwLCAxMDApCisgICAgICAgIHBpeGVsSW5kZXggPSBnZXRQaXhlbEluZGV4KDk5LCA5
OSwgdmlld1dpZHRoKTsKKyAgICAgICAgRVhQRUNUX0VRKDI1NSwgcmdiYVtwaXhlbEluZGV4XSk7
CisgICAgICAgIEVYUEVDVF9FUSgwLCByZ2JhW3BpeGVsSW5kZXggKyAxXSk7CisgICAgICAgIEVY
UEVDVF9FUSgwLCByZ2JhW3BpeGVsSW5kZXggKyAyXSk7CisKKyAgICAgICAgLy8gT3V0c2lkZSB0
aGUgZGl2ICgwLCAwLCAxMDAsIDEwMCkKKyAgICAgICAgcGl4ZWxJbmRleCA9IGdldFBpeGVsSW5k
ZXgoMTAwLCAxMDAsIHZpZXdXaWR0aCk7CisgICAgICAgIEVYUEVDVF9FUSgyNTUsIHJnYmFbcGl4
ZWxJbmRleF0pOworICAgICAgICBFWFBFQ1RfRVEoMjU1LCByZ2JhW3BpeGVsSW5kZXggKyAxXSk7
CisgICAgICAgIEVYUEVDVF9FUSgyNTUsIHJnYmFbcGl4ZWxJbmRleCArIDJdKTsKKworICAgICAg
ICBpc0RvbmUgPSB0cnVlOworICAgIH1dOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVu
KCZpc0RvbmUpOworfQorCiAjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>