<?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>175394</bug_id>
          
          <creation_ts>2017-08-09 13:10:58 -0700</creation_ts>
          <short_desc>[Bindings] Simplify DOMPromiseProxy now that WTF::Function can return references</short_desc>
          <delta_ts>2017-08-11 17:32:39 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1337091</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-08-09 13:10:58 -0700</bug_when>
    <thetext>[Bindings] Simplify DOMPromiseProxy now that WTF::Function can return references</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1337094</commentid>
    <comment_count>1</comment_count>
      <attachid>317731</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-08-09 13:17:12 -0700</bug_when>
    <thetext>Created attachment 317731
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1337095</commentid>
    <comment_count>2</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-09 13:19:33 -0700</bug_when>
    <thetext>Attachment 317731 did not pass style-queue:


ERROR: Source/WebCore/bindings/js/DOMPromiseProxy.h:87:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1337125</commentid>
    <comment_count>3</comment_count>
      <attachid>317739</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-08-09 14:13:05 -0700</bug_when>
    <thetext>Created attachment 317739
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1337128</commentid>
    <comment_count>4</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-09 14:15:59 -0700</bug_when>
    <thetext>Attachment 317739 did not pass style-queue:


ERROR: Source/WebCore/bindings/js/DOMPromiseProxy.h:87:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338083</commentid>
    <comment_count>5</comment_count>
      <attachid>317739</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-11 17:32:06 -0700</bug_when>
    <thetext>Comment on attachment 317739
Patch

Clearing flags on attachment: 317739

Committed r220620: &lt;http://trac.webkit.org/changeset/220620&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338084</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-11 17:32:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338085</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-11 17:32:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/33859548&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317731</attachid>
            <date>2017-08-09 13:17:12 -0700</date>
            <delta_ts>2017-08-09 14:00:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175394-20170809131712.patch</filename>
            <type>text/plain</type>
            <size>12864</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyMDQ3NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE3LTA4LTA5ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0JpbmRpbmdzXSBTaW1wbGlmeSBET01Q
cm9taXNlUHJveHkgbm93IHRoYXQgV1RGOjpGdW5jdGlvbiBjYW4gcmV0dXJuIHJlZmVyZW5jZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTM5NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYmluZGlu
Z3MvSURMVHlwZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OklETFdyYXBwZXI6OmNvbnZlcnRUb1Bh
cmFtZXRlclR5cGUpOiBEZWxldGVkLgorCisgICAgICAgICAgICBSZW1vdmUgbm8gbG9uZ2VyIHVz
ZWQgY29udmVydFRvUGFyYW1ldGVyVHlwZS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0RPTVBy
b21pc2VQcm94eS5oOgorCisgICAgICAgICAgICAtIFJlcGxhY2UgVmFyaWFudDxWYWx1ZSwgRXhj
ZXB0aW9uPiB3aXRoIEV4Y2VwdGlvbk9yPFZhbHVlPiAvIEV4Y2VwdGlvbk9yPHZvaWQ+LgorICAg
ICAgICAgICAgLSBVcGRhdGUgUmVzb2x2ZUNhbGxiYWNrIHRvIGhhdmUgYSByZXR1cm4gdHlwZSBv
ZiBJRExUeXBlOjpQYXJhbWV0ZXJUeXBlLCByYXRoZXIgdGhhbgorICAgICAgICAgICAgICBJRExU
eXBlOjpJbXBsZW1lbnRhdGlvblR5cGUsIG5vdyB0aGF0IFdURjo6RnVuY3Rpb24gc3VwcG9ydHMg
cmVmZXJlbmNlcyBhcyB0aGUgCisgICAgICAgICAgICAgIHJldHVybiB0eXBlLiBUaGlzIGlzIG5l
ZWRlZCwgc2luY2UgdGhlIElETFR5cGU6OlBhcmFtZXRlclR5cGUgZm9yIGFuIGludGVyZmFjZSBU
CisgICAgICAgICAgICAgIGlzIFQmLgorCisgICAgICAgICogY3NzL0ZvbnRGYWNlLmNwcDoKKyAg
ICAgICAgKiBjc3MvRm9udEZhY2UuaDoKKyAgICAgICAgKiBjc3MvRm9udEZhY2VTZXQuY3BwOgor
ICAgICAgICAqIGNzcy9Gb250RmFjZVNldC5oOgorCisgICAgICAgICAgICBVcGRhdGUgcmVzb2x2
ZSBjYWxsYmFja3MgdG8gcmV0dXJuIGEgcmVmZXJlbmNlIHJhdGhlciB0aGFuIGEgUmVmUHRyLCBt
YXRjaGluZworICAgICAgICAgICAgdGhlIG5ldyBzaWduYXR1cmUgcmVxdWlyZW1lbnQuCisKIDIw
MTctMDgtMDkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAg
ICAgW2lPUyBEbkRdIEVOQUJMRV9EUkFHX1NVUFBPUlQgc2hvdWxkIGJlIHR1cm5lZCBvZmYgZm9y
IGlPUyAxMCBhbmQgZW5hYmxlZCBieSBkZWZhdWx0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9JRExUeXBlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL0lE
TFR5cGVzLmgJKHJldmlzaW9uIDIyMDQ3MykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL0lE
TFR5cGVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3MCw4ICsxNzAsNiBAQCB0ZW1wbGF0ZTx0eXBl
bmFtZSBUPiBzdHJ1Y3QgSURMV3JhcHBlciA6CiAgICAgc3RhdGljIGlubGluZSBzdGQ6Om51bGxw
dHJfdCBudWxsVmFsdWUoKSB7IHJldHVybiBudWxscHRyOyB9CiAgICAgdGVtcGxhdGU8dHlwZW5h
bWUgVT4gc3RhdGljIGlubGluZSBib29sIGlzTnVsbFZhbHVlKFUmJiB2YWx1ZSkgeyByZXR1cm4g
IXZhbHVlOyB9CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVT4gc3RhdGljIGlubGluZSBVJiYgZXh0
cmFjdFZhbHVlRnJvbU51bGxhYmxlKFUmJiB2YWx1ZSkgeyByZXR1cm4gc3RkOjpmb3J3YXJkPFU+
KHZhbHVlKTsgfQotCi0gICAgc3RhdGljIFBhcmFtZXRlclR5cGUgY29udmVydFRvUGFyYW1ldGVy
VHlwZShSZWZQdHI8VD4gdmFsdWUpIHsgQVNTRVJUKHZhbHVlKTsgcmV0dXJuICp2YWx1ZS5nZXQo
KTsgfQogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IElETEludGVyZmFjZSA6IElE
TFdyYXBwZXI8VD4geyB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRE9NUHJv
bWlzZVByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRE9N
UHJvbWlzZVByb3h5LmgJKHJldmlzaW9uIDIyMDQ3MykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0RPTVByb21pc2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSwxMiArMjUsMTEg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJFeGNlcHRpb24uaCIKKyNpbmNsdWRlICJF
eGNlcHRpb25Pci5oIgogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAjaW5jbHVkZSAi
SlNET01Qcm9taXNlRGVmZXJyZWQuaCIKICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNs
dWRlIDx3dGYvT3B0aW9uYWwuaD4KLSNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzksNyArMzgsNiBAQCB0
ZW1wbGF0ZTx0eXBlbmFtZSBJRExUeXBlPgogY2xhc3MgRE9NUHJvbWlzZVByb3h5IHsKIHB1Ymxp
YzoKICAgICB1c2luZyBWYWx1ZSA9IHR5cGVuYW1lIElETFR5cGU6OlN0b3JhZ2VUeXBlOwotICAg
IHVzaW5nIFZhbHVlT3JFeGNlcHRpb24gPSBWYXJpYW50PFZhbHVlLCBFeGNlcHRpb24+OwogCiAg
ICAgRE9NUHJvbWlzZVByb3h5KCkgPSBkZWZhdWx0OwogICAgIH5ET01Qcm9taXNlUHJveHkoKSA9
IGRlZmF1bHQ7CkBAIC01NSwxNiArNTMsMTMgQEAgcHVibGljOgogICAgIHZvaWQgcmVqZWN0KEV4
Y2VwdGlvbik7CiAgICAgCiBwcml2YXRlOgotICAgIHN0ZDo6b3B0aW9uYWw8VmFsdWVPckV4Y2Vw
dGlvbj4gbV92YWx1ZU9yRXhjZXB0aW9uOworICAgIHN0ZDo6b3B0aW9uYWw8RXhjZXB0aW9uT3I8
VmFsdWU+PiBtX3ZhbHVlT3JFeGNlcHRpb247CiAgICAgVmVjdG9yPFJlZjxEZWZlcnJlZFByb21p
c2U+LCAxPiBtX2RlZmVycmVkUHJvbWlzZXM7CiB9OwogCiB0ZW1wbGF0ZTw+CiBjbGFzcyBET01Q
cm9taXNlUHJveHk8SURMVm9pZD4gewogcHVibGljOgotICAgIHVzaW5nIFZhbHVlID0gYm9vbDsK
LSAgICB1c2luZyBWYWx1ZU9yRXhjZXB0aW9uID0gVmFyaWFudDxWYWx1ZSwgRXhjZXB0aW9uPjsK
LQogICAgIERPTVByb21pc2VQcm94eSgpID0gZGVmYXVsdDsKICAgICB+RE9NUHJvbWlzZVByb3h5
KCkgPSBkZWZhdWx0OwogCkBAIC03OCw3ICs3Myw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlamVj
dChFeGNlcHRpb24pOwogCiBwcml2YXRlOgotICAgIHN0ZDo6b3B0aW9uYWw8VmFsdWVPckV4Y2Vw
dGlvbj4gbV92YWx1ZU9yRXhjZXB0aW9uOworICAgIHN0ZDo6b3B0aW9uYWw8RXhjZXB0aW9uT3I8
dm9pZD4+IG1fdmFsdWVPckV4Y2VwdGlvbjsKICAgICBWZWN0b3I8UmVmPERlZmVycmVkUHJvbWlz
ZT4sIDE+IG1fZGVmZXJyZWRQcm9taXNlczsKIH07CiAKQEAgLTg5LDE1ICs4NCwxMCBAQCBwcml2
YXRlOgogdGVtcGxhdGU8dHlwZW5hbWUgSURMVHlwZT4KIGNsYXNzIERPTVByb21pc2VQcm94eVdp
dGhSZXNvbHZlQ2FsbGJhY2sgewogcHVibGljOgotICAgIHVzaW5nIFZhbHVlID0gYm9vbDsKLSAg
ICB1c2luZyBWYWx1ZU9yRXhjZXB0aW9uID0gVmFyaWFudDxWYWx1ZSwgRXhjZXB0aW9uPjsKLSAg
ICAvLyBGSVhNRTogVGhpcyBzaG91bGQgcmV0dXJuIGEgSURMVHlwZTo6UGFyYW1ldGVyVHlwZSwg
YnV0IFdURjo6RnVuY3Rpb24gZG9lcwotICAgIC8vICAgICAgICBub3Qgc3VwcG9ydCByZXR1cm5p
bmcgcmVmZXJlbmNlcyAvIG5vbi1kZWZhdWx0IGluaXRpYWxpemFibGUgdHlwZXMuCi0gICAgLy8g
ICAgICAgIFNlZSBodHRwczovL3dlYmtpdC5vcmcvYi8xNzUyNDQuCi0gICAgdXNpbmcgUmVzb2x2
ZUNhbGxiYWNrID0gV1RGOjpGdW5jdGlvbjx0eXBlbmFtZSBJRExUeXBlOjpJbXBsZW1lbnRhdGlv
blR5cGUgKCk+OworICAgIHVzaW5nIFJlc29sdmVDYWxsYmFjayA9IFdURjo6RnVuY3Rpb248dHlw
ZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZSAoKT47CiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5h
bWUgQ2xhc3MsIHR5cGVuYW1lIEJhc2VDbGFzcz4KLSAgICBET01Qcm9taXNlUHJveHlXaXRoUmVz
b2x2ZUNhbGxiYWNrKENsYXNzJiwgdHlwZW5hbWUgSURMVHlwZTo6SW1wbGVtZW50YXRpb25UeXBl
IChCYXNlQ2xhc3M6OiopKCkpOworICAgIERPTVByb21pc2VQcm94eVdpdGhSZXNvbHZlQ2FsbGJh
Y2soQ2xhc3MmLCB0eXBlbmFtZSBJRExUeXBlOjpQYXJhbWV0ZXJUeXBlIChCYXNlQ2xhc3M6Oiop
KCkpOwogICAgIERPTVByb21pc2VQcm94eVdpdGhSZXNvbHZlQ2FsbGJhY2soUmVzb2x2ZUNhbGxi
YWNrJiYpOwogICAgIH5ET01Qcm9taXNlUHJveHlXaXRoUmVzb2x2ZUNhbGxiYWNrKCkgPSBkZWZh
dWx0OwogCkBAIC0xMTMsOCArMTAzLDcgQEAgcHVibGljOgogICAgIAogcHJpdmF0ZToKICAgICBS
ZXNvbHZlQ2FsbGJhY2sgbV9yZXNvbHZlQ2FsbGJhY2s7Ci0KLSAgICBzdGQ6Om9wdGlvbmFsPFZh
bHVlT3JFeGNlcHRpb24+IG1fdmFsdWVPckV4Y2VwdGlvbjsKKyAgICBzdGQ6Om9wdGlvbmFsPEV4
Y2VwdGlvbk9yPHZvaWQ+PiBtX3ZhbHVlT3JFeGNlcHRpb247CiAgICAgVmVjdG9yPFJlZjxEZWZl
cnJlZFByb21pc2U+LCAxPiBtX2RlZmVycmVkUHJvbWlzZXM7CiB9OwogCkBAIC0xMzUsMTAgKzEy
NCwxMCBAQCBpbmxpbmUgSlNDOjpKU1ZhbHVlIERPTVByb21pc2VQcm94eTxJRExUCiAgICAgICAg
IHJldHVybiBKU0M6OmpzVW5kZWZpbmVkKCk7CiAKICAgICBpZiAobV92YWx1ZU9yRXhjZXB0aW9u
KSB7Ci0gICAgICAgIGlmIChXVEY6OmhvbGRzX2FsdGVybmF0aXZlPFZhbHVlPigqbV92YWx1ZU9y
RXhjZXB0aW9uKSkKLSAgICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxhdGUgcmVzb2x2
ZTxJRExUeXBlPihXVEY6OmdldDxWYWx1ZT4oKm1fdmFsdWVPckV4Y2VwdGlvbikpOworICAgICAg
ICBpZiAobV92YWx1ZU9yRXhjZXB0aW9uLT5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIGRl
ZmVycmVkUHJvbWlzZS0+cmVqZWN0KG1fdmFsdWVPckV4Y2VwdGlvbi0+ZXhjZXB0aW9uKCkpOwog
ICAgICAgICBlbHNlCi0gICAgICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChXVEY6Omdl
dDxFeGNlcHRpb24+KCptX3ZhbHVlT3JFeGNlcHRpb24pKTsKKyAgICAgICAgICAgIGRlZmVycmVk
UHJvbWlzZS0+dGVtcGxhdGUgcmVzb2x2ZTxJRExUeXBlPihtX3ZhbHVlT3JFeGNlcHRpb24tPnJl
dHVyblZhbHVlKCkpOwogICAgIH0KIAogICAgIGF1dG8gcmVzdWx0ID0gZGVmZXJyZWRQcm9taXNl
LT5wcm9taXNlKCk7CkBAIC0xNjQsOSArMTUzLDkgQEAgaW5saW5lIHZvaWQgRE9NUHJvbWlzZVBy
b3h5PElETFR5cGU+OjpyZQogewogICAgIEFTU0VSVCghbV92YWx1ZU9yRXhjZXB0aW9uKTsKIAot
ICAgIG1fdmFsdWVPckV4Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyBzdGQ6OmZvcndhcmQ8
dHlwZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZT4odmFsdWUpIH07CisgICAgbV92YWx1ZU9y
RXhjZXB0aW9uID0gRXhjZXB0aW9uT3I8VmFsdWU+IHsgc3RkOjpmb3J3YXJkPHR5cGVuYW1lIElE
TFR5cGU6OlBhcmFtZXRlclR5cGU+KHZhbHVlKSB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQ
cm9taXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQotICAgICAgICBkZWZlcnJlZFByb21pc2UtPnRl
bXBsYXRlIHJlc29sdmU8SURMVHlwZT4oV1RGOjpnZXQ8VmFsdWU+KCptX3ZhbHVlT3JFeGNlcHRp
b24pKTsKKyAgICAgICAgZGVmZXJyZWRQcm9taXNlLT50ZW1wbGF0ZSByZXNvbHZlPElETFR5cGU+
KG1fdmFsdWVPckV4Y2VwdGlvbi0+cmV0dXJuVmFsdWUoKSk7CiB9CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIElETFR5cGU+CkBAIC0xNzQsOSArMTYzLDkgQEAgaW5saW5lIHZvaWQgRE9NUHJvbWlzZVBy
b3h5PElETFR5cGU+OjpyZQogewogICAgIEFTU0VSVCghbV92YWx1ZU9yRXhjZXB0aW9uKTsKIAot
ICAgIG1fdmFsdWVPckV4Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyBzdGQ6OmZvcndhcmQ8
dHlwZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZT4odmFsdWUpIH07CisgICAgbV92YWx1ZU9y
RXhjZXB0aW9uID0gRXhjZXB0aW9uT3I8VmFsdWU+IHsgc3RkOjpmb3J3YXJkPHR5cGVuYW1lIElE
TFR5cGU6OlBhcmFtZXRlclR5cGU+KHZhbHVlKSB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQ
cm9taXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQotICAgICAgICBkZWZlcnJlZFByb21pc2UtPnRl
bXBsYXRlIHJlc29sdmVXaXRoTmV3bHlDcmVhdGVkPElETFR5cGU+KFdURjo6Z2V0PFZhbHVlPigq
bV92YWx1ZU9yRXhjZXB0aW9uKSk7CisgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxhdGUg
cmVzb2x2ZVdpdGhOZXdseUNyZWF0ZWQ8SURMVHlwZT4obV92YWx1ZU9yRXhjZXB0aW9uLT5yZXR1
cm5WYWx1ZSgpKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgSURMVHlwZT4KQEAgLTE4NCw5ICsx
NzMsOSBAQCBpbmxpbmUgdm9pZCBET01Qcm9taXNlUHJveHk8SURMVHlwZT46OnJlCiB7CiAgICAg
QVNTRVJUKCFtX3ZhbHVlT3JFeGNlcHRpb24pOwogCi0gICAgbV92YWx1ZU9yRXhjZXB0aW9uID0g
VmFsdWVPckV4Y2VwdGlvbiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OworICAgIG1fdmFsdWVPckV4
Y2VwdGlvbiA9IEV4Y2VwdGlvbk9yPFZhbHVlPiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OwogICAg
IGZvciAoYXV0byYgZGVmZXJyZWRQcm9taXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQotICAgICAg
ICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChXVEY6OmdldDxFeGNlcHRpb24+KCptX3ZhbHVlT3JF
eGNlcHRpb24pKTsKKyAgICAgICAgZGVmZXJyZWRQcm9taXNlLT5yZWplY3QobV92YWx1ZU9yRXhj
ZXB0aW9uLT5leGNlcHRpb24oKSk7CiB9CiAKIApAQCAtMjA1LDEwICsxOTQsMTAgQEAgaW5saW5l
IEpTQzo6SlNWYWx1ZSBET01Qcm9taXNlUHJveHk8SURMVgogICAgICAgICByZXR1cm4gSlNDOjpq
c1VuZGVmaW5lZCgpOwogCiAgICAgaWYgKG1fdmFsdWVPckV4Y2VwdGlvbikgewotICAgICAgICBp
ZiAoV1RGOjpob2xkc19hbHRlcm5hdGl2ZTxWYWx1ZT4oKm1fdmFsdWVPckV4Y2VwdGlvbikpCi0g
ICAgICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlc29sdmUoKTsKKyAgICAgICAgaWYgKG1fdmFs
dWVPckV4Y2VwdGlvbi0+aGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBkZWZlcnJlZFByb21p
c2UtPnJlamVjdChtX3ZhbHVlT3JFeGNlcHRpb24tPmV4Y2VwdGlvbigpKTsKICAgICAgICAgZWxz
ZQotICAgICAgICAgICAgZGVmZXJyZWRQcm9taXNlLT5yZWplY3QoV1RGOjpnZXQ8RXhjZXB0aW9u
PigqbV92YWx1ZU9yRXhjZXB0aW9uKSk7CisgICAgICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJl
c29sdmUoKTsKICAgICB9CiAKICAgICBhdXRvIHJlc3VsdCA9IGRlZmVycmVkUHJvbWlzZS0+cHJv
bWlzZSgpOwpAQCAtMjMwLDcgKzIxOSw3IEBAIGlubGluZSBib29sIERPTVByb21pc2VQcm94eTxJ
RExWb2lkPjo6aXMKIGlubGluZSB2b2lkIERPTVByb21pc2VQcm94eTxJRExWb2lkPjo6cmVzb2x2
ZSgpCiB7CiAgICAgQVNTRVJUKCFtX3ZhbHVlT3JFeGNlcHRpb24pOwotICAgIG1fdmFsdWVPckV4
Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyB0cnVlIH07CisgICAgbV92YWx1ZU9yRXhjZXB0
aW9uID0gRXhjZXB0aW9uT3I8dm9pZD4geyB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQcm9t
aXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQogICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlc29s
dmUoKTsKIH0KQEAgLTIzOCwxNiArMjI3LDE2IEBAIGlubGluZSB2b2lkIERPTVByb21pc2VQcm94
eTxJRExWb2lkPjo6cmUKIGlubGluZSB2b2lkIERPTVByb21pc2VQcm94eTxJRExWb2lkPjo6cmVq
ZWN0KEV4Y2VwdGlvbiBleGNlcHRpb24pCiB7CiAgICAgQVNTRVJUKCFtX3ZhbHVlT3JFeGNlcHRp
b24pOwotICAgIG1fdmFsdWVPckV4Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyBXVEZNb3Zl
KGV4Y2VwdGlvbikgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25Pcjx2b2lk
PiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQcm9taXNl
IDogbV9kZWZlcnJlZFByb21pc2VzKQotICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChX
VEY6OmdldDxFeGNlcHRpb24+KCptX3ZhbHVlT3JFeGNlcHRpb24pKTsKKyAgICAgICAgZGVmZXJy
ZWRQcm9taXNlLT5yZWplY3QobV92YWx1ZU9yRXhjZXB0aW9uLT5leGNlcHRpb24oKSk7CiB9CiAK
IC8vIE1BUks6IC0gRE9NUHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYWxsYmFjazxJRExUeXBlPiBp
bXBsZW1lbnRhdGlvbgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBJRExUeXBlPgogdGVtcGxhdGUgPHR5
cGVuYW1lIENsYXNzLCB0eXBlbmFtZSBCYXNlQ2xhc3M+Ci1pbmxpbmUgRE9NUHJvbWlzZVByb3h5
V2l0aFJlc29sdmVDYWxsYmFjazxJRExUeXBlPjo6RE9NUHJvbWlzZVByb3h5V2l0aFJlc29sdmVD
YWxsYmFjayhDbGFzcyYgb2JqZWN0LCB0eXBlbmFtZSBJRExUeXBlOjpJbXBsZW1lbnRhdGlvblR5
cGUgKEJhc2VDbGFzczo6KmZ1bmN0aW9uKSgpKQoraW5saW5lIERPTVByb21pc2VQcm94eVdpdGhS
ZXNvbHZlQ2FsbGJhY2s8SURMVHlwZT46OkRPTVByb21pc2VQcm94eVdpdGhSZXNvbHZlQ2FsbGJh
Y2soQ2xhc3MmIG9iamVjdCwgdHlwZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZSAoQmFzZUNs
YXNzOjoqZnVuY3Rpb24pKCkpCiAgICAgOiBtX3Jlc29sdmVDYWxsYmFjayhzdGQ6OmJpbmQoZnVu
Y3Rpb24sICZvYmplY3QpKQogewogfQpAQCAtMjcyLDEwICsyNjEsMTAgQEAgaW5saW5lIEpTQzo6
SlNWYWx1ZSBET01Qcm9taXNlUHJveHlXaXRoUgogICAgICAgICByZXR1cm4gSlNDOjpqc1VuZGVm
aW5lZCgpOwogCiAgICAgaWYgKG1fdmFsdWVPckV4Y2VwdGlvbikgewotICAgICAgICBpZiAoV1RG
Ojpob2xkc19hbHRlcm5hdGl2ZTxWYWx1ZT4oKm1fdmFsdWVPckV4Y2VwdGlvbikpCi0gICAgICAg
ICAgICBkZWZlcnJlZFByb21pc2UtPnRlbXBsYXRlIHJlc29sdmU8SURMVHlwZT4oSURMVHlwZTo6
Y29udmVydFRvUGFyYW1ldGVyVHlwZShtX3Jlc29sdmVDYWxsYmFjaygpKSk7CisgICAgICAgIGlm
IChtX3ZhbHVlT3JFeGNlcHRpb24tPmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgZGVmZXJy
ZWRQcm9taXNlLT5yZWplY3QobV92YWx1ZU9yRXhjZXB0aW9uLT5leGNlcHRpb24oKSk7CiAgICAg
ICAgIGVsc2UKLSAgICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVqZWN0KFdURjo6Z2V0PEV4
Y2VwdGlvbj4oKm1fdmFsdWVPckV4Y2VwdGlvbikpOworICAgICAgICAgICAgZGVmZXJyZWRQcm9t
aXNlLT50ZW1wbGF0ZSByZXNvbHZlPElETFR5cGU+KG1fcmVzb2x2ZUNhbGxiYWNrKCkpOwogICAg
IH0KIAogICAgIGF1dG8gcmVzdWx0ID0gZGVmZXJyZWRQcm9taXNlLT5wcm9taXNlKCk7CkBAIC0z
MDEsNyArMjkwLDcgQEAgaW5saW5lIHZvaWQgRE9NUHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYQog
ewogICAgIEFTU0VSVCghbV92YWx1ZU9yRXhjZXB0aW9uKTsKIAotICAgIG1fdmFsdWVPckV4Y2Vw
dGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyB0cnVlIH07CisgICAgbV92YWx1ZU9yRXhjZXB0aW9u
ID0gRXhjZXB0aW9uT3I8dm9pZD4geyB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQcm9taXNl
IDogbV9kZWZlcnJlZFByb21pc2VzKQogICAgICAgICBkZWZlcnJlZFByb21pc2UtPnRlbXBsYXRl
IHJlc29sdmU8SURMVHlwZT4odmFsdWUpOwogfQpAQCAtMzExLDcgKzMwMCw3IEBAIGlubGluZSB2
b2lkIERPTVByb21pc2VQcm94eVdpdGhSZXNvbHZlQ2EKIHsKICAgICBBU1NFUlQoIW1fdmFsdWVP
ckV4Y2VwdGlvbik7CiAKLSAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBWYWx1ZU9yRXhjZXB0aW9u
IHsgdHJ1ZSB9OworICAgIG1fdmFsdWVPckV4Y2VwdGlvbiA9IEV4Y2VwdGlvbk9yPHZvaWQ+IHsg
fTsKICAgICBmb3IgKGF1dG8mIGRlZmVycmVkUHJvbWlzZSA6IG1fZGVmZXJyZWRQcm9taXNlcykK
ICAgICAgICAgZGVmZXJyZWRQcm9taXNlLT50ZW1wbGF0ZSByZXNvbHZlV2l0aE5ld2x5Q3JlYXRl
ZDxJRExUeXBlPih2YWx1ZSk7CiB9CkBAIC0zMjEsOSArMzEwLDkgQEAgaW5saW5lIHZvaWQgRE9N
UHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYQogewogICAgIEFTU0VSVCghbV92YWx1ZU9yRXhjZXB0
aW9uKTsKIAotICAgIG1fdmFsdWVPckV4Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyBXVEZN
b3ZlKGV4Y2VwdGlvbikgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25Pcjx2
b2lkPiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQcm9t
aXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQotICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVj
dChXVEY6OmdldDxFeGNlcHRpb24+KCptX3ZhbHVlT3JFeGNlcHRpb24pKTsKKyAgICAgICAgZGVm
ZXJyZWRQcm9taXNlLT5yZWplY3QobV92YWx1ZU9yRXhjZXB0aW9uLT5leGNlcHRpb24oKSk7CiB9
CiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAkocmV2aXNpb24gMjIwNDczKQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDQ4LDkg
KzQ0OCw5IEBAIGF1dG8gRm9udEZhY2U6OmxvYWQoKSAtPiBMb2FkZWRQcm9taXNlJgogICAgIHJl
dHVybiBtX2xvYWRlZFByb21pc2U7CiB9CiAKLVJlZlB0cjxGb250RmFjZT4gRm9udEZhY2U6Omxv
YWRlZFByb21pc2VSZXNvbHZlKCkKK0ZvbnRGYWNlJiBGb250RmFjZTo6bG9hZGVkUHJvbWlzZVJl
c29sdmUoKQogewotICAgIHJldHVybiB0aGlzOworICAgIHJldHVybiAqdGhpczsKIH0KIAogfQpJ
bmRleDogU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgJKHJldmlzaW9uIDIyMDQ3MykKKysrIFNvdXJjZS9XZWJD
b3JlL2Nzcy9Gb250RmFjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC05NCw3ICs5NCw4IEBAIHByaXZh
dGU6CiAgICAgZXhwbGljaXQgRm9udEZhY2UoQ1NTRm9udFNlbGVjdG9yJik7CiAgICAgZXhwbGlj
aXQgRm9udEZhY2UoQ1NTRm9udEZhY2UmKTsKIAotICAgIFJlZlB0cjxGb250RmFjZT4gbG9hZGVk
UHJvbWlzZVJlc29sdmUoKTsKKyAgICAvLyBDYWxsYmFjayBmb3IgTG9hZGVkUHJvbWlzZS4KKyAg
ICBGb250RmFjZSYgbG9hZGVkUHJvbWlzZVJlc29sdmUoKTsKIAogICAgIFdlYWtQdHJGYWN0b3J5
PEZvbnRGYWNlPiBtX3dlYWtQdHJGYWN0b3J5OwogICAgIFJlZjxDU1NGb250RmFjZT4gbV9iYWNr
aW5nOwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuY3BwCShyZXZpc2lvbiAyMjA0NzMp
CisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yMjQsOSArMjI0LDkgQEAgdm9pZCBGb250RmFjZVNldDo6ZmFjZUZpbmlzaGVkKENTU0ZvbnRG
YQogICAgIG1fcGVuZGluZ1Byb21pc2VzLnJlbW92ZShpdGVyYXRvcik7CiB9CiAKLVJlZlB0cjxG
b250RmFjZVNldD4gRm9udEZhY2VTZXQ6OnJlYWR5UHJvbWlzZVJlc29sdmUoKQorRm9udEZhY2VT
ZXQmIEZvbnRGYWNlU2V0OjpyZWFkeVByb21pc2VSZXNvbHZlKCkKIHsKLSAgICByZXR1cm4gdGhp
czsKKyAgICByZXR1cm4gKnRoaXM7CiB9CiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9G
b250RmFjZVNldC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNl
dC5oCShyZXZpc2lvbiAyMjA0NzMpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2VTZXQu
aAkod29ya2luZyBjb3B5KQpAQCAtMTA4LDcgKzEwOCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBy
ZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgcmVmKCk7IH0KICAgICB2b2lkIGRlcmVmRXZlbnRUYXJn
ZXQoKSBmaW5hbCB7IGRlcmVmKCk7IH0KIAotICAgIFJlZlB0cjxGb250RmFjZVNldD4gcmVhZHlQ
cm9taXNlUmVzb2x2ZSgpOworICAgIC8vIENhbGxiYWNrIGZvciBSZWFkeVByb21pc2UuCisgICAg
Rm9udEZhY2VTZXQmIHJlYWR5UHJvbWlzZVJlc29sdmUoKTsKIAogICAgIFJlZjxDU1NGb250RmFj
ZVNldD4gbV9iYWNraW5nOwogICAgIEhhc2hNYXA8UmVmUHRyPEZvbnRGYWNlPiwgVmVjdG9yPFJl
ZjxQZW5kaW5nUHJvbWlzZT4+PiBtX3BlbmRpbmdQcm9taXNlczsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317739</attachid>
            <date>2017-08-09 14:13:05 -0700</date>
            <delta_ts>2017-08-11 17:32:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175394-20170809141304.patch</filename>
            <type>text/plain</type>
            <size>12836</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyMDQ4MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE3LTA4LTA5ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0JpbmRpbmdzXSBTaW1wbGlmeSBET01Q
cm9taXNlUHJveHkgbm93IHRoYXQgV1RGOjpGdW5jdGlvbiBjYW4gcmV0dXJuIHJlZmVyZW5jZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTM5NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYmluZGlu
Z3MvSURMVHlwZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OklETFdyYXBwZXI6OmNvbnZlcnRUb1Bh
cmFtZXRlclR5cGUpOiBEZWxldGVkLgorCisgICAgICAgICAgICBSZW1vdmUgbm8gbG9uZ2VyIHVz
ZWQgY29udmVydFRvUGFyYW1ldGVyVHlwZS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0RPTVBy
b21pc2VQcm94eS5oOgorCisgICAgICAgICAgICAtIFJlcGxhY2UgVmFyaWFudDxWYWx1ZSwgRXhj
ZXB0aW9uPiB3aXRoIEV4Y2VwdGlvbk9yPFZhbHVlPiAvIEV4Y2VwdGlvbk9yPHZvaWQ+LgorICAg
ICAgICAgICAgLSBVcGRhdGUgUmVzb2x2ZUNhbGxiYWNrIHRvIGhhdmUgYSByZXR1cm4gdHlwZSBv
ZiBJRExUeXBlOjpQYXJhbWV0ZXJUeXBlLCByYXRoZXIgdGhhbgorICAgICAgICAgICAgICBJRExU
eXBlOjpJbXBsZW1lbnRhdGlvblR5cGUsIG5vdyB0aGF0IFdURjo6RnVuY3Rpb24gc3VwcG9ydHMg
cmVmZXJlbmNlcyBhcyB0aGUgCisgICAgICAgICAgICAgIHJldHVybiB0eXBlLiBUaGlzIGlzIG5l
ZWRlZCwgc2luY2UgdGhlIElETFR5cGU6OlBhcmFtZXRlclR5cGUgZm9yIGFuIGludGVyZmFjZSBU
CisgICAgICAgICAgICAgIGlzIFQmLgorCisgICAgICAgICogY3NzL0ZvbnRGYWNlLmNwcDoKKyAg
ICAgICAgKiBjc3MvRm9udEZhY2UuaDoKKyAgICAgICAgKiBjc3MvRm9udEZhY2VTZXQuY3BwOgor
ICAgICAgICAqIGNzcy9Gb250RmFjZVNldC5oOgorCisgICAgICAgICAgICBVcGRhdGUgcmVzb2x2
ZSBjYWxsYmFja3MgdG8gcmV0dXJuIGEgcmVmZXJlbmNlIHJhdGhlciB0aGFuIGEgUmVmUHRyLCBt
YXRjaGluZworICAgICAgICAgICAgdGhlIG5ldyBzaWduYXR1cmUgcmVxdWlyZW1lbnQuCisKIDIw
MTctMDgtMDkgIERhdmUgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgW1JlcGFp
bnQgZnJvbSBMYXlvdXQgUmVtb3ZhbF0gTW92ZSBsYXllciByZXBhaW50IHJlY3RzIGludG8gYSBt
YXAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL0lETFR5cGVzLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvSURMVHlwZXMuaAkocmV2aXNpb24gMjIwNDgwKQor
KysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvSURMVHlwZXMuaAkod29ya2luZyBjb3B5KQpAQCAt
MTcwLDggKzE3MCw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBJRExXcmFwcGVyIDoK
ICAgICBzdGF0aWMgaW5saW5lIHN0ZDo6bnVsbHB0cl90IG51bGxWYWx1ZSgpIHsgcmV0dXJuIG51
bGxwdHI7IH0KICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBzdGF0aWMgaW5saW5lIGJvb2wgaXNO
dWxsVmFsdWUoVSYmIHZhbHVlKSB7IHJldHVybiAhdmFsdWU7IH0KICAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBVPiBzdGF0aWMgaW5saW5lIFUmJiBleHRyYWN0VmFsdWVGcm9tTnVsbGFibGUoVSYmIHZh
bHVlKSB7IHJldHVybiBzdGQ6OmZvcndhcmQ8VT4odmFsdWUpOyB9Ci0KLSAgICBzdGF0aWMgUGFy
YW1ldGVyVHlwZSBjb252ZXJ0VG9QYXJhbWV0ZXJUeXBlKFJlZlB0cjxUPiB2YWx1ZSkgeyBBU1NF
UlQodmFsdWUpOyByZXR1cm4gKnZhbHVlLmdldCgpOyB9CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPiBzdHJ1Y3QgSURMSW50ZXJmYWNlIDogSURMV3JhcHBlcjxUPiB7IH07CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01Qcm9taXNlUHJveHkuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01Qcm9taXNlUHJveHkuaAkocmV2aXNpb24gMjIw
NDgwKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRE9NUHJvbWlzZVByb3h5LmgJKHdv
cmtpbmcgY29weSkKQEAgLTI1LDEyICsyNSwxMSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1
ZGUgIkV4Y2VwdGlvbi5oIgorI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSlNE
T01HbG9iYWxPYmplY3QuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2lu
Y2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgotI2luY2x1
ZGUgPHd0Zi9WYXJpYW50Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CkBAIC0zOSw3ICszOCw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIElETFR5cGU+CiBj
bGFzcyBET01Qcm9taXNlUHJveHkgewogcHVibGljOgogICAgIHVzaW5nIFZhbHVlID0gdHlwZW5h
bWUgSURMVHlwZTo6U3RvcmFnZVR5cGU7Ci0gICAgdXNpbmcgVmFsdWVPckV4Y2VwdGlvbiA9IFZh
cmlhbnQ8VmFsdWUsIEV4Y2VwdGlvbj47CiAKICAgICBET01Qcm9taXNlUHJveHkoKSA9IGRlZmF1
bHQ7CiAgICAgfkRPTVByb21pc2VQcm94eSgpID0gZGVmYXVsdDsKQEAgLTU1LDE2ICs1MywxMyBA
QCBwdWJsaWM6CiAgICAgdm9pZCByZWplY3QoRXhjZXB0aW9uKTsKICAgICAKIHByaXZhdGU6Ci0g
ICAgc3RkOjpvcHRpb25hbDxWYWx1ZU9yRXhjZXB0aW9uPiBtX3ZhbHVlT3JFeGNlcHRpb247Cisg
ICAgc3RkOjpvcHRpb25hbDxFeGNlcHRpb25PcjxWYWx1ZT4+IG1fdmFsdWVPckV4Y2VwdGlvbjsK
ICAgICBWZWN0b3I8UmVmPERlZmVycmVkUHJvbWlzZT4sIDE+IG1fZGVmZXJyZWRQcm9taXNlczsK
IH07CiAKIHRlbXBsYXRlPD4KIGNsYXNzIERPTVByb21pc2VQcm94eTxJRExWb2lkPiB7CiBwdWJs
aWM6Ci0gICAgdXNpbmcgVmFsdWUgPSBib29sOwotICAgIHVzaW5nIFZhbHVlT3JFeGNlcHRpb24g
PSBWYXJpYW50PFZhbHVlLCBFeGNlcHRpb24+OwotCiAgICAgRE9NUHJvbWlzZVByb3h5KCkgPSBk
ZWZhdWx0OwogICAgIH5ET01Qcm9taXNlUHJveHkoKSA9IGRlZmF1bHQ7CiAKQEAgLTc4LDcgKzcz
LDcgQEAgcHVibGljOgogICAgIHZvaWQgcmVqZWN0KEV4Y2VwdGlvbik7CiAKIHByaXZhdGU6Ci0g
ICAgc3RkOjpvcHRpb25hbDxWYWx1ZU9yRXhjZXB0aW9uPiBtX3ZhbHVlT3JFeGNlcHRpb247Cisg
ICAgc3RkOjpvcHRpb25hbDxFeGNlcHRpb25Pcjx2b2lkPj4gbV92YWx1ZU9yRXhjZXB0aW9uOwog
ICAgIFZlY3RvcjxSZWY8RGVmZXJyZWRQcm9taXNlPiwgMT4gbV9kZWZlcnJlZFByb21pc2VzOwog
fTsKIApAQCAtODksMTUgKzg0LDEwIEBAIHByaXZhdGU6CiB0ZW1wbGF0ZTx0eXBlbmFtZSBJRExU
eXBlPgogY2xhc3MgRE9NUHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYWxsYmFjayB7CiBwdWJsaWM6
Ci0gICAgdXNpbmcgVmFsdWUgPSBib29sOwotICAgIHVzaW5nIFZhbHVlT3JFeGNlcHRpb24gPSBW
YXJpYW50PFZhbHVlLCBFeGNlcHRpb24+OwotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCByZXR1
cm4gYSBJRExUeXBlOjpQYXJhbWV0ZXJUeXBlLCBidXQgV1RGOjpGdW5jdGlvbiBkb2VzCi0gICAg
Ly8gICAgICAgIG5vdCBzdXBwb3J0IHJldHVybmluZyByZWZlcmVuY2VzIC8gbm9uLWRlZmF1bHQg
aW5pdGlhbGl6YWJsZSB0eXBlcy4KLSAgICAvLyAgICAgICAgU2VlIGh0dHBzOi8vd2Via2l0Lm9y
Zy9iLzE3NTI0NC4KLSAgICB1c2luZyBSZXNvbHZlQ2FsbGJhY2sgPSBXVEY6OkZ1bmN0aW9uPHR5
cGVuYW1lIElETFR5cGU6OkltcGxlbWVudGF0aW9uVHlwZSAoKT47CisgICAgdXNpbmcgUmVzb2x2
ZUNhbGxiYWNrID0gV1RGOjpGdW5jdGlvbjx0eXBlbmFtZSBJRExUeXBlOjpQYXJhbWV0ZXJUeXBl
ICgpPjsKIAogICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBDbGFzcywgdHlwZW5hbWUgQmFzZUNsYXNz
PgotICAgIERPTVByb21pc2VQcm94eVdpdGhSZXNvbHZlQ2FsbGJhY2soQ2xhc3MmLCB0eXBlbmFt
ZSBJRExUeXBlOjpJbXBsZW1lbnRhdGlvblR5cGUgKEJhc2VDbGFzczo6KikoKSk7CisgICAgRE9N
UHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYWxsYmFjayhDbGFzcyYsIHR5cGVuYW1lIElETFR5cGU6
OlBhcmFtZXRlclR5cGUgKEJhc2VDbGFzczo6KikoKSk7CiAgICAgRE9NUHJvbWlzZVByb3h5V2l0
aFJlc29sdmVDYWxsYmFjayhSZXNvbHZlQ2FsbGJhY2smJik7CiAgICAgfkRPTVByb21pc2VQcm94
eVdpdGhSZXNvbHZlQ2FsbGJhY2soKSA9IGRlZmF1bHQ7CiAKQEAgLTExMyw4ICsxMDMsNyBAQCBw
dWJsaWM6CiAgICAgCiBwcml2YXRlOgogICAgIFJlc29sdmVDYWxsYmFjayBtX3Jlc29sdmVDYWxs
YmFjazsKLQotICAgIHN0ZDo6b3B0aW9uYWw8VmFsdWVPckV4Y2VwdGlvbj4gbV92YWx1ZU9yRXhj
ZXB0aW9uOworICAgIHN0ZDo6b3B0aW9uYWw8RXhjZXB0aW9uT3I8dm9pZD4+IG1fdmFsdWVPckV4
Y2VwdGlvbjsKICAgICBWZWN0b3I8UmVmPERlZmVycmVkUHJvbWlzZT4sIDE+IG1fZGVmZXJyZWRQ
cm9taXNlczsKIH07CiAKQEAgLTEzNSwxMCArMTI0LDEwIEBAIGlubGluZSBKU0M6OkpTVmFsdWUg
RE9NUHJvbWlzZVByb3h5PElETFQKICAgICAgICAgcmV0dXJuIEpTQzo6anNVbmRlZmluZWQoKTsK
IAogICAgIGlmIChtX3ZhbHVlT3JFeGNlcHRpb24pIHsKLSAgICAgICAgaWYgKFdURjo6aG9sZHNf
YWx0ZXJuYXRpdmU8VmFsdWU+KCptX3ZhbHVlT3JFeGNlcHRpb24pKQotICAgICAgICAgICAgZGVm
ZXJyZWRQcm9taXNlLT50ZW1wbGF0ZSByZXNvbHZlPElETFR5cGU+KFdURjo6Z2V0PFZhbHVlPigq
bV92YWx1ZU9yRXhjZXB0aW9uKSk7CisgICAgICAgIGlmIChtX3ZhbHVlT3JFeGNlcHRpb24tPmhh
c0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgZGVmZXJyZWRQcm9taXNlLT5yZWplY3QobV92YWx1
ZU9yRXhjZXB0aW9uLT5leGNlcHRpb24oKSk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIGRl
ZmVycmVkUHJvbWlzZS0+cmVqZWN0KFdURjo6Z2V0PEV4Y2VwdGlvbj4oKm1fdmFsdWVPckV4Y2Vw
dGlvbikpOworICAgICAgICAgICAgZGVmZXJyZWRQcm9taXNlLT50ZW1wbGF0ZSByZXNvbHZlPElE
TFR5cGU+KG1fdmFsdWVPckV4Y2VwdGlvbi0+cmV0dXJuVmFsdWUoKSk7CiAgICAgfQogCiAgICAg
YXV0byByZXN1bHQgPSBkZWZlcnJlZFByb21pc2UtPnByb21pc2UoKTsKQEAgLTE2NCw5ICsxNTMs
OSBAQCBpbmxpbmUgdm9pZCBET01Qcm9taXNlUHJveHk8SURMVHlwZT46OnJlCiB7CiAgICAgQVNT
RVJUKCFtX3ZhbHVlT3JFeGNlcHRpb24pOwogCi0gICAgbV92YWx1ZU9yRXhjZXB0aW9uID0gVmFs
dWVPckV4Y2VwdGlvbiB7IHN0ZDo6Zm9yd2FyZDx0eXBlbmFtZSBJRExUeXBlOjpQYXJhbWV0ZXJU
eXBlPih2YWx1ZSkgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25PcjxWYWx1
ZT4geyBzdGQ6OmZvcndhcmQ8dHlwZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZT4odmFsdWUp
IH07CiAgICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMp
Ci0gICAgICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxhdGUgcmVzb2x2ZTxJRExUeXBlPihXVEY6
OmdldDxWYWx1ZT4oKm1fdmFsdWVPckV4Y2VwdGlvbikpOworICAgICAgICBkZWZlcnJlZFByb21p
c2UtPnRlbXBsYXRlIHJlc29sdmU8SURMVHlwZT4obV92YWx1ZU9yRXhjZXB0aW9uLT5yZXR1cm5W
YWx1ZSgpKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgSURMVHlwZT4KQEAgLTE3NCw5ICsxNjMs
OSBAQCBpbmxpbmUgdm9pZCBET01Qcm9taXNlUHJveHk8SURMVHlwZT46OnJlCiB7CiAgICAgQVNT
RVJUKCFtX3ZhbHVlT3JFeGNlcHRpb24pOwogCi0gICAgbV92YWx1ZU9yRXhjZXB0aW9uID0gVmFs
dWVPckV4Y2VwdGlvbiB7IHN0ZDo6Zm9yd2FyZDx0eXBlbmFtZSBJRExUeXBlOjpQYXJhbWV0ZXJU
eXBlPih2YWx1ZSkgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25PcjxWYWx1
ZT4geyBzdGQ6OmZvcndhcmQ8dHlwZW5hbWUgSURMVHlwZTo6UGFyYW1ldGVyVHlwZT4odmFsdWUp
IH07CiAgICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMp
Ci0gICAgICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxhdGUgcmVzb2x2ZVdpdGhOZXdseUNyZWF0
ZWQ8SURMVHlwZT4oV1RGOjpnZXQ8VmFsdWU+KCptX3ZhbHVlT3JFeGNlcHRpb24pKTsKKyAgICAg
ICAgZGVmZXJyZWRQcm9taXNlLT50ZW1wbGF0ZSByZXNvbHZlV2l0aE5ld2x5Q3JlYXRlZDxJRExU
eXBlPihtX3ZhbHVlT3JFeGNlcHRpb24tPnJldHVyblZhbHVlKCkpOwogfQogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBJRExUeXBlPgpAQCAtMTg0LDkgKzE3Myw5IEBAIGlubGluZSB2b2lkIERPTVByb21p
c2VQcm94eTxJRExUeXBlPjo6cmUKIHsKICAgICBBU1NFUlQoIW1fdmFsdWVPckV4Y2VwdGlvbik7
CiAKLSAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBWYWx1ZU9yRXhjZXB0aW9uIHsgV1RGTW92ZShl
eGNlcHRpb24pIH07CisgICAgbV92YWx1ZU9yRXhjZXB0aW9uID0gRXhjZXB0aW9uT3I8VmFsdWU+
IHsgV1RGTW92ZShleGNlcHRpb24pIH07CiAgICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2Ug
OiBtX2RlZmVycmVkUHJvbWlzZXMpCi0gICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVqZWN0KFdU
Rjo6Z2V0PEV4Y2VwdGlvbj4oKm1fdmFsdWVPckV4Y2VwdGlvbikpOworICAgICAgICBkZWZlcnJl
ZFByb21pc2UtPnJlamVjdChtX3ZhbHVlT3JFeGNlcHRpb24tPmV4Y2VwdGlvbigpKTsKIH0KIAog
CkBAIC0yMDUsMTAgKzE5NCwxMCBAQCBpbmxpbmUgSlNDOjpKU1ZhbHVlIERPTVByb21pc2VQcm94
eTxJRExWCiAgICAgICAgIHJldHVybiBKU0M6OmpzVW5kZWZpbmVkKCk7CiAKICAgICBpZiAobV92
YWx1ZU9yRXhjZXB0aW9uKSB7Ci0gICAgICAgIGlmIChXVEY6OmhvbGRzX2FsdGVybmF0aXZlPFZh
bHVlPigqbV92YWx1ZU9yRXhjZXB0aW9uKSkKLSAgICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+
cmVzb2x2ZSgpOworICAgICAgICBpZiAobV92YWx1ZU9yRXhjZXB0aW9uLT5oYXNFeGNlcHRpb24o
KSkKKyAgICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVqZWN0KG1fdmFsdWVPckV4Y2VwdGlv
bi0+ZXhjZXB0aW9uKCkpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBkZWZlcnJlZFByb21p
c2UtPnJlamVjdChXVEY6OmdldDxFeGNlcHRpb24+KCptX3ZhbHVlT3JFeGNlcHRpb24pKTsKKyAg
ICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVzb2x2ZSgpOwogICAgIH0KIAogICAgIGF1dG8g
cmVzdWx0ID0gZGVmZXJyZWRQcm9taXNlLT5wcm9taXNlKCk7CkBAIC0yMzAsNyArMjE5LDcgQEAg
aW5saW5lIGJvb2wgRE9NUHJvbWlzZVByb3h5PElETFZvaWQ+OjppcwogaW5saW5lIHZvaWQgRE9N
UHJvbWlzZVByb3h5PElETFZvaWQ+OjpyZXNvbHZlKCkKIHsKICAgICBBU1NFUlQoIW1fdmFsdWVP
ckV4Y2VwdGlvbik7Ci0gICAgbV92YWx1ZU9yRXhjZXB0aW9uID0gVmFsdWVPckV4Y2VwdGlvbiB7
IHRydWUgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25Pcjx2b2lkPiB7IH07
CiAgICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMpCiAg
ICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVzb2x2ZSgpOwogfQpAQCAtMjM4LDE2ICsyMjcsMTYg
QEAgaW5saW5lIHZvaWQgRE9NUHJvbWlzZVByb3h5PElETFZvaWQ+OjpyZQogaW5saW5lIHZvaWQg
RE9NUHJvbWlzZVByb3h5PElETFZvaWQ+OjpyZWplY3QoRXhjZXB0aW9uIGV4Y2VwdGlvbikKIHsK
ICAgICBBU1NFUlQoIW1fdmFsdWVPckV4Y2VwdGlvbik7Ci0gICAgbV92YWx1ZU9yRXhjZXB0aW9u
ID0gVmFsdWVPckV4Y2VwdGlvbiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OworICAgIG1fdmFsdWVP
ckV4Y2VwdGlvbiA9IEV4Y2VwdGlvbk9yPHZvaWQ+IHsgV1RGTW92ZShleGNlcHRpb24pIH07CiAg
ICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMpCi0gICAg
ICAgIGRlZmVycmVkUHJvbWlzZS0+cmVqZWN0KFdURjo6Z2V0PEV4Y2VwdGlvbj4oKm1fdmFsdWVP
ckV4Y2VwdGlvbikpOworICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChtX3ZhbHVlT3JF
eGNlcHRpb24tPmV4Y2VwdGlvbigpKTsKIH0KIAogLy8gTUFSSzogLSBET01Qcm9taXNlUHJveHlX
aXRoUmVzb2x2ZUNhbGxiYWNrPElETFR5cGU+IGltcGxlbWVudGF0aW9uCiAKIHRlbXBsYXRlPHR5
cGVuYW1lIElETFR5cGU+CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ2xhc3MsIHR5cGVuYW1lIEJhc2VD
bGFzcz4KLWlubGluZSBET01Qcm9taXNlUHJveHlXaXRoUmVzb2x2ZUNhbGxiYWNrPElETFR5cGU+
OjpET01Qcm9taXNlUHJveHlXaXRoUmVzb2x2ZUNhbGxiYWNrKENsYXNzJiBvYmplY3QsIHR5cGVu
YW1lIElETFR5cGU6OkltcGxlbWVudGF0aW9uVHlwZSAoQmFzZUNsYXNzOjoqZnVuY3Rpb24pKCkp
CitpbmxpbmUgRE9NUHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYWxsYmFjazxJRExUeXBlPjo6RE9N
UHJvbWlzZVByb3h5V2l0aFJlc29sdmVDYWxsYmFjayhDbGFzcyYgb2JqZWN0LCB0eXBlbmFtZSBJ
RExUeXBlOjpQYXJhbWV0ZXJUeXBlIChCYXNlQ2xhc3M6OipmdW5jdGlvbikoKSkKICAgICA6IG1f
cmVzb2x2ZUNhbGxiYWNrKHN0ZDo6YmluZChmdW5jdGlvbiwgJm9iamVjdCkpCiB7CiB9CkBAIC0y
NzIsMTAgKzI2MSwxMCBAQCBpbmxpbmUgSlNDOjpKU1ZhbHVlIERPTVByb21pc2VQcm94eVdpdGhS
CiAgICAgICAgIHJldHVybiBKU0M6OmpzVW5kZWZpbmVkKCk7CiAKICAgICBpZiAobV92YWx1ZU9y
RXhjZXB0aW9uKSB7Ci0gICAgICAgIGlmIChXVEY6OmhvbGRzX2FsdGVybmF0aXZlPFZhbHVlPigq
bV92YWx1ZU9yRXhjZXB0aW9uKSkKLSAgICAgICAgICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxh
dGUgcmVzb2x2ZTxJRExUeXBlPihJRExUeXBlOjpjb252ZXJ0VG9QYXJhbWV0ZXJUeXBlKG1fcmVz
b2x2ZUNhbGxiYWNrKCkpKTsKKyAgICAgICAgaWYgKG1fdmFsdWVPckV4Y2VwdGlvbi0+aGFzRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChtX3ZhbHVlT3JF
eGNlcHRpb24tPmV4Y2VwdGlvbigpKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgZGVmZXJy
ZWRQcm9taXNlLT5yZWplY3QoV1RGOjpnZXQ8RXhjZXB0aW9uPigqbV92YWx1ZU9yRXhjZXB0aW9u
KSk7CisgICAgICAgICAgICBkZWZlcnJlZFByb21pc2UtPnRlbXBsYXRlIHJlc29sdmU8SURMVHlw
ZT4obV9yZXNvbHZlQ2FsbGJhY2soKSk7CiAgICAgfQogCiAgICAgYXV0byByZXN1bHQgPSBkZWZl
cnJlZFByb21pc2UtPnByb21pc2UoKTsKQEAgLTMwMSw3ICsyOTAsNyBAQCBpbmxpbmUgdm9pZCBE
T01Qcm9taXNlUHJveHlXaXRoUmVzb2x2ZUNhCiB7CiAgICAgQVNTRVJUKCFtX3ZhbHVlT3JFeGNl
cHRpb24pOwogCi0gICAgbV92YWx1ZU9yRXhjZXB0aW9uID0gVmFsdWVPckV4Y2VwdGlvbiB7IHRy
dWUgfTsKKyAgICBtX3ZhbHVlT3JFeGNlcHRpb24gPSBFeGNlcHRpb25Pcjx2b2lkPiB7IH07CiAg
ICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMpCiAgICAg
ICAgIGRlZmVycmVkUHJvbWlzZS0+dGVtcGxhdGUgcmVzb2x2ZTxJRExUeXBlPih2YWx1ZSk7CiB9
CkBAIC0zMTEsNyArMzAwLDcgQEAgaW5saW5lIHZvaWQgRE9NUHJvbWlzZVByb3h5V2l0aFJlc29s
dmVDYQogewogICAgIEFTU0VSVCghbV92YWx1ZU9yRXhjZXB0aW9uKTsKIAotICAgIG1fdmFsdWVP
ckV4Y2VwdGlvbiA9IFZhbHVlT3JFeGNlcHRpb24geyB0cnVlIH07CisgICAgbV92YWx1ZU9yRXhj
ZXB0aW9uID0gRXhjZXB0aW9uT3I8dm9pZD4geyB9OwogICAgIGZvciAoYXV0byYgZGVmZXJyZWRQ
cm9taXNlIDogbV9kZWZlcnJlZFByb21pc2VzKQogICAgICAgICBkZWZlcnJlZFByb21pc2UtPnRl
bXBsYXRlIHJlc29sdmVXaXRoTmV3bHlDcmVhdGVkPElETFR5cGU+KHZhbHVlKTsKIH0KQEAgLTMy
MSw5ICszMTAsOSBAQCBpbmxpbmUgdm9pZCBET01Qcm9taXNlUHJveHlXaXRoUmVzb2x2ZUNhCiB7
CiAgICAgQVNTRVJUKCFtX3ZhbHVlT3JFeGNlcHRpb24pOwogCi0gICAgbV92YWx1ZU9yRXhjZXB0
aW9uID0gVmFsdWVPckV4Y2VwdGlvbiB7IFdURk1vdmUoZXhjZXB0aW9uKSB9OworICAgIG1fdmFs
dWVPckV4Y2VwdGlvbiA9IEV4Y2VwdGlvbk9yPHZvaWQ+IHsgV1RGTW92ZShleGNlcHRpb24pIH07
CiAgICAgZm9yIChhdXRvJiBkZWZlcnJlZFByb21pc2UgOiBtX2RlZmVycmVkUHJvbWlzZXMpCi0g
ICAgICAgIGRlZmVycmVkUHJvbWlzZS0+cmVqZWN0KFdURjo6Z2V0PEV4Y2VwdGlvbj4oKm1fdmFs
dWVPckV4Y2VwdGlvbikpOworICAgICAgICBkZWZlcnJlZFByb21pc2UtPnJlamVjdChtX3ZhbHVl
T3JFeGNlcHRpb24tPmV4Y2VwdGlvbigpKTsKIH0KIAogfQpJbmRleDogU291cmNlL1dlYkNvcmUv
Y3NzL0ZvbnRGYWNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZh
Y2UuY3BwCShyZXZpc2lvbiAyMjA0ODApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2Uu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NDgsOSArNDQ4LDkgQEAgYXV0byBGb250RmFjZTo6bG9h
ZCgpIC0+IExvYWRlZFByb21pc2UmCiAgICAgcmV0dXJuIG1fbG9hZGVkUHJvbWlzZTsKIH0KIAot
UmVmUHRyPEZvbnRGYWNlPiBGb250RmFjZTo6bG9hZGVkUHJvbWlzZVJlc29sdmUoKQorRm9udEZh
Y2UmIEZvbnRGYWNlOjpsb2FkZWRQcm9taXNlUmVzb2x2ZSgpCiB7Ci0gICAgcmV0dXJuIHRoaXM7
CisgICAgcmV0dXJuICp0aGlzOwogfQogCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvRm9u
dEZhY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhY2UuaAkocmV2
aXNpb24gMjIwNDgwKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTk0LDcgKzk0LDggQEAgcHJpdmF0ZToKICAgICBleHBsaWNpdCBGb250RmFjZShD
U1NGb250U2VsZWN0b3ImKTsKICAgICBleHBsaWNpdCBGb250RmFjZShDU1NGb250RmFjZSYpOwog
Ci0gICAgUmVmUHRyPEZvbnRGYWNlPiBsb2FkZWRQcm9taXNlUmVzb2x2ZSgpOworICAgIC8vIENh
bGxiYWNrIGZvciBMb2FkZWRQcm9taXNlLgorICAgIEZvbnRGYWNlJiBsb2FkZWRQcm9taXNlUmVz
b2x2ZSgpOwogCiAgICAgV2Vha1B0ckZhY3Rvcnk8Rm9udEZhY2U+IG1fd2Vha1B0ckZhY3Rvcnk7
CiAgICAgUmVmPENTU0ZvbnRGYWNlPiBtX2JhY2tpbmc7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9j
c3MvRm9udEZhY2VTZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9Gb250
RmFjZVNldC5jcHAJKHJldmlzaW9uIDIyMDQ4MCkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9Gb250
RmFjZVNldC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyNCw5ICsyMjQsOSBAQCB2b2lkIEZvbnRG
YWNlU2V0OjpmYWNlRmluaXNoZWQoQ1NTRm9udEZhCiAgICAgbV9wZW5kaW5nUHJvbWlzZXMucmVt
b3ZlKGl0ZXJhdG9yKTsKIH0KIAotUmVmUHRyPEZvbnRGYWNlU2V0PiBGb250RmFjZVNldDo6cmVh
ZHlQcm9taXNlUmVzb2x2ZSgpCitGb250RmFjZVNldCYgRm9udEZhY2VTZXQ6OnJlYWR5UHJvbWlz
ZVJlc29sdmUoKQogewotICAgIHJldHVybiB0aGlzOworICAgIHJldHVybiAqdGhpczsKIH0KIAog
fQpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYWNlU2V0LmgJKHJldmlzaW9uIDIyMDQ4MCkKKysrIFNv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFjZVNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDgsNyAr
MTA4LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZkV2ZW50VGFyZ2V0KCkgZmluYWwgeyByZWYo
KTsgfQogICAgIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIGZpbmFsIHsgZGVyZWYoKTsgfQogCi0g
ICAgUmVmUHRyPEZvbnRGYWNlU2V0PiByZWFkeVByb21pc2VSZXNvbHZlKCk7CisgICAgLy8gQ2Fs
bGJhY2sgZm9yIFJlYWR5UHJvbWlzZS4KKyAgICBGb250RmFjZVNldCYgcmVhZHlQcm9taXNlUmVz
b2x2ZSgpOwogCiAgICAgUmVmPENTU0ZvbnRGYWNlU2V0PiBtX2JhY2tpbmc7CiAgICAgSGFzaE1h
cDxSZWZQdHI8Rm9udEZhY2U+LCBWZWN0b3I8UmVmPFBlbmRpbmdQcm9taXNlPj4+IG1fcGVuZGlu
Z1Byb21pc2VzOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>