<?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>148720</bug_id>
          
          <creation_ts>2015-09-02 13:06:14 -0700</creation_ts>
          <short_desc>Web Inspector: Add font-variant-* to the visual styles sidebar</short_desc>
          <delta_ts>2016-01-29 10:00:17 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>WebKit Local Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=153645</see_also>
          <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="Timothy Hatcher">timothy</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>agomez</cc>
    
    <cc>bburg</cc>
    
    <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>mattbaker</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1122882</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2015-09-02 13:06:14 -0700</bug_when>
    <thetext>font-feature-settings is very cryptic, and the visual sidebar would be helpful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123198</commentid>
    <comment_count>1</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2015-09-03 15:48:11 -0700</bug_when>
    <thetext>No no no no :(

Please do not do this.

Instead, please add font-variant-* to the sidebar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123243</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-09-03 17:53:06 -0700</bug_when>
    <thetext>&lt;rdar://problem/22569974&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124402</commentid>
    <comment_count>3</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2015-09-08 14:45:29 -0700</bug_when>
    <thetext>So the only font-variant-* that I could find in CSSPropertyNames.in are:

font-variant (already implemented with &quot;small-caps&quot;)
-webkit-font-variant-ligatures

I do know that the spec calls for many more than that, but since they aren&apos;t implemented yet (as far as I can tell), should we only add these two?


@Myles C. Maxfield &lt;mmaxfield@apple.com&gt;,
Just curious, but why is it that you don&apos;t want to implement font-feature-settings?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124409</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2015-09-08 14:53:16 -0700</bug_when>
    <thetext>Correct, I have not implemented font-variant-* yet.

font-variant-* is the preferred API. It isn&apos;t font file format-specific, and provides synthesis for certain properties if the feature is unavailable. It conveys the authors intentions more clearly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159486</commentid>
    <comment_count>5</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-01-27 15:43:50 -0800</bug_when>
    <thetext>So now that &lt;https://webkit.org/blog/5735/css-font-features/&gt; is live, I am assuming that font-variant-* is implemented enough to allow this to move forward?  If so, should I just implement all of them, or are there a specific few that are more important?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159496</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-01-27 15:57:04 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; So now that &lt;https://webkit.org/blog/5735/css-font-features/&gt; is live, I am
&gt; assuming that font-variant-* is implemented enough to allow this to move
&gt; forward?  If so, should I just implement all of them, or are there a
&gt; specific few that are more important?

Yes!

All the values are similar enough that I don&apos;t think it&apos;s worth discriminating important from not important; just doing them all in one fell swoop should be fairly straightforward.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159891</commentid>
    <comment_count>7</comment_count>
      <attachid>270148</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-01-28 14:49:04 -0800</bug_when>
    <thetext>Created attachment 270148
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159938</commentid>
    <comment_count>8</comment_count>
      <attachid>270148</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2016-01-28 16:24:07 -0800</bug_when>
    <thetext>Comment on attachment 270148
Patch

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

&gt; Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js:748
&gt; +        properties.fontVariantNumeric = new WebInspector.VisualStyleKeywordPicker(&quot;font-variant-numeric&quot;, WebInspector.UIString(&quot;Numeric&quot;), this._keywords.normal.concat([&quot;None&quot;, &quot;Ordinal&quot;, &quot;Slashed Zero&quot;, &quot;Lining Nums&quot;, &quot;Oddstyle Nums&quot;, &quot;Proportional Nums&quot;, &quot;Tabular Nums&quot;, &quot;Diagonal Fractions&quot;, &quot;Stacked Fractions&quot;]));

Oldstyle Nums.

The spec seems to allow multiple values for one property. That isn&apos;t possible with a popup menu. That complicates things, hmm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159965</commentid>
    <comment_count>9</comment_count>
      <attachid>270148</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-01-28 17:57:55 -0800</bug_when>
    <thetext>Comment on attachment 270148
Patch

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js:748
&gt;&gt; +        properties.fontVariantNumeric = new WebInspector.VisualStyleKeywordPicker(&quot;font-variant-numeric&quot;, WebInspector.UIString(&quot;Numeric&quot;), this._keywords.normal.concat([&quot;None&quot;, &quot;Ordinal&quot;, &quot;Slashed Zero&quot;, &quot;Lining Nums&quot;, &quot;Oddstyle Nums&quot;, &quot;Proportional Nums&quot;, &quot;Tabular Nums&quot;, &quot;Diagonal Fractions&quot;, &quot;Stacked Fractions&quot;]));
&gt; 
&gt; Oldstyle Nums.
&gt; 
&gt; The spec seems to allow multiple values for one property. That isn&apos;t possible with a popup menu. That complicates things, hmm.

I actually also noticed this, but I wasn&apos;t sure how to approach the idea of allowing multiple.  The most straightforward idea I had was to do some sort of &quot;&amp;&quot; option (like &quot;Lining &amp; Proportional Nums&quot;), but the number of combinations could potentially be large).  The other idea I came up with was to create a modified form of the VisualStyleCommaSeparatedKeywordEditor but for a token list instead (which would allow for easier autocompletion), but this also seemed to be excessive for something that rarely has more than two values.

Since I wasn&apos;t sure how to move forward, I figured that I would add something basic that encompassed the majority of cases in the meantime while some other option was considered (similar to the VisualStyleBasicInput I used for the content and font-variant-alternates properties, since each has special functions that are hard to add cases for).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1160009</commentid>
    <comment_count>10</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2016-01-28 21:31:12 -0800</bug_when>
    <thetext>Okay. Fix the typo and add a FIXME, and we can land it.

An option would be to allow multiple popups to be side by side, maybe one popup and when it has a value show a plus button that adds another popup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1160070</commentid>
    <comment_count>11</comment_count>
      <attachid>270195</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-01-29 02:14:05 -0800</bug_when>
    <thetext>Created attachment 270195
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1160147</commentid>
    <comment_count>12</comment_count>
      <attachid>270195</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-29 10:00:13 -0800</bug_when>
    <thetext>Comment on attachment 270195
Patch

Clearing flags on attachment: 270195

Committed r195819: &lt;http://trac.webkit.org/changeset/195819&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1160148</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-29 10:00:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>270148</attachid>
            <date>2016-01-28 14:49:04 -0800</date>
            <delta_ts>2016-01-29 02:14:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148720-20160128144838.patch</filename>
            <type>text/plain</type>
            <size>15136</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDJlYTY4YTZhMThiOTlkYTVkZmNmYTNlYzhhY2Jk
NWMxOWM0Y2JhMDguLjg4OTU1ZDIzNDRhNjg3MjY4MDE5NzhlMzZhMDcyYzJhMGI5MGJhODEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE2LTAxLTI4ICBEZXZp
biBSb3Vzc28gIDxkY3JvdXNzbyt3ZWJraXRAZ21haWwuY29tPgorCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IEFkZCBmb250LXZhcmlhbnQtKiB0byB0aGUgdmlzdWFsIHN0eWxlcyBzaWRlYmFyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg3MjAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIyNTY5OTc0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGFub3RoZXIgc3Vic2VjdGlvbiB0byB0aGUg
IlRleHQiIHNlY3Rpb24gZm9yIGZvbnQtdmFyaWFudC0qCisgICAgICAgIHByb3BlcnRpZXMuCisK
KyAgICAgICAgKiBMb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6Cisg
ICAgICAgICogVXNlckludGVyZmFjZS9JbWFnZXMvRm9udFZhcmlhbnRTbWFsbENhcHMuc3ZnOiBS
ZW1vdmVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9WaXN1YWxTdHlsZURldGFp
bHNQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5l
bCk6CisgICAgICAgIEFkZGVkIGFub3RoZXIga2V5d29yZCBncm91cGluZyB3aXRoIHRoZSAibm9y
bWFsIiB2YWx1ZSBzaW5jZSBpdCBpcyB1c2VkCisgICAgICAgIGZyZXF1ZW50bHkgaW4gbXVsdGlw
bGUgc3Vic2VjdGlvbnMuCisKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFp
bHNQYW5lbC5wcm90b3R5cGUuX3BvcHVsYXRlRm9udFNlY3Rpb24pOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsLnByb3RvdHlwZS5fcG9wdWxhdGVGb250VmFy
aWFudHNTZWN0aW9uKToKKyAgICAgICAgQWRkZWQgdGhlIGZpdmUgbmV3IGZvbnQtdmFyaWFudC0q
IHByb3BlcnRpZXMgc3BlY2lmaWVkIGluCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYmxv
Zy81NzM1L2Nzcy1mb250LWZlYXR1cmVzLz4uCisKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1
YWxTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5cGUuX3BvcHVsYXRlVGV4dFNwYWNpbmdTZWN0aW9u
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5
cGUuX3BvcHVsYXRlQW5pbWF0aW9uU2VjdGlvbik6CisgICAgICAgIFJlcGxhY2VkIHRoZSBoYXJk
Y29kZWQgIm5vcm1hbCIga2V5d29yZCB3aXRoIHRoZSBuZXcgZ3JvdXBpbmcuCisKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlS2V5d29yZENoZWNrYm94LmNzczoKKyAg
ICAgICAgKC52aXN1YWwtc3R5bGUtcHJvcGVydHktY29udGFpbmVyLmtleXdvcmQtY2hlY2tib3gu
Zm9udC12YXJpYW50ID4gLnZpc3VhbC1zdHlsZS1wcm9wZXJ0eS12YWx1ZS1jb250YWluZXIgPiBp
bnB1dDo6YWZ0ZXIpOiBEZWxldGVkLgorCiAyMDE2LTAxLTI4ICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQXZvaWQgcmVjcmVh
dGluZyBUaW1lbGluZSdzIERhdGFHcmlkTm9kZSBkYXRhIG11bHRpcGxlIHRpbWVzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6
ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCAzOTA0ZTk2NGI0MDVjZDUyODY2Y2FmOGQyM2Jh
MjFkYTRjNDM3YWJmLi5jNmYwOTMyNjgxMDQ1ZjJmN2E5NDA3MWY4ZmU5OTEzMmVhOWNmYThlIDEw
MDY0NApHSVQgYmluYXJ5IHBhdGNoCmRlbHRhIDMxMQp6Y21YQHIhTWRUQmJ3ZDhlbmAmJG1PSChI
MXZ1KnkqPHtgcUohJSlKSSUyMzNSJEI7UHJnMVJVUXxBVl5tV19SZygKekJFclFDTihgfEszSmtW
RHRpPDVWa2pQTGxTOzE2KUA/JE5UJjkoKyU1dihDVnE0ZGNIOWdAc0kpP14xdy1PMkh0CnpKZDl6
SloqP2olaEUzfFNwUy1fQVklPjNEdUYxOT9KZSY3LSsrYkh0MT9uaGFDPFdTXyU3QUxUOCZDdSlI
K2pNbQp6e21vTStfLUx4OSEtTyFEYCFIbE96LTIpaUNoUEN3K3gmV2BocVNzTShFTURtPz1sJlpR
TWBhNkdnO3d8P3E8YGcKYUMoPFMjRlhFZmRYflcxamBEP1N6YzFJZ1ZQN1ZNUjRwKTh2CgpkZWx0
YSA3OAp6Y21WLVUwSX5uRGpSbmV4MSgwdShqfE9WN1p6Y3dfe3t+MUR2IXhyfTZ0bEBOWmRqOGFp
V1pYfXkkWHtfaTQzekoKa2lyNUZVT19FOX12Kz11OTg/JSt5JTRVfmdKXj5uJk1UOUUxciM9QSoy
cTtWLWVnRlVmCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvSW1hZ2VzL0ZvbnRWYXJpYW50U21hbGxDYXBzLnN2ZyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0ltYWdlcy9Gb250VmFyaWFudFNtYWxsQ2Fwcy5zdmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVlYWQ1YmQ4MTJlMzQ2YTIyMGFhYmFjN2JmYTUyMTgzNmY1
ZjI4ODMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvSW1hZ2VzL0ZvbnRWYXJpYW50U21hbGxD
YXBzLnN2ZworKysgL2Rldi9udWxsCkBAIC0xLDUgKzAsMCBAQAotPD94bWwgdmVyc2lvbj0iMS4w
IiBlbmNvZGluZz0idXRmLTgiPz4KLTwhLS0gQ29weXJpZ2h0IMKpIDIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLiAtLT4KLTxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnIiBpZD0icm9vdCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTYgMTYiPgotICAg
IDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTSA0LjQ0MzM1OTM4IDguMDYwNTQ2ODggTCAz
LjM1NDQ5MjE5IDQuODkxNjAxNTYgTCAyLjE5NzI2NTYyIDguMDYwNTQ2ODggTCA0LjQ0MzM1OTM4
IDguMDYwNTQ2ODggWiBNIDIuODQ2Njc5NjkgMy44MjcxNDg0NCBMIDMuOTQ1MzEyNSAzLjgyNzE0
ODQ0IEwgNi41NDc4NTE1NiAxMSBMIDUuNDgzMzk4NDQgMTEgTCA0Ljc1NTg1OTM4IDguODUxNTYy
NSBMIDEuOTE4OTQ1MzEgOC44NTE1NjI1IEwgMS4xNDI1NzgxMiAxMSBMIDAuMTQ2NDg0Mzc1IDEx
IEwgMi44NDY2Nzk2OSAzLjgyNzE0ODQ0IFogTSA3LjAxNjExMzI4IDUuOTc5MDAzOTEgTCA5LjE3
Mjg1MTU2IDUuOTc5MDAzOTEgQyA5Ljc2MDc0NTEzIDUuOTc5MDAzOTEgMTAuMTc4ODcyNSA2LjE1
NDQ1Nzg4IDEwLjQyNzI0NjEgNi41MDUzNzEwOSBDIDEwLjU3MzA4MDIgNi43MTI3Mjg5IDEwLjY0
NTk5NjEgNi45NTE5ODQzMiAxMC42NDU5OTYxIDcuMjIzMTQ0NTMgQyAxMC42NDU5OTYxIDcuNTM5
ODc3ODkgMTAuNTU1OTkwNSA3Ljc5OTY0MDkxIDEwLjM3NTk3NjYgOC4wMDI0NDE0MSBDIDEwLjI4
MjU1MTYgOC4xMDk1MzgzIDEwLjE0ODExMjkgOC4yMDc1MTkwOSA5Ljk3MjY1NjI1IDguMjk2Mzg2
NzIgQyAxMC4yMzAxNDQ1IDguMzk0MzY4OTggMTAuNDIyNjg4MiA4LjUwNDg4MjIgMTAuNTUwMjkz
IDguNjI3OTI5NjkgQyAxMC43NzU4OCA4Ljg0NjY4MDc4IDEwLjg4ODY3MTkgOS4xNDg1OTgzMyAx
MC44ODg2NzE5IDkuNTMzNjkxNDEgQyAxMC44ODg2NzE5IDkuODU3MjYwNzMgMTAuNzg3MjczMSAx
MC4xNTAwNjM4IDEwLjU4NDQ3MjcgMTAuNDEyMTA5NCBDIDEwLjI4MTQxMTIgMTAuODA0MDM4NCA5
Ljc5OTQ4MjQ3IDExIDkuMTM4NjcxODggMTEgTCA3LjAxNjExMzI4IDExIEwgNy4wMTYxMTMyOCA1
Ljk3OTAwMzkxIFogTSA4LjkxOTkyMTg4IDguMTAxNTYyNSBDIDkuMjA3MDMyNjkgOC4xMDE1NjI1
IDkuNDMwMzM3NzQgOC4wNjE2ODY2IDkuNTg5ODQzNzUgNy45ODE5MzM1OSBDIDkuODQwNDk2MDQg
Ny44NTY2MDc0NSA5Ljk2NTgyMDMxIDcuNjMxMDIzNzYgOS45NjU4MjAzMSA3LjMwNTE3NTc4IEMg
OS45NjU4MjAzMSA2Ljk3NzA0OTE0IDkuODMyNTIwODYgNi43NTYwMjI3MSA5LjU2NTkxNzk3IDYu
NjQyMDg5ODQgQyA5LjQxNTUyNjU5IDYuNTc4Mjg3NDQgOS4xOTIyMjE1MyA2LjU0NjM4NjcyIDgu
ODk1OTk2MDkgNi41NDYzODY3MiBMIDcuNjgyNjE3MTkgNi41NDYzODY3MiBMIDcuNjgyNjE3MTkg
OC4xMDE1NjI1IEwgOC45MTk5MjE4OCA4LjEwMTU2MjUgWiBNIDkuMTQ4OTI1NzggMTAuNDE4OTQ1
MyBDIDkuNTY1OTIwMDUgMTAuNDE4OTQ1MyA5Ljg2MzI4MDM2IDEwLjI5ODE3ODMgMTAuMDQxMDE1
NiAxMC4wNTY2NDA2IEMgMTAuMTUyNjY5OCA5LjkwMzk3MDU5IDEwLjIwODQ5NjEgOS43MTk0MDIx
MiAxMC4yMDg0OTYxIDkuNTAyOTI5NjkgQyAxMC4yMDg0OTYxIDkuMTM4MzQ0NTMgMTAuMDQ1NTc0
NSA4Ljg4OTk3NDYyIDkuNzE5NzI2NTYgOC43NTc4MTI1IEMgOS41NDY1NDg2MSA4LjY4NzE3NDEz
IDkuMzE3NTQ3IDguNjUxODU1NDcgOS4wMzI3MTQ4NCA4LjY1MTg1NTQ3IEwgNy42ODI2MTcxOSA4
LjY1MTg1NTQ3IEwgNy42ODI2MTcxOSAxMC40MTg5NDUzIEwgOS4xNDg5MjU3OCAxMC40MTg5NDUz
IFogTSAxNS4xMjg5MDYyIDYuMzQ0NzI2NTYgQyAxNS40Nzk4MTk1IDYuNjc5Njg5MTcgMTUuNjc0
NjQxNyA3LjA2MDIxOTIyIDE1LjcxMzM3ODkgNy40ODYzMjgxMiBMIDE1LjA1MDI5MyA3LjQ4NjMy
ODEyIEMgMTQuOTc1MDk3MyA3LjE2Mjc1ODggMTQuODI1Mjc3OCA2LjkwNjQxMzcxIDE0LjYwMDgz
MDEgNi43MTcyODUxNiBDIDE0LjM3NjM4MjMgNi41MjgxNTY2MSAxNC4wNjEzNjI3IDYuNDMzNTkz
NzUgMTMuNjU1NzYxNyA2LjQzMzU5Mzc1IEMgMTMuMTYxMjkzMSA2LjQzMzU5Mzc1IDEyLjc2MTk2
NDQgNi42MDczMzg3NiAxMi40NTc3NjM3IDYuOTU0ODMzOTggQyAxMi4xNTM1NjI5IDcuMzAyMzI5
MjEgMTIuMDAxNDY0OCA3LjgzNDk1NzM1IDEyLjAwMTQ2NDggOC41NTI3MzQzOCBDIDEyLjAwMTQ2
NDggOS4xNDA2Mjc5NCAxMi4xMzg3NTE5IDkuNjE3NDI5ODEgMTIuNDEzMzMwMSA5Ljk4MzE1NDMg
QyAxMi42ODc5MDgzIDEwLjM0ODg3ODggMTMuMDk3NDkwOCAxMC41MzE3MzgzIDEzLjY0MjA4OTgg
MTAuNTMxNzM4MyBDIDE0LjE0MzM5NDQgMTAuNTMxNzM4MyAxNC41MjUwNjM4IDEwLjMzOTE5NDYg
MTQuNzg3MTA5NCA5Ljk1NDEwMTU2IEMgMTQuOTI2MTA3NSA5Ljc1MTMwMTA3IDE1LjAyOTc4NDgg
OS40ODQ3MDIxNyAxNS4wOTgxNDQ1IDkuMTU0Mjk2ODggTCAxNS43NjEyMzA1IDkuMTU0Mjk2ODgg
QyAxNS43MDE5ODU0IDkuNjgyOTQ1MzUgMTUuNTA2MDIzOCAxMC4xMjYxMzc1IDE1LjE3MzMzOTgg
MTAuNDgzODg2NyBDIDE0Ljc3NDU3NDggMTAuOTE0NTUyOSAxNC4yMzY4MTk4IDExLjEyOTg4Mjgg
MTMuNTYwMDU4NiAxMS4xMjk4ODI4IEMgMTIuOTc2NzIyMyAxMS4xMjk4ODI4IDEyLjQ4NjgxODQg
MTAuOTUzMjg5NSAxMi4wOTAzMzIgMTAuNjAwMDk3NyBDIDExLjU2ODUxOTUgMTAuMTMyOTcyOSAx
MS4zMDc2MTcyIDkuNDExNzg4NzMgMTEuMzA3NjE3MiA4LjQzNjUyMzQ0IEMgMTEuMzA3NjE3MiA3
LjY5NTk1OTg0IDExLjUwMzU3ODggNy4wODg3MDY4IDExLjg5NTUwNzggNi42MTQ3NDYwOSBDIDEy
LjMxOTMzODEgNi4wOTk3Njk1NiAxMi45MDM4MDQ5IDUuODQyMjg1MTYgMTMuNjQ4OTI1OCA1Ljg0
MjI4NTE2IEMgMTQuMjg0NjcxMSA1Ljg0MjI4NTE2IDE0Ljc3Nzk5MyA2LjAwOTc2Mzk1IDE1LjEy
ODkwNjIgNi4zNDQ3MjY1NiBaIi8+Ci08L3N2Zz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlRGV0YWlsc1BhbmVsLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVEZXRh
aWxzUGFuZWwuanMKaW5kZXggOTM2NGNjMjA3N2JmZTgzODVhNjlkOTcwMzkxOTRiODAxN2FmNmI3
NC4uYmU2MWNhYTgxYzU5YmQ5ZTZjZjVjZDdlYjZhOTY1ZjdjYjg2NjMwZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVEZXRh
aWxzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwuanMKQEAgLTM4LDYgKzM4LDcgQEAgV2ViSW5zcGVj
dG9yLlZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgVmlzdWFsU3R5bGVEZXRhaWxzUGFu
ZWwgZXh0ZW5kcyBXZWIKIAogICAgICAgICAvLyBUaGVzZSBrZXl3b3JkcywgYXMgd2VsbCBhcyB0
aGUgdmFsdWVzIGJlbG93LCBhcmUgbm90IGxvY2FsaXplZCBhcyB0aGV5IG11c3QgbWF0Y2ggdGhl
IENTUyBzcGVjLgogICAgICAgICB0aGlzLl9rZXl3b3Jkcy5kZWZhdWx0cyA9IFsiSW5oZXJpdCIs
ICJJbml0aWFsIiwgIlVuc2V0IiwgIlJldmVydCJdOworICAgICAgICB0aGlzLl9rZXl3b3Jkcy5u
b3JtYWwgPSB0aGlzLl9rZXl3b3Jkcy5kZWZhdWx0cy5jb25jYXQoWyJOb3JtYWwiXSk7CiAgICAg
ICAgIHRoaXMuX2tleXdvcmRzLmJveE1vZGVsID0gdGhpcy5fa2V5d29yZHMuZGVmYXVsdHMuY29u
Y2F0KFsiQXV0byJdKTsKICAgICAgICAgdGhpcy5fa2V5d29yZHMuYm9yZGVyU3R5bGUgPSB7CiAg
ICAgICAgICAgICBiYXNpYzogdGhpcy5fa2V5d29yZHMuZGVmYXVsdHMuY29uY2F0KFsiTm9uZSIs
ICJIaWRkZW4iLCAiU29saWQiXSksCkBAIC03NiwxMCArNzcsMTEgQEAgV2ViSW5zcGVjdG9yLlZp
c3VhbFN0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgZXh0
ZW5kcyBXZWIKICAgICAgICAgdGhpcy5fZ2VuZXJhdGVTZWN0aW9uKCJjb250ZW50IiwgV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDb250ZW50IikpOwogICAgICAgICB0aGlzLl9nZW5lcmF0ZVNlY3Rp
b24oInRleHQtc3R5bGUiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlN0eWxlIikpOwogICAgICAg
ICB0aGlzLl9nZW5lcmF0ZVNlY3Rpb24oImZvbnQiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkZv
bnQiKSk7CisgICAgICAgIHRoaXMuX2dlbmVyYXRlU2VjdGlvbigiZm9udC12YXJpYW50cyIsIFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiVmFyaWFudHMiKSk7CiAgICAgICAgIHRoaXMuX2dlbmVyYXRl
U2VjdGlvbigidGV4dC1zcGFjaW5nIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTcGFjaW5nIikp
OwogICAgICAgICB0aGlzLl9nZW5lcmF0ZVNlY3Rpb24oInRleHQtc2hhZG93IiwgV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKCJTaGFkb3ciKSk7CiAKLSAgICAgICAgdGhpcy5fc2VjdGlvbnMudGV4dCA9
IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb24oInRleHQiLCBXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIlRleHQiKSwgW3RoaXMuX2dyb3Vwcy5jb250ZW50LnNlY3Rpb24sIHRoaXMuX2dyb3Vw
cy50ZXh0U3R5bGUuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLmZvbnQuc2VjdGlvbiwgdGhpcy5fZ3Jv
dXBzLnRleHRTcGFjaW5nLnNlY3Rpb24sIHRoaXMuX2dyb3Vwcy50ZXh0U2hhZG93LnNlY3Rpb25d
KTsKKyAgICAgICAgdGhpcy5fc2VjdGlvbnMudGV4dCA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWls
c1NlY3Rpb24oInRleHQiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlRleHQiKSwgW3RoaXMuX2dy
b3Vwcy5jb250ZW50LnNlY3Rpb24sIHRoaXMuX2dyb3Vwcy50ZXh0U3R5bGUuc2VjdGlvbiwgdGhp
cy5fZ3JvdXBzLmZvbnQuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLmZvbnRWYXJpYW50cy5zZWN0aW9u
LCB0aGlzLl9ncm91cHMudGV4dFNwYWNpbmcuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLnRleHRTaGFk
b3cuc2VjdGlvbl0pOwogICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fc2Vj
dGlvbnMudGV4dC5lbGVtZW50KTsKIAogICAgICAgICAvLyBCYWNrZ3JvdW5kIFNlY3Rpb24KQEAg
LTcwNSwxMCArNzA3LDEwIEBAIFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5lbCA9
IGNsYXNzIFZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsIGV4dGVuZHMgV2ViCiAgICAgICAgIGxldCBm
b250U3R5bGVSb3cgPSBuZXcgV2ViSW5zcGVjdG9yLkRldGFpbHNTZWN0aW9uUm93OwogCiAgICAg
ICAgIHByb3BlcnRpZXMuZm9udFN0eWxlID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZUtl
eXdvcmRJY29uTGlzdCgiZm9udC1zdHlsZSIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiU3R5bGUi
KSwgWyJJdGFsaWMiLCAiTm9ybWFsIl0pOwotICAgICAgICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50
ID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZUtleXdvcmRDaGVja2JveCgiZm9udC12YXJp
YW50IiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJWYXJpYW50IiksICJTbWFsbCBDYXBzIikKKyAg
ICAgICAgcHJvcGVydGllcy5mb250RmVhdHVyZVNldHRpbmdzID0gbmV3IFdlYkluc3BlY3Rvci5W
aXN1YWxTdHlsZUJhc2ljSW5wdXQoImZvbnQtZmVhdHVyZS1zZXR0aW5ncyIsIFdlYkluc3BlY3Rv
ci5VSVN0cmluZygiRmVhdHVyZXMiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJFbnRlciBUYWci
KSk7CiAKICAgICAgICAgZm9udFN0eWxlUm93LmVsZW1lbnQuYXBwZW5kQ2hpbGQocHJvcGVydGll
cy5mb250U3R5bGUuZWxlbWVudCk7Ci0gICAgICAgIGZvbnRTdHlsZVJvdy5lbGVtZW50LmFwcGVu
ZENoaWxkKHByb3BlcnRpZXMuZm9udFZhcmlhbnQuZWxlbWVudCk7CisgICAgICAgIGZvbnRTdHls
ZVJvdy5lbGVtZW50LmFwcGVuZENoaWxkKHByb3BlcnRpZXMuZm9udEZlYXR1cmVTZXR0aW5ncy5l
bGVtZW50KTsKIAogICAgICAgICBncm91cC5hdXRvY29tcGxldGVDb21wYXRpYmxlUHJvcGVydGll
cyA9IFtwcm9wZXJ0aWVzLmZvbnRGYW1pbHldOwogCkBAIC03MTYsMTYgKzcxOCw0OSBAQCBXZWJJ
bnNwZWN0b3IuVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBWaXN1YWxTdHlsZURldGFp
bHNQYW5lbCBleHRlbmRzIFdlYgogICAgICAgICB0aGlzLl9wb3B1bGF0ZVNlY3Rpb24oZ3JvdXAs
IFtmb250R3JvdXBdKTsKICAgICB9CiAKKyAgICBfcG9wdWxhdGVGb250VmFyaWFudHNTZWN0aW9u
KCkKKyAgICB7CisgICAgICAgIGxldCBncm91cCA9IHRoaXMuX2dyb3Vwcy5mb250VmFyaWFudHM7
CisgICAgICAgIGxldCBwcm9wZXJ0aWVzID0gZ3JvdXAucHJvcGVydGllczsKKworICAgICAgICBs
ZXQgYWx0ZXJuYXRlc1JvdyA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb25Sb3c7CisK
KyAgICAgICAgcHJvcGVydGllcy5mb250VmFyaWFudEFsdGVybmF0ZXMgPSBuZXcgV2ViSW5zcGVj
dG9yLlZpc3VhbFN0eWxlQmFzaWNJbnB1dCgiZm9udC12YXJpYW50LWFsdGVybmF0ZXMiLCBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIkFsdGVybmF0ZXMiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJF
bnRlciBWYWx1ZSIpKTsKKworICAgICAgICBhbHRlcm5hdGVzUm93LmVsZW1lbnQuYXBwZW5kQ2hp
bGQocHJvcGVydGllcy5mb250VmFyaWFudEFsdGVybmF0ZXMuZWxlbWVudCk7CisKKyAgICAgICAg
bGV0IHBvc2l0aW9uUm93ID0gbmV3IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblJvdzsKKwor
ICAgICAgICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50UG9zaXRpb24gPSBuZXcgV2ViSW5zcGVjdG9y
LlZpc3VhbFN0eWxlS2V5d29yZFBpY2tlcigiZm9udC12YXJpYW50LXBvc2l0aW9uIiwgV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJQb3NpdGlvbiIpLCB0aGlzLl9rZXl3b3Jkcy5ub3JtYWwuY29uY2F0
KFsiU3ViIiwgIlN1cGVyIl0pKTsKKworICAgICAgICBwb3NpdGlvblJvdy5lbGVtZW50LmFwcGVu
ZENoaWxkKHByb3BlcnRpZXMuZm9udFZhcmlhbnRQb3NpdGlvbi5lbGVtZW50KTsKKworICAgICAg
ICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50Q2FwcyA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5
bGVLZXl3b3JkUGlja2VyKCJmb250LXZhcmlhbnQtY2FwcyIsIFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiQ2FwcyIpLCB0aGlzLl9rZXl3b3Jkcy5ub3JtYWwuY29uY2F0KFsiTm9uZSIsICJTbWFsbCBD
YXBzIiwgIkFsbCBTbWFsbCBDYXBzIiwgIlBldGl0ZSBDYXBzIiwgIkFsbCBQZXRpdGUgQ2FwcyIs
ICJVbmljYXNlIiwgIlRpdGxpbmcgQ2FwcyJdKSk7CisKKyAgICAgICAgcG9zaXRpb25Sb3cuZWxl
bWVudC5hcHBlbmRDaGlsZChwcm9wZXJ0aWVzLmZvbnRWYXJpYW50Q2Fwcy5lbGVtZW50KTsKKwor
ICAgICAgICBsZXQgbGlnYXR1cmVzUm93ID0gbmV3IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlv
blJvdzsKKworICAgICAgICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50TGlnYXR1cmVzID0gbmV3IFdl
Ykluc3BlY3Rvci5WaXN1YWxTdHlsZUtleXdvcmRQaWNrZXIoImZvbnQtdmFyaWFudC1saWdhdHVy
ZXMiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxpZ2F0dXJlcyIpLCB0aGlzLl9rZXl3b3Jkcy5u
b3JtYWwuY29uY2F0KFsiTm9uZSIsICJDb21tb24gTGlnYXR1cmVzIiwgIk5vIENvbW1vbiBMaWdh
dHVyZXMiLCAiRGlzY3JldGlvbmFyeSBMaWdhdHVyZXMiLCAiTm8gRGlzY3JldGlvbmFyeSBMaWdh
dHVyZXMiLCAiSGlzdG9yaWNhbCBMaWdhdHVyZXMiLCAiTm8gSGlzdG9yaWNhbCBMaWdhdHVyZXMi
LCAiQ29udGV4dHVhbCIsICJObyBDb250ZXh0dWFsIl0pKTsKKworICAgICAgICBsaWdhdHVyZXNS
b3cuZWxlbWVudC5hcHBlbmRDaGlsZChwcm9wZXJ0aWVzLmZvbnRWYXJpYW50TGlnYXR1cmVzLmVs
ZW1lbnQpOworCisgICAgICAgIHByb3BlcnRpZXMuZm9udFZhcmlhbnROdW1lcmljID0gbmV3IFdl
Ykluc3BlY3Rvci5WaXN1YWxTdHlsZUtleXdvcmRQaWNrZXIoImZvbnQtdmFyaWFudC1udW1lcmlj
IiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJOdW1lcmljIiksIHRoaXMuX2tleXdvcmRzLm5vcm1h
bC5jb25jYXQoWyJOb25lIiwgIk9yZGluYWwiLCAiU2xhc2hlZCBaZXJvIiwgIkxpbmluZyBOdW1z
IiwgIk9kZHN0eWxlIE51bXMiLCAiUHJvcG9ydGlvbmFsIE51bXMiLCAiVGFidWxhciBOdW1zIiwg
IkRpYWdvbmFsIEZyYWN0aW9ucyIsICJTdGFja2VkIEZyYWN0aW9ucyJdKSk7CisKKyAgICAgICAg
bGlnYXR1cmVzUm93LmVsZW1lbnQuYXBwZW5kQ2hpbGQocHJvcGVydGllcy5mb250VmFyaWFudE51
bWVyaWMuZWxlbWVudCk7CisKKyAgICAgICAgbGV0IHZhcmlhbnRzR3JvdXAgPSBuZXcgV2ViSW5z
cGVjdG9yLkRldGFpbHNTZWN0aW9uR3JvdXAoW2FsdGVybmF0ZXNSb3csIHBvc2l0aW9uUm93LCBs
aWdhdHVyZXNSb3ddKTsKKyAgICAgICAgdGhpcy5fcG9wdWxhdGVTZWN0aW9uKGdyb3VwLCBbdmFy
aWFudHNHcm91cF0pOworICAgIH0KKwogICAgIF9wb3B1bGF0ZVRleHRTcGFjaW5nU2VjdGlvbigp
CiAgICAgewogICAgICAgICBsZXQgZ3JvdXAgPSB0aGlzLl9ncm91cHMudGV4dFNwYWNpbmc7CiAg
ICAgICAgIGxldCBwcm9wZXJ0aWVzID0gZ3JvdXAucHJvcGVydGllczsKIAotICAgICAgICBsZXQg
ZGVmYXVsdFRleHRLZXl3b3JkcyA9IHRoaXMuX2tleXdvcmRzLmRlZmF1bHRzLmNvbmNhdChbIk5v
cm1hbCJdKTsKLQogICAgICAgICBsZXQgdGV4dExheW91dFJvdyA9IG5ldyBXZWJJbnNwZWN0b3Iu
RGV0YWlsc1NlY3Rpb25Sb3c7CiAKLSAgICAgICAgcHJvcGVydGllcy5saW5lSGVpZ2h0ID0gbmV3
IFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZU51bWJlcklucHV0Qm94KCJsaW5lLWhlaWdodCIsIFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiSGVpZ2h0IiksIGRlZmF1bHRUZXh0S2V5d29yZHMsIHRoaXMu
X3VuaXRzLmRlZmF1bHRzKTsKKyAgICAgICAgcHJvcGVydGllcy5saW5lSGVpZ2h0ID0gbmV3IFdl
Ykluc3BlY3Rvci5WaXN1YWxTdHlsZU51bWJlcklucHV0Qm94KCJsaW5lLWhlaWdodCIsIFdlYklu
c3BlY3Rvci5VSVN0cmluZygiSGVpZ2h0IiksIHRoaXMuX2tleXdvcmRzLm5vcm1hbCwgdGhpcy5f
dW5pdHMuZGVmYXVsdHMpOwogICAgICAgICBwcm9wZXJ0aWVzLnZlcnRpY2FsQWxpZ24gPSBuZXcg
V2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlTnVtYmVySW5wdXRCb3goInZlcnRpY2FsLWFsaWduIiwg
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJBbGlnbiIpLCBbIkJhc2VsaW5lIiwgIkJvdHRvbSJdLmNv
bmNhdCh0aGlzLl9rZXl3b3Jkcy5kZWZhdWx0cywgWyJNaWRkbGUiLCAiU3ViIiwgIlN1cGVyIiwg
IlRleHQgQm90dG9tIiwgIlRleHQgVG9wIiwgIlRvcCJdKSwgdGhpcy5fdW5pdHMuZGVmYXVsdHMp
OwogCiAgICAgICAgIHRleHRMYXlvdXRSb3cuZWxlbWVudC5hcHBlbmRDaGlsZChwcm9wZXJ0aWVz
LmxpbmVIZWlnaHQuZWxlbWVudCk7CkBAIC03MzMsOCArNzY4LDggQEAgV2ViSW5zcGVjdG9yLlZp
c3VhbFN0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgZXh0
ZW5kcyBXZWIKIAogICAgICAgICBsZXQgdGV4dFNwYWNpbmdSb3cgPSBuZXcgV2ViSW5zcGVjdG9y
LkRldGFpbHNTZWN0aW9uUm93OwogCi0gICAgICAgIHByb3BlcnRpZXMubGV0dGVyU3BhY2luZyA9
IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVOdW1iZXJJbnB1dEJveCgibGV0dGVyLXNwYWNp
bmciLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxldHRlciIpLCBkZWZhdWx0VGV4dEtleXdvcmRz
LCB0aGlzLl91bml0cy5kZWZhdWx0cyk7Ci0gICAgICAgIHByb3BlcnRpZXMud29yZFNwYWNpbmcg
PSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlTnVtYmVySW5wdXRCb3goIndvcmQtc3BhY2lu
ZyIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiV29yZCIpLCBkZWZhdWx0VGV4dEtleXdvcmRzLCB0
aGlzLl91bml0cy5kZWZhdWx0cyk7CisgICAgICAgIHByb3BlcnRpZXMubGV0dGVyU3BhY2luZyA9
IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVOdW1iZXJJbnB1dEJveCgibGV0dGVyLXNwYWNp
bmciLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxldHRlciIpLCB0aGlzLl9rZXl3b3Jkcy5ub3Jt
YWwsIHRoaXMuX3VuaXRzLmRlZmF1bHRzKTsKKyAgICAgICAgcHJvcGVydGllcy53b3JkU3BhY2lu
ZyA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVOdW1iZXJJbnB1dEJveCgid29yZC1zcGFj
aW5nIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJXb3JkIiksIHRoaXMuX2tleXdvcmRzLm5vcm1h
bCwgdGhpcy5fdW5pdHMuZGVmYXVsdHMpOwogCiAgICAgICAgIHRleHRTcGFjaW5nUm93LmVsZW1l
bnQuYXBwZW5kQ2hpbGQocHJvcGVydGllcy5sZXR0ZXJTcGFjaW5nLmVsZW1lbnQpOwogICAgICAg
ICB0ZXh0U3BhY2luZ1Jvdy5lbGVtZW50LmFwcGVuZENoaWxkKHByb3BlcnRpZXMud29yZFNwYWNp
bmcuZWxlbWVudCk7CkBAIC0xMjczLDcgKzEzMDgsNyBAQCBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5
bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBWaXN1YWxTdHlsZURldGFpbHNQYW5lbCBleHRlbmRzIFdl
YgogICAgICAgICBsZXQgYW5pbWF0aW9uRGlyZWN0aW9uUm93ID0gbmV3IFdlYkluc3BlY3Rvci5E
ZXRhaWxzU2VjdGlvblJvdzsKIAogICAgICAgICBwcm9wZXJ0aWVzLmFuaW1hdGlvbkRpcmVjdGlv
biA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVLZXl3b3JkUGlja2VyKCJhbmltYXRpb24t
ZGlyZWN0aW9uIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEaXJlY3Rpb24iKSwgewotICAgICAg
ICAgICAgYmFzaWM6IHRoaXMuX2tleXdvcmRzLmRlZmF1bHRzLmNvbmNhdChbIk5vcm1hbCIsICJS
ZXZlcnNlIl0pLAorICAgICAgICAgICAgYmFzaWM6IHRoaXMuX2tleXdvcmRzLm5vcm1hbC5jb25j
YXQoWyJSZXZlcnNlIl0pLAogICAgICAgICAgICAgYWR2YW5jZWQ6IFsiQWx0ZXJuYXRlIiwgIkFs
dGVybmF0ZSBSZXZlcnNlIl0KICAgICAgICAgfSk7CiAgICAgICAgIHByb3BlcnRpZXMuYW5pbWF0
aW9uRmlsbE1vZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlS2V5d29yZFBpY2tlcigi
YW5pbWF0aW9uLWZpbGwtbW9kZSIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiRmlsbCBNb2RlIiks
IHRoaXMuX2tleXdvcmRzLmRlZmF1bHRzLmNvbmNhdChbIk5vbmUiLCAiRm9yd2FyZHMiLCAiQmFj
a3dhcmRzIiwgIkJvdGgiXSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVLZXl3b3JkQ2hlY2tib3guY3NzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVLZXl3b3JkQ2hl
Y2tib3guY3NzCmluZGV4IDIwOTcyNDJmODc1NzEyMzdkNWMxNTQ4NTQ0NGI0YjRmOWQwZjM5Zjcu
Ljk1MmNmMGQ5ZDdmYjJiMmRhY2E2ZThhNTEwZDZkYjIwOGUwNzZmNzQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlS2V5d29y
ZENoZWNrYm94LmNzcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9WaXN1YWxTdHlsZUtleXdvcmRDaGVja2JveC5jc3MKQEAgLTMxLDE0ICszMSwzIEBACiAu
dmlzdWFsLXN0eWxlLXByb3BlcnR5LWNvbnRhaW5lci5rZXl3b3JkLWNoZWNrYm94ID4gLnZpc3Vh
bC1zdHlsZS1wcm9wZXJ0eS12YWx1ZS1jb250YWluZXIgPiBpbnB1dCB7CiAgICAgd2lkdGg6IGF1
dG87CiB9Ci0KLS8qIEZvbnQgVmFyaWFudCAqLwotLnZpc3VhbC1zdHlsZS1wcm9wZXJ0eS1jb250
YWluZXIua2V5d29yZC1jaGVja2JveC5mb250LXZhcmlhbnQgPiAudmlzdWFsLXN0eWxlLXByb3Bl
cnR5LXZhbHVlLWNvbnRhaW5lciA+IGlucHV0OjphZnRlciB7Ci0gICAgcG9zaXRpb246IGFic29s
dXRlOwotICAgIHRvcDogNXB4OwotICAgIGxlZnQ6IDE1cHg7Ci0gICAgZm9udC1zaXplOiA5cHg7
Ci0gICAgZm9udC12YXJpYW50OiBzbWFsbC1jYXBzOwotICAgIHdvcmQtc3BhY2luZzogLTJweDsK
LSAgICBjb250ZW50OiAiU21hbGwgQ2FwcyI7Ci19Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>270195</attachid>
            <date>2016-01-29 02:14:05 -0800</date>
            <delta_ts>2016-01-29 10:00:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148720-20160129021340.patch</filename>
            <type>text/plain</type>
            <size>15225</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDJlYTY4YTZhMThiOTlkYTVkZmNmYTNlYzhhY2Jk
NWMxOWM0Y2JhMDguLmMzNWQ2MzMxMTYwYzAzMzE1YTJmOWE3MDU0NzBiZDk5NzM3Zjk0ZWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE2LTAxLTI5ICBEZXZp
biBSb3Vzc28gIDxkY3JvdXNzbyt3ZWJraXRAZ21haWwuY29tPgorCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IEFkZCBmb250LXZhcmlhbnQtKiB0byB0aGUgdmlzdWFsIHN0eWxlcyBzaWRlYmFyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg3MjAKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIyNTY5OTc0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGFub3RoZXIgc3Vic2VjdGlvbiB0byB0aGUg
IlRleHQiIHNlY3Rpb24gZm9yIGZvbnQtdmFyaWFudC0qCisgICAgICAgIHByb3BlcnRpZXMuCisK
KyAgICAgICAgKiBMb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6Cisg
ICAgICAgICogVXNlckludGVyZmFjZS9JbWFnZXMvRm9udFZhcmlhbnRTbWFsbENhcHMuc3ZnOiBS
ZW1vdmVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9WaXN1YWxTdHlsZURldGFp
bHNQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5l
bCk6CisgICAgICAgIEFkZGVkIGFub3RoZXIga2V5d29yZCBncm91cGluZyB3aXRoIHRoZSAibm9y
bWFsIiB2YWx1ZSBzaW5jZSBpdCBpcyB1c2VkCisgICAgICAgIGZyZXF1ZW50bHkgaW4gbXVsdGlw
bGUgc3Vic2VjdGlvbnMuCisKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFp
bHNQYW5lbC5wcm90b3R5cGUuX3BvcHVsYXRlRm9udFNlY3Rpb24pOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsLnByb3RvdHlwZS5fcG9wdWxhdGVGb250VmFy
aWFudHNTZWN0aW9uKToKKyAgICAgICAgQWRkZWQgdGhlIGZpdmUgbmV3IGZvbnQtdmFyaWFudC0q
IHByb3BlcnRpZXMgc3BlY2lmaWVkIGluCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYmxv
Zy81NzM1L2Nzcy1mb250LWZlYXR1cmVzLz4uCisKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1
YWxTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5cGUuX3BvcHVsYXRlVGV4dFNwYWNpbmdTZWN0aW9u
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5lbC5wcm90b3R5
cGUuX3BvcHVsYXRlQW5pbWF0aW9uU2VjdGlvbik6CisgICAgICAgIFJlcGxhY2VkIHRoZSBoYXJk
Y29kZWQgIm5vcm1hbCIga2V5d29yZCB3aXRoIHRoZSBuZXcgZ3JvdXBpbmcuCisKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlS2V5d29yZENoZWNrYm94LmNzczoKKyAg
ICAgICAgKC52aXN1YWwtc3R5bGUtcHJvcGVydHktY29udGFpbmVyLmtleXdvcmQtY2hlY2tib3gu
Zm9udC12YXJpYW50ID4gLnZpc3VhbC1zdHlsZS1wcm9wZXJ0eS12YWx1ZS1jb250YWluZXIgPiBp
bnB1dDo6YWZ0ZXIpOiBEZWxldGVkLgorCiAyMDE2LTAxLTI4ICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQXZvaWQgcmVjcmVh
dGluZyBUaW1lbGluZSdzIERhdGFHcmlkTm9kZSBkYXRhIG11bHRpcGxlIHRpbWVzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6
ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCAzOTA0ZTk2NGI0MDVjZDUyODY2Y2FmOGQyM2Jh
MjFkYTRjNDM3YWJmLi5jNmYwOTMyNjgxMDQ1ZjJmN2E5NDA3MWY4ZmU5OTEzMmVhOWNmYThlIDEw
MDY0NApHSVQgYmluYXJ5IHBhdGNoCmRlbHRhIDMxMQp6Y21YQHIhTWRUQmJ3ZDhlbmAmJG1PSChI
MXZ1KnkqPHtgcUohJSlKSSUyMzNSJEI7UHJnMVJVUXxBVl5tV19SZygKekJFclFDTihgfEszSmtW
RHRpPDVWa2pQTGxTOzE2KUA/JE5UJjkoKyU1dihDVnE0ZGNIOWdAc0kpP14xdy1PMkh0CnpKZDl6
SloqP2olaEUzfFNwUy1fQVklPjNEdUYxOT9KZSY3LSsrYkh0MT9uaGFDPFdTXyU3QUxUOCZDdSlI
K2pNbQp6e21vTStfLUx4OSEtTyFEYCFIbE96LTIpaUNoUEN3K3gmV2BocVNzTShFTURtPz1sJlpR
TWBhNkdnO3d8P3E8YGcKYUMoPFMjRlhFZmRYflcxamBEP1N6YzFJZ1ZQN1ZNUjRwKTh2CgpkZWx0
YSA3OAp6Y21WLVUwSX5uRGpSbmV4MSgwdShqfE9WN1p6Y3dfe3t+MUR2IXhyfTZ0bEBOWmRqOGFp
V1pYfXkkWHtfaTQzekoKa2lyNUZVT19FOX12Kz11OTg/JSt5JTRVfmdKXj5uJk1UOUUxciM9QSoy
cTtWLWVnRlVmCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvSW1hZ2VzL0ZvbnRWYXJpYW50U21hbGxDYXBzLnN2ZyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0ltYWdlcy9Gb250VmFyaWFudFNtYWxsQ2Fwcy5zdmcKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVlYWQ1YmQ4MTJlMzQ2YTIyMGFhYmFjN2JmYTUyMTgzNmY1
ZjI4ODMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvSW1hZ2VzL0ZvbnRWYXJpYW50U21hbGxD
YXBzLnN2ZworKysgL2Rldi9udWxsCkBAIC0xLDUgKzAsMCBAQAotPD94bWwgdmVyc2lvbj0iMS4w
IiBlbmNvZGluZz0idXRmLTgiPz4KLTwhLS0gQ29weXJpZ2h0IMKpIDIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLiAtLT4KLTxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnIiBpZD0icm9vdCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTYgMTYiPgotICAg
IDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTSA0LjQ0MzM1OTM4IDguMDYwNTQ2ODggTCAz
LjM1NDQ5MjE5IDQuODkxNjAxNTYgTCAyLjE5NzI2NTYyIDguMDYwNTQ2ODggTCA0LjQ0MzM1OTM4
IDguMDYwNTQ2ODggWiBNIDIuODQ2Njc5NjkgMy44MjcxNDg0NCBMIDMuOTQ1MzEyNSAzLjgyNzE0
ODQ0IEwgNi41NDc4NTE1NiAxMSBMIDUuNDgzMzk4NDQgMTEgTCA0Ljc1NTg1OTM4IDguODUxNTYy
NSBMIDEuOTE4OTQ1MzEgOC44NTE1NjI1IEwgMS4xNDI1NzgxMiAxMSBMIDAuMTQ2NDg0Mzc1IDEx
IEwgMi44NDY2Nzk2OSAzLjgyNzE0ODQ0IFogTSA3LjAxNjExMzI4IDUuOTc5MDAzOTEgTCA5LjE3
Mjg1MTU2IDUuOTc5MDAzOTEgQyA5Ljc2MDc0NTEzIDUuOTc5MDAzOTEgMTAuMTc4ODcyNSA2LjE1
NDQ1Nzg4IDEwLjQyNzI0NjEgNi41MDUzNzEwOSBDIDEwLjU3MzA4MDIgNi43MTI3Mjg5IDEwLjY0
NTk5NjEgNi45NTE5ODQzMiAxMC42NDU5OTYxIDcuMjIzMTQ0NTMgQyAxMC42NDU5OTYxIDcuNTM5
ODc3ODkgMTAuNTU1OTkwNSA3Ljc5OTY0MDkxIDEwLjM3NTk3NjYgOC4wMDI0NDE0MSBDIDEwLjI4
MjU1MTYgOC4xMDk1MzgzIDEwLjE0ODExMjkgOC4yMDc1MTkwOSA5Ljk3MjY1NjI1IDguMjk2Mzg2
NzIgQyAxMC4yMzAxNDQ1IDguMzk0MzY4OTggMTAuNDIyNjg4MiA4LjUwNDg4MjIgMTAuNTUwMjkz
IDguNjI3OTI5NjkgQyAxMC43NzU4OCA4Ljg0NjY4MDc4IDEwLjg4ODY3MTkgOS4xNDg1OTgzMyAx
MC44ODg2NzE5IDkuNTMzNjkxNDEgQyAxMC44ODg2NzE5IDkuODU3MjYwNzMgMTAuNzg3MjczMSAx
MC4xNTAwNjM4IDEwLjU4NDQ3MjcgMTAuNDEyMTA5NCBDIDEwLjI4MTQxMTIgMTAuODA0MDM4NCA5
Ljc5OTQ4MjQ3IDExIDkuMTM4NjcxODggMTEgTCA3LjAxNjExMzI4IDExIEwgNy4wMTYxMTMyOCA1
Ljk3OTAwMzkxIFogTSA4LjkxOTkyMTg4IDguMTAxNTYyNSBDIDkuMjA3MDMyNjkgOC4xMDE1NjI1
IDkuNDMwMzM3NzQgOC4wNjE2ODY2IDkuNTg5ODQzNzUgNy45ODE5MzM1OSBDIDkuODQwNDk2MDQg
Ny44NTY2MDc0NSA5Ljk2NTgyMDMxIDcuNjMxMDIzNzYgOS45NjU4MjAzMSA3LjMwNTE3NTc4IEMg
OS45NjU4MjAzMSA2Ljk3NzA0OTE0IDkuODMyNTIwODYgNi43NTYwMjI3MSA5LjU2NTkxNzk3IDYu
NjQyMDg5ODQgQyA5LjQxNTUyNjU5IDYuNTc4Mjg3NDQgOS4xOTIyMjE1MyA2LjU0NjM4NjcyIDgu
ODk1OTk2MDkgNi41NDYzODY3MiBMIDcuNjgyNjE3MTkgNi41NDYzODY3MiBMIDcuNjgyNjE3MTkg
OC4xMDE1NjI1IEwgOC45MTk5MjE4OCA4LjEwMTU2MjUgWiBNIDkuMTQ4OTI1NzggMTAuNDE4OTQ1
MyBDIDkuNTY1OTIwMDUgMTAuNDE4OTQ1MyA5Ljg2MzI4MDM2IDEwLjI5ODE3ODMgMTAuMDQxMDE1
NiAxMC4wNTY2NDA2IEMgMTAuMTUyNjY5OCA5LjkwMzk3MDU5IDEwLjIwODQ5NjEgOS43MTk0MDIx
MiAxMC4yMDg0OTYxIDkuNTAyOTI5NjkgQyAxMC4yMDg0OTYxIDkuMTM4MzQ0NTMgMTAuMDQ1NTc0
NSA4Ljg4OTk3NDYyIDkuNzE5NzI2NTYgOC43NTc4MTI1IEMgOS41NDY1NDg2MSA4LjY4NzE3NDEz
IDkuMzE3NTQ3IDguNjUxODU1NDcgOS4wMzI3MTQ4NCA4LjY1MTg1NTQ3IEwgNy42ODI2MTcxOSA4
LjY1MTg1NTQ3IEwgNy42ODI2MTcxOSAxMC40MTg5NDUzIEwgOS4xNDg5MjU3OCAxMC40MTg5NDUz
IFogTSAxNS4xMjg5MDYyIDYuMzQ0NzI2NTYgQyAxNS40Nzk4MTk1IDYuNjc5Njg5MTcgMTUuNjc0
NjQxNyA3LjA2MDIxOTIyIDE1LjcxMzM3ODkgNy40ODYzMjgxMiBMIDE1LjA1MDI5MyA3LjQ4NjMy
ODEyIEMgMTQuOTc1MDk3MyA3LjE2Mjc1ODggMTQuODI1Mjc3OCA2LjkwNjQxMzcxIDE0LjYwMDgz
MDEgNi43MTcyODUxNiBDIDE0LjM3NjM4MjMgNi41MjgxNTY2MSAxNC4wNjEzNjI3IDYuNDMzNTkz
NzUgMTMuNjU1NzYxNyA2LjQzMzU5Mzc1IEMgMTMuMTYxMjkzMSA2LjQzMzU5Mzc1IDEyLjc2MTk2
NDQgNi42MDczMzg3NiAxMi40NTc3NjM3IDYuOTU0ODMzOTggQyAxMi4xNTM1NjI5IDcuMzAyMzI5
MjEgMTIuMDAxNDY0OCA3LjgzNDk1NzM1IDEyLjAwMTQ2NDggOC41NTI3MzQzOCBDIDEyLjAwMTQ2
NDggOS4xNDA2Mjc5NCAxMi4xMzg3NTE5IDkuNjE3NDI5ODEgMTIuNDEzMzMwMSA5Ljk4MzE1NDMg
QyAxMi42ODc5MDgzIDEwLjM0ODg3ODggMTMuMDk3NDkwOCAxMC41MzE3MzgzIDEzLjY0MjA4OTgg
MTAuNTMxNzM4MyBDIDE0LjE0MzM5NDQgMTAuNTMxNzM4MyAxNC41MjUwNjM4IDEwLjMzOTE5NDYg
MTQuNzg3MTA5NCA5Ljk1NDEwMTU2IEMgMTQuOTI2MTA3NSA5Ljc1MTMwMTA3IDE1LjAyOTc4NDgg
OS40ODQ3MDIxNyAxNS4wOTgxNDQ1IDkuMTU0Mjk2ODggTCAxNS43NjEyMzA1IDkuMTU0Mjk2ODgg
QyAxNS43MDE5ODU0IDkuNjgyOTQ1MzUgMTUuNTA2MDIzOCAxMC4xMjYxMzc1IDE1LjE3MzMzOTgg
MTAuNDgzODg2NyBDIDE0Ljc3NDU3NDggMTAuOTE0NTUyOSAxNC4yMzY4MTk4IDExLjEyOTg4Mjgg
MTMuNTYwMDU4NiAxMS4xMjk4ODI4IEMgMTIuOTc2NzIyMyAxMS4xMjk4ODI4IDEyLjQ4NjgxODQg
MTAuOTUzMjg5NSAxMi4wOTAzMzIgMTAuNjAwMDk3NyBDIDExLjU2ODUxOTUgMTAuMTMyOTcyOSAx
MS4zMDc2MTcyIDkuNDExNzg4NzMgMTEuMzA3NjE3MiA4LjQzNjUyMzQ0IEMgMTEuMzA3NjE3MiA3
LjY5NTk1OTg0IDExLjUwMzU3ODggNy4wODg3MDY4IDExLjg5NTUwNzggNi42MTQ3NDYwOSBDIDEy
LjMxOTMzODEgNi4wOTk3Njk1NiAxMi45MDM4MDQ5IDUuODQyMjg1MTYgMTMuNjQ4OTI1OCA1Ljg0
MjI4NTE2IEMgMTQuMjg0NjcxMSA1Ljg0MjI4NTE2IDE0Ljc3Nzk5MyA2LjAwOTc2Mzk1IDE1LjEy
ODkwNjIgNi4zNDQ3MjY1NiBaIi8+Ci08L3N2Zz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlRGV0YWlsc1BhbmVsLmpzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVEZXRh
aWxzUGFuZWwuanMKaW5kZXggOTM2NGNjMjA3N2JmZTgzODVhNjlkOTcwMzkxOTRiODAxN2FmNmI3
NC4uYTRkZWNjYjNiN2I2YzM1ZDdmNTYyZDU5MjBlNmJhZTIwMDJmMGI0YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVEZXRh
aWxzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwuanMKQEAgLTM4LDYgKzM4LDcgQEAgV2ViSW5zcGVj
dG9yLlZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgVmlzdWFsU3R5bGVEZXRhaWxzUGFu
ZWwgZXh0ZW5kcyBXZWIKIAogICAgICAgICAvLyBUaGVzZSBrZXl3b3JkcywgYXMgd2VsbCBhcyB0
aGUgdmFsdWVzIGJlbG93LCBhcmUgbm90IGxvY2FsaXplZCBhcyB0aGV5IG11c3QgbWF0Y2ggdGhl
IENTUyBzcGVjLgogICAgICAgICB0aGlzLl9rZXl3b3Jkcy5kZWZhdWx0cyA9IFsiSW5oZXJpdCIs
ICJJbml0aWFsIiwgIlVuc2V0IiwgIlJldmVydCJdOworICAgICAgICB0aGlzLl9rZXl3b3Jkcy5u
b3JtYWwgPSB0aGlzLl9rZXl3b3Jkcy5kZWZhdWx0cy5jb25jYXQoWyJOb3JtYWwiXSk7CiAgICAg
ICAgIHRoaXMuX2tleXdvcmRzLmJveE1vZGVsID0gdGhpcy5fa2V5d29yZHMuZGVmYXVsdHMuY29u
Y2F0KFsiQXV0byJdKTsKICAgICAgICAgdGhpcy5fa2V5d29yZHMuYm9yZGVyU3R5bGUgPSB7CiAg
ICAgICAgICAgICBiYXNpYzogdGhpcy5fa2V5d29yZHMuZGVmYXVsdHMuY29uY2F0KFsiTm9uZSIs
ICJIaWRkZW4iLCAiU29saWQiXSksCkBAIC03NiwxMCArNzcsMTEgQEAgV2ViSW5zcGVjdG9yLlZp
c3VhbFN0eWxlRGV0YWlsc1BhbmVsID0gY2xhc3MgVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgZXh0
ZW5kcyBXZWIKICAgICAgICAgdGhpcy5fZ2VuZXJhdGVTZWN0aW9uKCJjb250ZW50IiwgV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDb250ZW50IikpOwogICAgICAgICB0aGlzLl9nZW5lcmF0ZVNlY3Rp
b24oInRleHQtc3R5bGUiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlN0eWxlIikpOwogICAgICAg
ICB0aGlzLl9nZW5lcmF0ZVNlY3Rpb24oImZvbnQiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkZv
bnQiKSk7CisgICAgICAgIHRoaXMuX2dlbmVyYXRlU2VjdGlvbigiZm9udC12YXJpYW50cyIsIFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiVmFyaWFudHMiKSk7CiAgICAgICAgIHRoaXMuX2dlbmVyYXRl
U2VjdGlvbigidGV4dC1zcGFjaW5nIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTcGFjaW5nIikp
OwogICAgICAgICB0aGlzLl9nZW5lcmF0ZVNlY3Rpb24oInRleHQtc2hhZG93IiwgV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKCJTaGFkb3ciKSk7CiAKLSAgICAgICAgdGhpcy5fc2VjdGlvbnMudGV4dCA9
IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb24oInRleHQiLCBXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIlRleHQiKSwgW3RoaXMuX2dyb3Vwcy5jb250ZW50LnNlY3Rpb24sIHRoaXMuX2dyb3Vw
cy50ZXh0U3R5bGUuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLmZvbnQuc2VjdGlvbiwgdGhpcy5fZ3Jv
dXBzLnRleHRTcGFjaW5nLnNlY3Rpb24sIHRoaXMuX2dyb3Vwcy50ZXh0U2hhZG93LnNlY3Rpb25d
KTsKKyAgICAgICAgdGhpcy5fc2VjdGlvbnMudGV4dCA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWls
c1NlY3Rpb24oInRleHQiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlRleHQiKSwgW3RoaXMuX2dy
b3Vwcy5jb250ZW50LnNlY3Rpb24sIHRoaXMuX2dyb3Vwcy50ZXh0U3R5bGUuc2VjdGlvbiwgdGhp
cy5fZ3JvdXBzLmZvbnQuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLmZvbnRWYXJpYW50cy5zZWN0aW9u
LCB0aGlzLl9ncm91cHMudGV4dFNwYWNpbmcuc2VjdGlvbiwgdGhpcy5fZ3JvdXBzLnRleHRTaGFk
b3cuc2VjdGlvbl0pOwogICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fc2Vj
dGlvbnMudGV4dC5lbGVtZW50KTsKIAogICAgICAgICAvLyBCYWNrZ3JvdW5kIFNlY3Rpb24KQEAg
LTcwNSwxMCArNzA3LDEwIEBAIFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5lbCA9
IGNsYXNzIFZpc3VhbFN0eWxlRGV0YWlsc1BhbmVsIGV4dGVuZHMgV2ViCiAgICAgICAgIGxldCBm
b250U3R5bGVSb3cgPSBuZXcgV2ViSW5zcGVjdG9yLkRldGFpbHNTZWN0aW9uUm93OwogCiAgICAg
ICAgIHByb3BlcnRpZXMuZm9udFN0eWxlID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZUtl
eXdvcmRJY29uTGlzdCgiZm9udC1zdHlsZSIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiU3R5bGUi
KSwgWyJJdGFsaWMiLCAiTm9ybWFsIl0pOwotICAgICAgICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50
ID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZUtleXdvcmRDaGVja2JveCgiZm9udC12YXJp
YW50IiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJWYXJpYW50IiksICJTbWFsbCBDYXBzIikKKyAg
ICAgICAgcHJvcGVydGllcy5mb250RmVhdHVyZVNldHRpbmdzID0gbmV3IFdlYkluc3BlY3Rvci5W
aXN1YWxTdHlsZUJhc2ljSW5wdXQoImZvbnQtZmVhdHVyZS1zZXR0aW5ncyIsIFdlYkluc3BlY3Rv
ci5VSVN0cmluZygiRmVhdHVyZXMiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJFbnRlciBUYWci
KSk7CiAKICAgICAgICAgZm9udFN0eWxlUm93LmVsZW1lbnQuYXBwZW5kQ2hpbGQocHJvcGVydGll
cy5mb250U3R5bGUuZWxlbWVudCk7Ci0gICAgICAgIGZvbnRTdHlsZVJvdy5lbGVtZW50LmFwcGVu
ZENoaWxkKHByb3BlcnRpZXMuZm9udFZhcmlhbnQuZWxlbWVudCk7CisgICAgICAgIGZvbnRTdHls
ZVJvdy5lbGVtZW50LmFwcGVuZENoaWxkKHByb3BlcnRpZXMuZm9udEZlYXR1cmVTZXR0aW5ncy5l
bGVtZW50KTsKIAogICAgICAgICBncm91cC5hdXRvY29tcGxldGVDb21wYXRpYmxlUHJvcGVydGll
cyA9IFtwcm9wZXJ0aWVzLmZvbnRGYW1pbHldOwogCkBAIC03MTYsMTYgKzcxOCw1MCBAQCBXZWJJ
bnNwZWN0b3IuVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgPSBjbGFzcyBWaXN1YWxTdHlsZURldGFp
bHNQYW5lbCBleHRlbmRzIFdlYgogICAgICAgICB0aGlzLl9wb3B1bGF0ZVNlY3Rpb24oZ3JvdXAs
IFtmb250R3JvdXBdKTsKICAgICB9CiAKKyAgICBfcG9wdWxhdGVGb250VmFyaWFudHNTZWN0aW9u
KCkKKyAgICB7CisgICAgICAgIGxldCBncm91cCA9IHRoaXMuX2dyb3Vwcy5mb250VmFyaWFudHM7
CisgICAgICAgIGxldCBwcm9wZXJ0aWVzID0gZ3JvdXAucHJvcGVydGllczsKKworICAgICAgICBs
ZXQgYWx0ZXJuYXRlc1JvdyA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb25Sb3c7CisK
KyAgICAgICAgcHJvcGVydGllcy5mb250VmFyaWFudEFsdGVybmF0ZXMgPSBuZXcgV2ViSW5zcGVj
dG9yLlZpc3VhbFN0eWxlQmFzaWNJbnB1dCgiZm9udC12YXJpYW50LWFsdGVybmF0ZXMiLCBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIkFsdGVybmF0ZXMiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJF
bnRlciBWYWx1ZSIpKTsKKworICAgICAgICBhbHRlcm5hdGVzUm93LmVsZW1lbnQuYXBwZW5kQ2hp
bGQocHJvcGVydGllcy5mb250VmFyaWFudEFsdGVybmF0ZXMuZWxlbWVudCk7CisKKyAgICAgICAg
bGV0IHBvc2l0aW9uUm93ID0gbmV3IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblJvdzsKKwor
ICAgICAgICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50UG9zaXRpb24gPSBuZXcgV2ViSW5zcGVjdG9y
LlZpc3VhbFN0eWxlS2V5d29yZFBpY2tlcigiZm9udC12YXJpYW50LXBvc2l0aW9uIiwgV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJQb3NpdGlvbiIpLCB0aGlzLl9rZXl3b3Jkcy5ub3JtYWwuY29uY2F0
KFsiU3ViIiwgIlN1cGVyIl0pKTsKKworICAgICAgICBwb3NpdGlvblJvdy5lbGVtZW50LmFwcGVu
ZENoaWxkKHByb3BlcnRpZXMuZm9udFZhcmlhbnRQb3NpdGlvbi5lbGVtZW50KTsKKworICAgICAg
ICBwcm9wZXJ0aWVzLmZvbnRWYXJpYW50Q2FwcyA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5
bGVLZXl3b3JkUGlja2VyKCJmb250LXZhcmlhbnQtY2FwcyIsIFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiQ2FwcyIpLCB0aGlzLl9rZXl3b3Jkcy5ub3JtYWwuY29uY2F0KFsiTm9uZSIsICJTbWFsbCBD
YXBzIiwgIkFsbCBTbWFsbCBDYXBzIiwgIlBldGl0ZSBDYXBzIiwgIkFsbCBQZXRpdGUgQ2FwcyIs
ICJVbmljYXNlIiwgIlRpdGxpbmcgQ2FwcyJdKSk7CisKKyAgICAgICAgcG9zaXRpb25Sb3cuZWxl
bWVudC5hcHBlbmRDaGlsZChwcm9wZXJ0aWVzLmZvbnRWYXJpYW50Q2Fwcy5lbGVtZW50KTsKKwor
ICAgICAgICBsZXQgbGlnYXR1cmVzUm93ID0gbmV3IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlv
blJvdzsKKworICAgICAgICAvLyBGSVhNRSA8aHR0cDovL3dlYmtpdC5vcmcvYi8xNTM2NDU+IEFk
ZCB0b2tlbiBiYXNlZCBlZGl0b3IgZm9yIFZpc3VhbCBTaWRlYmFyCisgICAgICAgIHByb3BlcnRp
ZXMuZm9udFZhcmlhbnRMaWdhdHVyZXMgPSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlS2V5
d29yZFBpY2tlcigiZm9udC12YXJpYW50LWxpZ2F0dXJlcyIsIFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiTGlnYXR1cmVzIiksIHRoaXMuX2tleXdvcmRzLm5vcm1hbC5jb25jYXQoWyJOb25lIiwgIkNv
bW1vbiBMaWdhdHVyZXMiLCAiTm8gQ29tbW9uIExpZ2F0dXJlcyIsICJEaXNjcmV0aW9uYXJ5IExp
Z2F0dXJlcyIsICJObyBEaXNjcmV0aW9uYXJ5IExpZ2F0dXJlcyIsICJIaXN0b3JpY2FsIExpZ2F0
dXJlcyIsICJObyBIaXN0b3JpY2FsIExpZ2F0dXJlcyIsICJDb250ZXh0dWFsIiwgIk5vIENvbnRl
eHR1YWwiXSkpOworCisgICAgICAgIGxpZ2F0dXJlc1Jvdy5lbGVtZW50LmFwcGVuZENoaWxkKHBy
b3BlcnRpZXMuZm9udFZhcmlhbnRMaWdhdHVyZXMuZWxlbWVudCk7CisKKyAgICAgICAgcHJvcGVy
dGllcy5mb250VmFyaWFudE51bWVyaWMgPSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlS2V5
d29yZFBpY2tlcigiZm9udC12YXJpYW50LW51bWVyaWMiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmco
Ik51bWVyaWMiKSwgdGhpcy5fa2V5d29yZHMubm9ybWFsLmNvbmNhdChbIk5vbmUiLCAiT3JkaW5h
bCIsICJTbGFzaGVkIFplcm8iLCAiTGluaW5nIE51bXMiLCAiT2xkc3R5bGUgTnVtcyIsICJQcm9w
b3J0aW9uYWwgTnVtcyIsICJUYWJ1bGFyIE51bXMiLCAiRGlhZ29uYWwgRnJhY3Rpb25zIiwgIlN0
YWNrZWQgRnJhY3Rpb25zIl0pKTsKKworICAgICAgICBsaWdhdHVyZXNSb3cuZWxlbWVudC5hcHBl
bmRDaGlsZChwcm9wZXJ0aWVzLmZvbnRWYXJpYW50TnVtZXJpYy5lbGVtZW50KTsKKworICAgICAg
ICBsZXQgdmFyaWFudHNHcm91cCA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb25Hcm91
cChbYWx0ZXJuYXRlc1JvdywgcG9zaXRpb25Sb3csIGxpZ2F0dXJlc1Jvd10pOworICAgICAgICB0
aGlzLl9wb3B1bGF0ZVNlY3Rpb24oZ3JvdXAsIFt2YXJpYW50c0dyb3VwXSk7CisgICAgfQorCiAg
ICAgX3BvcHVsYXRlVGV4dFNwYWNpbmdTZWN0aW9uKCkKICAgICB7CiAgICAgICAgIGxldCBncm91
cCA9IHRoaXMuX2dyb3Vwcy50ZXh0U3BhY2luZzsKICAgICAgICAgbGV0IHByb3BlcnRpZXMgPSBn
cm91cC5wcm9wZXJ0aWVzOwogCi0gICAgICAgIGxldCBkZWZhdWx0VGV4dEtleXdvcmRzID0gdGhp
cy5fa2V5d29yZHMuZGVmYXVsdHMuY29uY2F0KFsiTm9ybWFsIl0pOwotCiAgICAgICAgIGxldCB0
ZXh0TGF5b3V0Um93ID0gbmV3IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblJvdzsKIAotICAg
ICAgICBwcm9wZXJ0aWVzLmxpbmVIZWlnaHQgPSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxl
TnVtYmVySW5wdXRCb3goImxpbmUtaGVpZ2h0IiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJIZWln
aHQiKSwgZGVmYXVsdFRleHRLZXl3b3JkcywgdGhpcy5fdW5pdHMuZGVmYXVsdHMpOworICAgICAg
ICBwcm9wZXJ0aWVzLmxpbmVIZWlnaHQgPSBuZXcgV2ViSW5zcGVjdG9yLlZpc3VhbFN0eWxlTnVt
YmVySW5wdXRCb3goImxpbmUtaGVpZ2h0IiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJIZWlnaHQi
KSwgdGhpcy5fa2V5d29yZHMubm9ybWFsLCB0aGlzLl91bml0cy5kZWZhdWx0cyk7CiAgICAgICAg
IHByb3BlcnRpZXMudmVydGljYWxBbGlnbiA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVO
dW1iZXJJbnB1dEJveCgidmVydGljYWwtYWxpZ24iLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkFs
aWduIiksIFsiQmFzZWxpbmUiLCAiQm90dG9tIl0uY29uY2F0KHRoaXMuX2tleXdvcmRzLmRlZmF1
bHRzLCBbIk1pZGRsZSIsICJTdWIiLCAiU3VwZXIiLCAiVGV4dCBCb3R0b20iLCAiVGV4dCBUb3Ai
LCAiVG9wIl0pLCB0aGlzLl91bml0cy5kZWZhdWx0cyk7CiAKICAgICAgICAgdGV4dExheW91dFJv
dy5lbGVtZW50LmFwcGVuZENoaWxkKHByb3BlcnRpZXMubGluZUhlaWdodC5lbGVtZW50KTsKQEAg
LTczMyw4ICs3NjksOCBAQCBXZWJJbnNwZWN0b3IuVmlzdWFsU3R5bGVEZXRhaWxzUGFuZWwgPSBj
bGFzcyBWaXN1YWxTdHlsZURldGFpbHNQYW5lbCBleHRlbmRzIFdlYgogCiAgICAgICAgIGxldCB0
ZXh0U3BhY2luZ1JvdyA9IG5ldyBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb25Sb3c7CiAKLSAg
ICAgICAgcHJvcGVydGllcy5sZXR0ZXJTcGFjaW5nID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxT
dHlsZU51bWJlcklucHV0Qm94KCJsZXR0ZXItc3BhY2luZyIsIFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiTGV0dGVyIiksIGRlZmF1bHRUZXh0S2V5d29yZHMsIHRoaXMuX3VuaXRzLmRlZmF1bHRzKTsK
LSAgICAgICAgcHJvcGVydGllcy53b3JkU3BhY2luZyA9IG5ldyBXZWJJbnNwZWN0b3IuVmlzdWFs
U3R5bGVOdW1iZXJJbnB1dEJveCgid29yZC1zcGFjaW5nIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCJXb3JkIiksIGRlZmF1bHRUZXh0S2V5d29yZHMsIHRoaXMuX3VuaXRzLmRlZmF1bHRzKTsKKyAg
ICAgICAgcHJvcGVydGllcy5sZXR0ZXJTcGFjaW5nID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1YWxT
dHlsZU51bWJlcklucHV0Qm94KCJsZXR0ZXItc3BhY2luZyIsIFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiTGV0dGVyIiksIHRoaXMuX2tleXdvcmRzLm5vcm1hbCwgdGhpcy5fdW5pdHMuZGVmYXVsdHMp
OworICAgICAgICBwcm9wZXJ0aWVzLndvcmRTcGFjaW5nID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1
YWxTdHlsZU51bWJlcklucHV0Qm94KCJ3b3JkLXNwYWNpbmciLCBXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIldvcmQiKSwgdGhpcy5fa2V5d29yZHMubm9ybWFsLCB0aGlzLl91bml0cy5kZWZhdWx0cyk7
CiAKICAgICAgICAgdGV4dFNwYWNpbmdSb3cuZWxlbWVudC5hcHBlbmRDaGlsZChwcm9wZXJ0aWVz
LmxldHRlclNwYWNpbmcuZWxlbWVudCk7CiAgICAgICAgIHRleHRTcGFjaW5nUm93LmVsZW1lbnQu
YXBwZW5kQ2hpbGQocHJvcGVydGllcy53b3JkU3BhY2luZy5lbGVtZW50KTsKQEAgLTEyNzMsNyAr
MTMwOSw3IEBAIFdlYkluc3BlY3Rvci5WaXN1YWxTdHlsZURldGFpbHNQYW5lbCA9IGNsYXNzIFZp
c3VhbFN0eWxlRGV0YWlsc1BhbmVsIGV4dGVuZHMgV2ViCiAgICAgICAgIGxldCBhbmltYXRpb25E
aXJlY3Rpb25Sb3cgPSBuZXcgV2ViSW5zcGVjdG9yLkRldGFpbHNTZWN0aW9uUm93OwogCiAgICAg
ICAgIHByb3BlcnRpZXMuYW5pbWF0aW9uRGlyZWN0aW9uID0gbmV3IFdlYkluc3BlY3Rvci5WaXN1
YWxTdHlsZUtleXdvcmRQaWNrZXIoImFuaW1hdGlvbi1kaXJlY3Rpb24iLCBXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIkRpcmVjdGlvbiIpLCB7Ci0gICAgICAgICAgICBiYXNpYzogdGhpcy5fa2V5d29y
ZHMuZGVmYXVsdHMuY29uY2F0KFsiTm9ybWFsIiwgIlJldmVyc2UiXSksCisgICAgICAgICAgICBi
YXNpYzogdGhpcy5fa2V5d29yZHMubm9ybWFsLmNvbmNhdChbIlJldmVyc2UiXSksCiAgICAgICAg
ICAgICBhZHZhbmNlZDogWyJBbHRlcm5hdGUiLCAiQWx0ZXJuYXRlIFJldmVyc2UiXQogICAgICAg
ICB9KTsKICAgICAgICAgcHJvcGVydGllcy5hbmltYXRpb25GaWxsTW9kZSA9IG5ldyBXZWJJbnNw
ZWN0b3IuVmlzdWFsU3R5bGVLZXl3b3JkUGlja2VyKCJhbmltYXRpb24tZmlsbC1tb2RlIiwgV2Vi
SW5zcGVjdG9yLlVJU3RyaW5nKCJGaWxsIE1vZGUiKSwgdGhpcy5fa2V5d29yZHMuZGVmYXVsdHMu
Y29uY2F0KFsiTm9uZSIsICJGb3J3YXJkcyIsICJCYWNrd2FyZHMiLCAiQm90aCJdKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9WaXN1YWxT
dHlsZUtleXdvcmRDaGVja2JveC5jc3MgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9WaXN1YWxTdHlsZUtleXdvcmRDaGVja2JveC5jc3MKaW5kZXggMjA5NzI0MmY4
NzU3MTIzN2Q1YzE1NDg1NDQ0YjRiNGY5ZDBmMzlmNy4uOTUyY2YwZDlkN2ZiMmIyZGFjYTZlOGE1
MTBkNmRiMjA4ZTA3NmY3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVLZXl3b3JkQ2hlY2tib3guY3NzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxlS2V5d29yZENo
ZWNrYm94LmNzcwpAQCAtMzEsMTQgKzMxLDMgQEAKIC52aXN1YWwtc3R5bGUtcHJvcGVydHktY29u
dGFpbmVyLmtleXdvcmQtY2hlY2tib3ggPiAudmlzdWFsLXN0eWxlLXByb3BlcnR5LXZhbHVlLWNv
bnRhaW5lciA+IGlucHV0IHsKICAgICB3aWR0aDogYXV0bzsKIH0KLQotLyogRm9udCBWYXJpYW50
ICovCi0udmlzdWFsLXN0eWxlLXByb3BlcnR5LWNvbnRhaW5lci5rZXl3b3JkLWNoZWNrYm94LmZv
bnQtdmFyaWFudCA+IC52aXN1YWwtc3R5bGUtcHJvcGVydHktdmFsdWUtY29udGFpbmVyID4gaW5w
dXQ6OmFmdGVyIHsKLSAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0gICAgdG9wOiA1cHg7Ci0gICAg
bGVmdDogMTVweDsKLSAgICBmb250LXNpemU6IDlweDsKLSAgICBmb250LXZhcmlhbnQ6IHNtYWxs
LWNhcHM7Ci0gICAgd29yZC1zcGFjaW5nOiAtMnB4OwotICAgIGNvbnRlbnQ6ICJTbWFsbCBDYXBz
IjsKLX0K
</data>

          </attachment>
      

    </bug>

</bugzilla>