<?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>181413</bug_id>
          
          <creation_ts>2018-01-08 16:17:36 -0800</creation_ts>
          <short_desc>Make ObjC SPI equivalent to WKPageNavigationClient.decidePolicyForPluginLoad</short_desc>
          <delta_ts>2018-08-20 16:55:32 -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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>jeffm</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1386979</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-01-08 16:17:36 -0800</bug_when>
    <thetext>Make ObjC SPI equivalent to WKPageNavigationClient.decidePolicyForPluginLoad</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1386980</commentid>
    <comment_count>1</comment_count>
      <attachid>330751</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-01-08 16:20:36 -0800</bug_when>
    <thetext>Created attachment 330751
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387074</commentid>
    <comment_count>2</comment_count>
      <attachid>330751</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-01-08 19:15:56 -0800</bug_when>
    <thetext>Comment on attachment 330751
Patch

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

&gt; Source/WebKit/UIProcess/Cocoa/NavigationState.mm:316
&gt; +static WebKit::PluginModuleLoadPolicy toPluginModuleLoadPolicy(_WKPluginModuleLoadPolicy policy)

Nit - I think https://webkit.org/code-style-guidelines/#names-verb recommends against prefixing with &quot;to&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387078</commentid>
    <comment_count>3</comment_count>
      <attachid>330783</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-01-08 19:24:30 -0800</bug_when>
    <thetext>Created attachment 330783
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387080</commentid>
    <comment_count>4</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-01-08 19:26:30 -0800</bug_when>
    <thetext>http://trac.webkit.org/r226609</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387083</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-01-08 19:29:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/36367364&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451842</commentid>
    <comment_count>6</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2018-08-20 16:55:32 -0700</bug_when>
    <thetext>*** Bug 181073 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330751</attachid>
            <date>2018-01-08 16:20:36 -0800</date>
            <delta_ts>2018-01-08 19:24:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181413-20180108162036.patch</filename>
            <type>text/plain</type>
            <size>14729</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjY1OTgpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDE4LTAxLTA4ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBPYmpDIFNQ
SSBlcXVpdmFsZW50IHRvIFdLUGFnZU5hdmlnYXRpb25DbGllbnQuZGVjaWRlUG9saWN5Rm9yUGx1
Z2luTG9hZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTgxNDEzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNjE2OTAwNT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJTmF2
aWdhdGlvbkNsaWVudC5oOgorICAgICAgICAoQVBJOjpOYXZpZ2F0aW9uQ2xpZW50OjpkZWNpZGVQ
b2xpY3lGb3JQbHVnaW5Mb2FkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNw
cDoKKyAgICAgICAgKFdLUGFnZVNldFBhZ2VOYXZpZ2F0aW9uQ2xpZW50KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkRlbGVnYXRlUHJpdmF0ZS5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nl
c3MvQ29jb2EvTmF2aWdhdGlvblN0YXRlLm1tOgorICAgICAgICAoV2ViS2l0OjpOYXZpZ2F0aW9u
U3RhdGU6OnNldE5hdmlnYXRpb25EZWxlZ2F0ZSk6CisgICAgICAgIChXZWJLaXQ6OnRvUGx1Z2lu
TW9kdWxlTG9hZFBvbGljeSk6CisgICAgICAgIChXZWJLaXQ6OnRvV0tQbHVnaW5Nb2R1bGVMb2Fk
UG9saWN5KToKKyAgICAgICAgKFdlYktpdDo6TmF2aWdhdGlvblN0YXRlOjpOYXZpZ2F0aW9uQ2xp
ZW50OjpkZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmaW5kUGx1Z2lu
KToKKwogMjAxOC0wMS0wOCAgSm9obiBXaWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBTdG9yYWdlIEFjY2VzcyBBUEk6IFJlbW92ZSBhY2Nlc3MgZm9yIGFsbCBmcmFtZXMg
dW5kZXIgYSBwYWdlIHdoZW4gdGhlIHBhZ2UgaXMgY2xvc2VkCkluZGV4OiBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHJldmlzaW9uIDIyNjM2OSkKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwNTQs
NyArMjA1NCw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpmaW5kUGx1Z2luKGNvbnN0IFN0cmkKICAg
ICBwbHVnaW5Mb2FkUG9saWN5ID0gUGx1Z2luSW5mb1N0b3JlOjpkZWZhdWx0TG9hZFBvbGljeUZv
clBsdWdpbihwbHVnaW4pOwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgUmVmUHRyPEFQSTo6
RGljdGlvbmFyeT4gcGx1Z2luSW5mb3JtYXRpb24gPSBjcmVhdGVQbHVnaW5JbmZvcm1hdGlvbkRp
Y3Rpb25hcnkocGx1Z2luLCBmcmFtZVVSTFN0cmluZywgU3RyaW5nKCksIHBhZ2VVUkxTdHJpbmcs
IFN0cmluZygpLCBTdHJpbmcoKSk7CisgICAgYXV0byBwbHVnaW5JbmZvcm1hdGlvbiA9IGNyZWF0
ZVBsdWdpbkluZm9ybWF0aW9uRGljdGlvbmFyeShwbHVnaW4sIGZyYW1lVVJMU3RyaW5nLCBTdHJp
bmcoKSwgcGFnZVVSTFN0cmluZywgU3RyaW5nKCksIFN0cmluZygpKTsKICAgICBpZiAobV9uYXZp
Z2F0aW9uQ2xpZW50KQogICAgICAgICBwbHVnaW5Mb2FkUG9saWN5ID0gbV9uYXZpZ2F0aW9uQ2xp
ZW50LT5kZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKCp0aGlzLCBzdGF0aWNfY2FzdDxQbHVnaW5N
b2R1bGVMb2FkUG9saWN5PihwbHVnaW5Mb2FkUG9saWN5KSwgcGx1Z2luSW5mb3JtYXRpb24uZ2V0
KCksIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pOwogICAgIGVsc2UKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElMb2FkZXJDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTG9hZGVyQ2xpZW50LmgJKHJldmlzaW9uIDIyNjM2
OSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElMb2FkZXJDbGllbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtMTAzLDcgKzEwMyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
bmF2aWdhdGlvbkdlc3R1cmVEaWRFbmQoV2ViS2l0OjpXZWJQYWdlUHJveHkmLCBib29sIHdpbGxO
YXZpZ2F0ZSwgV2ViS2l0OjpXZWJCYWNrRm9yd2FyZExpc3RJdGVtJikgeyB9CiAKICNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICB2aXJ0dWFsIFdlYktpdDo6UGx1Z2luTW9kdWxl
TG9hZFBvbGljeSBwbHVnaW5Mb2FkUG9saWN5KFdlYktpdDo6V2ViUGFnZVByb3h5JiwgV2ViS2l0
OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBBUEk6OkRp
Y3Rpb25hcnkqLCBXVEY6OlN0cmluZyYgLyogdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbiAqLykg
eyByZXR1cm4gY3VycmVudFBsdWdpbkxvYWRQb2xpY3k7IH0KKyAgICB2aXJ0dWFsIFdlYktpdDo6
UGx1Z2luTW9kdWxlTG9hZFBvbGljeSBwbHVnaW5Mb2FkUG9saWN5KFdlYktpdDo6V2ViUGFnZVBy
b3h5JiwgV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9s
aWN5LCBBUEk6OkRpY3Rpb25hcnkmLCBXVEY6OlN0cmluZyYgLyogdW5hdmFpbGFiaWxpdHlEZXNj
cmlwdGlvbiAqLykgeyByZXR1cm4gY3VycmVudFBsdWdpbkxvYWRQb2xpY3k7IH0KICAgICB2aXJ0
dWFsIHZvaWQgZGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdpbihXZWJLaXQ6OldlYlBhZ2VQcm94eSYs
IEFQSTo6RGljdGlvbmFyeSYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaWRCbG9ja0luc2VjdXJl
UGx1Z2luVmVyc2lvbihXZWJLaXQ6OldlYlBhZ2VQcm94eSYsIEFQSTo6RGljdGlvbmFyeSopIHsg
fQogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQpJbmRleDogU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0FQSU5hdmlnYXRpb25DbGllbnQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkNsaWVudC5oCShyZXZpc2lv
biAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkNs
aWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTMsNyArMTEzLDcgQEAgcHVibGljOgogICAgIAog
I2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIHZpcnR1YWwgYm9vbCBkaWRGYWls
VG9Jbml0aWFsaXplUGx1Z0luKFdlYktpdDo6V2ViUGFnZVByb3h5JiwgQVBJOjpEaWN0aW9uYXJ5
JikgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIFdlYktpdDo6UGx1Z2luTW9kdWxlTG9h
ZFBvbGljeSBkZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKFdlYktpdDo6V2ViUGFnZVByb3h5Jiwg
V2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBE
aWN0aW9uYXJ5KiwgV1RGOjpTdHJpbmcmKQorICAgIHZpcnR1YWwgV2ViS2l0OjpQbHVnaW5Nb2R1
bGVMb2FkUG9saWN5IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQoV2ViS2l0OjpXZWJQYWdlUHJv
eHkmLCBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQb2xp
Y3ksIERpY3Rpb25hcnkmLCBXVEY6OlN0cmluZyYpCiAgICAgewogICAgICAgICByZXR1cm4gY3Vy
cmVudFBsdWdpbkxvYWRQb2xpY3k7CiAgICAgfQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0MvV0tQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1BhZ2UuY3BwCShyZXZpc2lvbiAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjc4LDE1ICsxMjc4
LDE1IEBAIHZvaWQgV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudChXS1BhZ2VSZWYKICAgICAgICAg
ICAgICAgICBtX2NsaWVudC5wbHVnaW5EaWRGYWlsKHRvQVBJKCZwYWdlKSwga1dLRXJyb3JDb2Rl
SW5zZWN1cmVQbHVnSW5WZXJzaW9uLCB0b0FQSShwbHVnaW5JbmZvcm1hdGlvbiksIG1fY2xpZW50
LmJhc2UuY2xpZW50SW5mbyk7CiAgICAgICAgIH0KIAotICAgICAgICBQbHVnaW5Nb2R1bGVMb2Fk
UG9saWN5IHBsdWdpbkxvYWRQb2xpY3koV2ViUGFnZVByb3h5JiBwYWdlLCBQbHVnaW5Nb2R1bGVM
b2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBBUEk6OkRpY3Rpb25hcnkqIHBsdWdp
bkluZm9ybWF0aW9uLCBTdHJpbmcmIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pIG92ZXJyaWRl
CisgICAgICAgIFBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgcGx1Z2luTG9hZFBvbGljeShXZWJQYWdl
UHJveHkmIHBhZ2UsIFBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQb2xp
Y3ksIEFQSTo6RGljdGlvbmFyeSYgcGx1Z2luSW5mb3JtYXRpb24sIFN0cmluZyYgdW5hdmFpbGFi
aWxpdHlEZXNjcmlwdGlvbikgb3ZlcnJpZGUKICAgICAgICAgewogICAgICAgICAgICAgV0tTdHJp
bmdSZWYgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbk91dCA9IDA7CiAgICAgICAgICAgICBQbHVn
aW5Nb2R1bGVMb2FkUG9saWN5IGxvYWRQb2xpY3kgPSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeTsK
IAogICAgICAgICAgICAgaWYgKG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZv
clVzZVdpdGhWMikKLSAgICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1bGVM
b2FkUG9saWN5KG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZvclVzZVdpdGhW
Mih0b0FQSSgmcGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVnaW5Mb2FkUG9s
aWN5KSwgdG9BUEkocGx1Z2luSW5mb3JtYXRpb24pLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8p
KTsKKyAgICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1bGVMb2FkUG9saWN5
KG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZvclVzZVdpdGhWMih0b0FQSSgm
cGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5KSwgdG9B
UEkoJnBsdWdpbkluZm9ybWF0aW9uKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CiAgICAg
ICAgICAgICBlbHNlIGlmIChtX2NsaWVudC5wbHVnaW5Mb2FkUG9saWN5KQotICAgICAgICAgICAg
ICAgIGxvYWRQb2xpY3kgPSB0b1BsdWdpbk1vZHVsZUxvYWRQb2xpY3kobV9jbGllbnQucGx1Z2lu
TG9hZFBvbGljeSh0b0FQSSgmcGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVn
aW5Mb2FkUG9saWN5KSwgdG9BUEkocGx1Z2luSW5mb3JtYXRpb24pLCAmdW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbk91dCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CisgICAgICAgICAgICAg
ICAgbG9hZFBvbGljeSA9IHRvUGx1Z2luTW9kdWxlTG9hZFBvbGljeShtX2NsaWVudC5wbHVnaW5M
b2FkUG9saWN5KHRvQVBJKCZwYWdlKSwgdG9XS1BsdWdpbkxvYWRQb2xpY3koY3VycmVudFBsdWdp
bkxvYWRQb2xpY3kpLCB0b0FQSSgmcGx1Z2luSW5mb3JtYXRpb24pLCAmdW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbk91dCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CiAKICAgICAgICAgICAg
IGlmICh1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0KSB7CiAgICAgICAgICAgICAgICAgUmVm
UHRyPEFQSTo6U3RyaW5nPiB3ZWJVbmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uID0gYWRvcHRSZWYo
dG9JbXBsKHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb25PdXQpKTsKQEAgLTIzMTMsMTMgKzIzMTMs
MTMgQEAgdm9pZCBXS1BhZ2VTZXRQYWdlTmF2aWdhdGlvbkNsaWVudChXS1BhZwogICAgICAgICAg
ICAgbV9jbGllbnQuY29udGVudFJ1bGVMaXN0Tm90aWZpY2F0aW9uKHRvQVBJKCZwYWdlKSwgdG9V
UkxSZWYodXJsLnN0cmluZygpLmltcGwoKSksIHRvQVBJKEFQSTo6QXJyYXk6OmNyZWF0ZShXVEZN
b3ZlKGFwaUxpc3RJZGVudGlmaWVycykpLnB0cigpKSwgdG9BUEkoQVBJOjpBcnJheTo6Y3JlYXRl
KFdURk1vdmUoYXBpTm90aWZpY2F0aW9ucykpLnB0cigpKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJ
bmZvKTsKICAgICAgICAgfQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAgICAg
ICBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQoV2ViUGFn
ZVByb3h5JiBwYWdlLCBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9s
aWN5LCBBUEk6OkRpY3Rpb25hcnkqIHBsdWdpbkluZm9ybWF0aW9uLCBTdHJpbmcmIHVuYXZhaWxh
YmlsaXR5RGVzY3JpcHRpb24pIG92ZXJyaWRlCisgICAgICAgIFBsdWdpbk1vZHVsZUxvYWRQb2xp
Y3kgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZChXZWJQYWdlUHJveHkmIHBhZ2UsIFBsdWdpbk1v
ZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQb2xpY3ksIEFQSTo6RGljdGlvbmFyeSYg
cGx1Z2luSW5mb3JtYXRpb24sIFN0cmluZyYgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbikgb3Zl
cnJpZGUKICAgICAgICAgewogICAgICAgICAgICAgV0tTdHJpbmdSZWYgdW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbk91dCA9IDA7CiAgICAgICAgICAgICBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGxv
YWRQb2xpY3kgPSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeTsKICAgICAgICAgICAgIAogICAgICAg
ICAgICAgaWYgKG1fY2xpZW50LmRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQpCi0gICAgICAgICAg
ICAgICAgbG9hZFBvbGljeSA9IHRvUGx1Z2luTW9kdWxlTG9hZFBvbGljeShtX2NsaWVudC5kZWNp
ZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKHRvQVBJKCZwYWdlKSwgdG9XS1BsdWdpbkxvYWRQb2xpY3ko
Y3VycmVudFBsdWdpbkxvYWRQb2xpY3kpLCB0b0FQSShwbHVnaW5JbmZvcm1hdGlvbiksICZ1bmF2
YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0LCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pKTsKKyAg
ICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1bGVMb2FkUG9saWN5KG1fY2xp
ZW50LmRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQodG9BUEkoJnBhZ2UpLCB0b1dLUGx1Z2luTG9h
ZFBvbGljeShjdXJyZW50UGx1Z2luTG9hZFBvbGljeSksIHRvQVBJKCZwbHVnaW5JbmZvcm1hdGlv
biksICZ1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0LCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pKTsKICAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKHVuYXZhaWxhYmlsaXR5RGVzY3Jp
cHRpb25PdXQpIHsKICAgICAgICAgICAgICAgICBSZWZQdHI8QVBJOjpTdHJpbmc+IHdlYlVuYXZh
aWxhYmlsaXR5RGVzY3JpcHRpb24gPSBhZG9wdFJlZih0b0ltcGwodW5hdmFpbGFiaWxpdHlEZXNj
cmlwdGlvbk91dCkpOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
TmF2aWdhdGlvbkRlbGVnYXRlUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25EZWxlZ2F0ZVByaXZhdGUuaAkocmV2aXNp
b24gMjI2MzY5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdh
dGlvbkRlbGVnYXRlUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw2ICszOSwxMyBAQCB0
eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tXZWJHTExvYWRQCiAgICAgX1dLV2ViR0xMb2Fk
UG9saWN5QWxsb3dDcmVhdGlvbiwKICAgICBfV0tXZWJHTExvYWRQb2xpY3lQZW5kaW5nQ3JlYXRp
b24sCiB9IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKKwordHlwZWRlZiBO
U19FTlVNKE5TSW50ZWdlciwgX1dLUGx1Z2luTW9kdWxlTG9hZFBvbGljeSkgeworICAgIF9XS1Bs
dWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkTm9ybWFsbHksCisgICAgX1dLUGx1Z2luTW9kdWxlTG9h
ZFBvbGljeUxvYWRVbnNhbmRib3hlZCwKKyAgICBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5Qmxv
Y2tlZEZvclNlY3VyaXR5LAorICAgIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lCbG9ja2VkRm9y
Q29tcGF0aWJpbGl0eSwKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkpOwog
I2VuZGlmCiAKIHN0YXRpYyBjb25zdCBXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3kgX1dLTmF2aWdh
dGlvbkFjdGlvblBvbGljeURvd25sb2FkID0gKFdLTmF2aWdhdGlvbkFjdGlvblBvbGljeSkoV0tO
YXZpZ2F0aW9uQWN0aW9uUG9saWN5QWxsb3cgKyAxKTsKQEAgLTkyLDYgKzk5LDcgQEAgc3RhdGlj
IGNvbnN0IFdLTmF2aWdhdGlvblJlc3BvbnNlUG9saWN5IAogLSAodm9pZClfd2ViVmlldzooV0tX
ZWJWaWV3ICopd2ViVmlldyByZXNvbHZlV2ViR0xMb2FkUG9saWN5Rm9yVVJMOihOU1VSTCAqKXVy
bCBkZWNpc2lvbkhhbmRsZXI6KHZvaWQgKF4pKF9XS1dlYkdMTG9hZFBvbGljeSkpZGVjaXNpb25I
YW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKIC0gKHZvaWQpX3dl
YlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgd2lsbEdvVG9CYWNrRm9yd2FyZExpc3RJdGVtOihX
S0JhY2tGb3J3YXJkTGlzdEl0ZW0gKilpdGVtIGluUGFnZUNhY2hlOihCT09MKWluUGFnZUNhY2hl
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKIC0gKHZvaWQpX3dlYlZpZXc6
KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdJbldpdGhJbmZvOihO
U0RpY3Rpb25hcnkgKilpbmZvIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsK
Ky0gKF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3kpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZp
ZXcgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZFdpdGhDdXJyZW50UG9saWN5OihfV0tQbHVnaW5N
b2R1bGVMb2FkUG9saWN5KXBvbGljeSBwbHVnaW5JbmZvOihOU0RpY3Rpb25hcnkgKilpbmZvIHVu
YXZhaWxhYmlsaXR5RGVzY3JpcHRpb246KE5TU3RyaW5nICopdW5hdmFpbGFiaWxpdHlEZXNjcmlw
dGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiAtICh2b2lkKV93ZWJW
aWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGJhY2tGb3J3YXJkTGlzdEl0ZW1BZGRlZDooV0tCYWNr
Rm9yd2FyZExpc3RJdGVtICopaXRlbUFkZGVkIHJlbW92ZWQ6KE5TQXJyYXk8V0tCYWNrRm9yd2Fy
ZExpc3RJdGVtICo+ICopaXRlbXNSZW1vdmVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01B
Q19UQkEpKTsKICNlbmRpZgogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9O
YXZpZ2F0aW9uU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9OYXZpZ2F0aW9uU3RhdGUuaAkocmV2aXNpb24gMjI2MzY5KQorKysgU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvTmF2aWdhdGlvblN0YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEy
MSw2ICsxMjEsNyBAQCBwcml2YXRlOgogICAgICAgICB2b2lkIHJlc29sdmVXZWJHTExvYWRQb2xp
Y3koV2ViUGFnZVByb3h5JiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgV1RGOjpGdW5jdGlvbjx2b2lk
KFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSk+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0IGZp
bmFsOwogICAgICAgICBib29sIHdpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbShXZWJQYWdlUHJv
eHkmLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVtJiwgYm9vbCBpblBhZ2VDYWNoZSwgQVBJOjpPYmpl
Y3QqKSBmaW5hbDsKICAgICAgICAgYm9vbCBkaWRGYWlsVG9Jbml0aWFsaXplUGx1Z0luKFdlYlBh
Z2VQcm94eSYsIEFQSTo6RGljdGlvbmFyeSYpIGZpbmFsOworICAgICAgICBXZWJLaXQ6OlBsdWdp
bk1vZHVsZUxvYWRQb2xpY3kgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZChXZWJLaXQ6OldlYlBh
Z2VQcm94eSYsIFdlYktpdDo6UGx1Z2luTW9kdWxlTG9hZFBvbGljeSwgQVBJOjpEaWN0aW9uYXJ5
JiwgV1RGOjpTdHJpbmcmKSBmaW5hbDsKICAgICAgICAgYm9vbCBkaWRDaGFuZ2VCYWNrRm9yd2Fy
ZExpc3QoV2ViUGFnZVByb3h5JiwgV2ViQmFja0ZvcndhcmRMaXN0SXRlbSosIGNvbnN0IFZlY3Rv
cjxSZWY8V2ViQmFja0ZvcndhcmRMaXN0SXRlbT4+JikgZmluYWw7CiAjZW5kaWYKIApAQCAtMjIx
LDYgKzIyMiw3IEBAIHByaXZhdGU6CiAgICAgICAgIGJvb2wgd2ViVmlld0JhY2tGb3J3YXJkTGlz
dEl0ZW1BZGRlZFJlbW92ZWQgOiAxOwogICAgICAgICBib29sIHdlYlZpZXdEaWRGYWlsVG9Jbml0
aWFsaXplUGx1Z0luV2l0aEluZm8gOiAxOwogICAgICAgICBib29sIHdlYlZpZXdXaWxsR29Ub0Jh
Y2tGb3J3YXJkTGlzdEl0ZW1JblBhZ2VDYWNoZSA6IDE7CisgICAgICAgIGJvb2wgd2ViVmlld0Rl
Y2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGljeVBsdWdpbkluZm9VbmF2YWls
YWJpbGl0eURlc2NyaXB0aW9uIDogMTsKICNlbmRpZgogICAgIH0gbV9uYXZpZ2F0aW9uRGVsZWdh
dGVNZXRob2RzOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0
aW9uU3RhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
TmF2aWdhdGlvblN0YXRlLm1tCShyZXZpc2lvbiAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUubW0JKHdvcmtpbmcgY29weSkKQEAgLTE4NSw2
ICsxODUsNyBAQCB2b2lkIE5hdmlnYXRpb25TdGF0ZTo6c2V0TmF2aWdhdGlvbkRlbGVnCiAgICAg
bV9uYXZpZ2F0aW9uRGVsZWdhdGVNZXRob2RzLndlYlZpZXdXaWxsR29Ub0JhY2tGb3J3YXJkTGlz
dEl0ZW1JblBhZ2VDYWNoZSA9IFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9y
KF93ZWJWaWV3OndpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbTppblBhZ2VDYWNoZTopXTsKICAg
ICBtX25hdmlnYXRpb25EZWxlZ2F0ZU1ldGhvZHMud2ViVmlld0RpZEZhaWxUb0luaXRpYWxpemVQ
bHVnSW5XaXRoSW5mbyA9IFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKF93
ZWJWaWV3OmRpZEZhaWxUb0luaXRpYWxpemVQbHVnSW5XaXRoSW5mbzopXTsKICAgICBtX25hdmln
YXRpb25EZWxlZ2F0ZU1ldGhvZHMud2ViVmlld0JhY2tGb3J3YXJkTGlzdEl0ZW1BZGRlZFJlbW92
ZWQgPSBbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihfd2ViVmlldzpiYWNr
Rm9yd2FyZExpc3RJdGVtQWRkZWQ6cmVtb3ZlZDopXTsKKyAgICBtX25hdmlnYXRpb25EZWxlZ2F0
ZU1ldGhvZHMud2ViVmlld0RlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGlj
eVBsdWdpbkluZm9VbmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uID0gW2RlbGVnYXRlIHJlc3BvbmRz
VG9TZWxlY3RvcjpAc2VsZWN0b3IoX3dlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZFdp
dGhDdXJyZW50UG9saWN5OnBsdWdpbkluZm86dW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbjopXTsK
ICNlbmRpZgogfQogCkBAIC0zMTIsNiArMzEzLDUwIEBAIGJvb2wgTmF2aWdhdGlvblN0YXRlOjpO
YXZpZ2F0aW9uQ2xpZW50OjoKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorc3RhdGljIFdlYktpdDo6
UGx1Z2luTW9kdWxlTG9hZFBvbGljeSB0b1BsdWdpbk1vZHVsZUxvYWRQb2xpY3koX1dLUGx1Z2lu
TW9kdWxlTG9hZFBvbGljeSBwb2xpY3kpCit7CisgICAgc3dpdGNoIChwb2xpY3kpIHsKKyAgICBj
YXNlIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkTm9ybWFsbHk6CisgICAgICAgIHJldHVy
biBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWROb3JtYWxseTsKKyAgICBjYXNlIF9XS1BsdWdpbk1v
ZHVsZUxvYWRQb2xpY3lMb2FkVW5zYW5kYm94ZWQ6CisgICAgICAgIHJldHVybiBXZWJLaXQ6OlBs
dWdpbk1vZHVsZUxvYWRVbnNhbmRib3hlZDsKKyAgICBjYXNlIF9XS1BsdWdpbk1vZHVsZUxvYWRQ
b2xpY3lCbG9ja2VkRm9yU2VjdXJpdHk6CisgICAgICAgIHJldHVybiBXZWJLaXQ6OlBsdWdpbk1v
ZHVsZUJsb2NrZWRGb3JTZWN1cml0eTsKKyAgICBjYXNlIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xp
Y3lCbG9ja2VkRm9yQ29tcGF0aWJpbGl0eToKKyAgICAgICAgcmV0dXJuIFdlYktpdDo6UGx1Z2lu
TW9kdWxlQmxvY2tlZEZvckNvbXBhdGliaWxpdHk7CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgIHJldHVybiBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWROb3JtYWxseTsKK30K
Kworc3RhdGljIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3kgdG9XS1BsdWdpbk1vZHVsZUxvYWRQ
b2xpY3koV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IHBvbGljeSkKK3sKKyAgICBzd2l0
Y2ggKHBvbGljeSkgeworICAgIGNhc2UgV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkTm9ybWFsbHk6
CisgICAgICAgIHJldHVybiBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5TG9hZE5vcm1hbGx5Owor
ICAgIGNhc2UgV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkVW5zYW5kYm94ZWQ6CisgICAgICAgIHJl
dHVybiBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5TG9hZFVuc2FuZGJveGVkOworICAgIGNhc2Ug
V2ViS2l0OjpQbHVnaW5Nb2R1bGVCbG9ja2VkRm9yU2VjdXJpdHk6CisgICAgICAgIHJldHVybiBf
V0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5QmxvY2tlZEZvclNlY3VyaXR5OworICAgIGNhc2UgV2Vi
S2l0OjpQbHVnaW5Nb2R1bGVCbG9ja2VkRm9yQ29tcGF0aWJpbGl0eToKKyAgICAgICAgcmV0dXJu
IF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lCbG9ja2VkRm9yQ29tcGF0aWJpbGl0eTsKKyAgICB9
CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIF9XS1BsdWdpbk1vZHVsZUxv
YWRQb2xpY3lMb2FkTm9ybWFsbHk7Cit9CisKK1dlYktpdDo6UGx1Z2luTW9kdWxlTG9hZFBvbGlj
eSBOYXZpZ2F0aW9uU3RhdGU6Ok5hdmlnYXRpb25DbGllbnQ6OmRlY2lkZVBvbGljeUZvclBsdWdp
bkxvYWQoV2ViS2l0OjpXZWJQYWdlUHJveHkmLCBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWRQb2xp
Y3kgY3VycmVudFBsdWdpbkxvYWRQb2xpY3ksIEFQSTo6RGljdGlvbmFyeSYgcGx1Z2luSW5mb3Jt
YXRpb24sIFdURjo6U3RyaW5nJiB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uKQoreworICAgIGlm
ICghbV9uYXZpZ2F0aW9uU3RhdGUubV9uYXZpZ2F0aW9uRGVsZWdhdGVNZXRob2RzLndlYlZpZXdE
ZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkV2l0aEN1cnJlbnRQb2xpY3lQbHVnaW5JbmZvVW5hdmFp
bGFiaWxpdHlEZXNjcmlwdGlvbikKKyAgICAgICAgcmV0dXJuIGN1cnJlbnRQbHVnaW5Mb2FkUG9s
aWN5OworICAgIAorICAgIGF1dG8gbmF2aWdhdGlvbkRlbGVnYXRlID0gbV9uYXZpZ2F0aW9uU3Rh
dGUubV9uYXZpZ2F0aW9uRGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKCFuYXZpZ2F0aW9uRGVsZWdh
dGUpCisgICAgICAgIHJldHVybiBjdXJyZW50UGx1Z2luTG9hZFBvbGljeTsKKworICAgIHJldHVy
biB0b1BsdWdpbk1vZHVsZUxvYWRQb2xpY3koWyhpZCA8V0tOYXZpZ2F0aW9uRGVsZWdhdGVQcml2
YXRlPiluYXZpZ2F0aW9uRGVsZWdhdGUgX3dlYlZpZXc6bV9uYXZpZ2F0aW9uU3RhdGUubV93ZWJW
aWV3IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGljeTp0b1dLUGx1Z2lu
TW9kdWxlTG9hZFBvbGljeShjdXJyZW50UGx1Z2luTG9hZFBvbGljeSkgcGx1Z2luSW5mbzp3cmFw
cGVyKHBsdWdpbkluZm9ybWF0aW9uKSB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uOnVuYXZhaWxh
YmlsaXR5RGVzY3JpcHRpb25dKTsKK30KKwogaW5saW5lIFdlYkNvcmU6OldlYkdMTG9hZFBvbGlj
eSB0b1dlYkNvcmVXZWJHTExvYWRQb2xpY3koX1dLV2ViR0xMb2FkUG9saWN5IHBvbGljeSkKIHsK
ICAgICBzd2l0Y2ggKHBvbGljeSkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330783</attachid>
            <date>2018-01-08 19:24:30 -0800</date>
            <delta_ts>2018-01-08 19:25:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181413-20180108192429.patch</filename>
            <type>text/plain</type>
            <size>14667</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjY2MDgpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDE4LTAxLTA4ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBPYmpDIFNQ
SSBlcXVpdmFsZW50IHRvIFdLUGFnZU5hdmlnYXRpb25DbGllbnQuZGVjaWRlUG9saWN5Rm9yUGx1
Z2luTG9hZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTgxNDEzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNjE2OTAwNT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBXZW5zb24gSHNpZWguCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSU5hdmln
YXRpb25DbGllbnQuaDoKKyAgICAgICAgKEFQSTo6TmF2aWdhdGlvbkNsaWVudDo6ZGVjaWRlUG9s
aWN5Rm9yUGx1Z2luTG9hZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHA6
CisgICAgICAgIChXS1BhZ2VTZXRQYWdlTmF2aWdhdGlvbkNsaWVudCk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25EZWxlZ2F0ZVByaXZhdGUuaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvQ29jb2EvTmF2aWdhdGlvblN0YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNz
L0NvY29hL05hdmlnYXRpb25TdGF0ZS5tbToKKyAgICAgICAgKFdlYktpdDo6TmF2aWdhdGlvblN0
YXRlOjpzZXROYXZpZ2F0aW9uRGVsZWdhdGUpOgorICAgICAgICAoV2ViS2l0Ojp0b1BsdWdpbk1v
ZHVsZUxvYWRQb2xpY3kpOgorICAgICAgICAoV2ViS2l0Ojp0b1dLUGx1Z2luTW9kdWxlTG9hZFBv
bGljeSk6CisgICAgICAgIChXZWJLaXQ6Ok5hdmlnYXRpb25TdGF0ZTo6TmF2aWdhdGlvbkNsaWVu
dDo6ZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZmluZFBsdWdpbik6
CisKIDIwMTgtMDEtMDggIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgaU9TIGJ1aWxkIGZpeCBhdHRlbXB0IGFmdGVyIHIyMjY2MDIuCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHJldmlzaW9uIDIyNjM2OSkKKysrIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIw
NTQsNyArMjA1NCw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpmaW5kUGx1Z2luKGNvbnN0IFN0cmkK
ICAgICBwbHVnaW5Mb2FkUG9saWN5ID0gUGx1Z2luSW5mb1N0b3JlOjpkZWZhdWx0TG9hZFBvbGlj
eUZvclBsdWdpbihwbHVnaW4pOwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgUmVmUHRyPEFQ
STo6RGljdGlvbmFyeT4gcGx1Z2luSW5mb3JtYXRpb24gPSBjcmVhdGVQbHVnaW5JbmZvcm1hdGlv
bkRpY3Rpb25hcnkocGx1Z2luLCBmcmFtZVVSTFN0cmluZywgU3RyaW5nKCksIHBhZ2VVUkxTdHJp
bmcsIFN0cmluZygpLCBTdHJpbmcoKSk7CisgICAgYXV0byBwbHVnaW5JbmZvcm1hdGlvbiA9IGNy
ZWF0ZVBsdWdpbkluZm9ybWF0aW9uRGljdGlvbmFyeShwbHVnaW4sIGZyYW1lVVJMU3RyaW5nLCBT
dHJpbmcoKSwgcGFnZVVSTFN0cmluZywgU3RyaW5nKCksIFN0cmluZygpKTsKICAgICBpZiAobV9u
YXZpZ2F0aW9uQ2xpZW50KQogICAgICAgICBwbHVnaW5Mb2FkUG9saWN5ID0gbV9uYXZpZ2F0aW9u
Q2xpZW50LT5kZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKCp0aGlzLCBzdGF0aWNfY2FzdDxQbHVn
aW5Nb2R1bGVMb2FkUG9saWN5PihwbHVnaW5Mb2FkUG9saWN5KSwgcGx1Z2luSW5mb3JtYXRpb24u
Z2V0KCksIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pOwogICAgIGVsc2UKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElMb2FkZXJDbGllbnQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTG9hZGVyQ2xpZW50LmgJKHJldmlzaW9uIDIy
NjM2OSkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElMb2FkZXJDbGllbnQuaAko
d29ya2luZyBjb3B5KQpAQCAtMTAzLDcgKzEwMyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgbmF2aWdhdGlvbkdlc3R1cmVEaWRFbmQoV2ViS2l0OjpXZWJQYWdlUHJveHkmLCBib29sIHdp
bGxOYXZpZ2F0ZSwgV2ViS2l0OjpXZWJCYWNrRm9yd2FyZExpc3RJdGVtJikgeyB9CiAKICNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKLSAgICB2aXJ0dWFsIFdlYktpdDo6UGx1Z2luTW9k
dWxlTG9hZFBvbGljeSBwbHVnaW5Mb2FkUG9saWN5KFdlYktpdDo6V2ViUGFnZVByb3h5JiwgV2Vi
S2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBBUEk6
OkRpY3Rpb25hcnkqLCBXVEY6OlN0cmluZyYgLyogdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbiAq
LykgeyByZXR1cm4gY3VycmVudFBsdWdpbkxvYWRQb2xpY3k7IH0KKyAgICB2aXJ0dWFsIFdlYktp
dDo6UGx1Z2luTW9kdWxlTG9hZFBvbGljeSBwbHVnaW5Mb2FkUG9saWN5KFdlYktpdDo6V2ViUGFn
ZVByb3h5JiwgV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2Fk
UG9saWN5LCBBUEk6OkRpY3Rpb25hcnkmLCBXVEY6OlN0cmluZyYgLyogdW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbiAqLykgeyByZXR1cm4gY3VycmVudFBsdWdpbkxvYWRQb2xpY3k7IH0KICAgICB2
aXJ0dWFsIHZvaWQgZGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdpbihXZWJLaXQ6OldlYlBhZ2VQcm94
eSYsIEFQSTo6RGljdGlvbmFyeSYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaWRCbG9ja0luc2Vj
dXJlUGx1Z2luVmVyc2lvbihXZWJLaXQ6OldlYlBhZ2VQcm94eSYsIEFQSTo6RGljdGlvbmFyeSop
IHsgfQogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQpJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSU5hdmlnYXRpb25DbGllbnQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkNsaWVudC5oCShyZXZp
c2lvbiAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlv
bkNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTMsNyArMTEzLDcgQEAgcHVibGljOgogICAg
IAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIHZpcnR1YWwgYm9vbCBkaWRG
YWlsVG9Jbml0aWFsaXplUGx1Z0luKFdlYktpdDo6V2ViUGFnZVByb3h5JiwgQVBJOjpEaWN0aW9u
YXJ5JikgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIFdlYktpdDo6UGx1Z2luTW9kdWxl
TG9hZFBvbGljeSBkZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKFdlYktpdDo6V2ViUGFnZVByb3h5
JiwgV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5
LCBEaWN0aW9uYXJ5KiwgV1RGOjpTdHJpbmcmKQorICAgIHZpcnR1YWwgV2ViS2l0OjpQbHVnaW5N
b2R1bGVMb2FkUG9saWN5IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQoV2ViS2l0OjpXZWJQYWdl
UHJveHkmLCBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQ
b2xpY3ksIERpY3Rpb25hcnkmLCBXVEY6OlN0cmluZyYpCiAgICAgewogICAgICAgICByZXR1cm4g
Y3VycmVudFBsdWdpbkxvYWRQb2xpY3k7CiAgICAgfQpJbmRleDogU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0MvV0tQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCShyZXZpc2lvbiAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjc4LDE1ICsx
Mjc4LDE1IEBAIHZvaWQgV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudChXS1BhZ2VSZWYKICAgICAg
ICAgICAgICAgICBtX2NsaWVudC5wbHVnaW5EaWRGYWlsKHRvQVBJKCZwYWdlKSwga1dLRXJyb3JD
b2RlSW5zZWN1cmVQbHVnSW5WZXJzaW9uLCB0b0FQSShwbHVnaW5JbmZvcm1hdGlvbiksIG1fY2xp
ZW50LmJhc2UuY2xpZW50SW5mbyk7CiAgICAgICAgIH0KIAotICAgICAgICBQbHVnaW5Nb2R1bGVM
b2FkUG9saWN5IHBsdWdpbkxvYWRQb2xpY3koV2ViUGFnZVByb3h5JiBwYWdlLCBQbHVnaW5Nb2R1
bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5LCBBUEk6OkRpY3Rpb25hcnkqIHBs
dWdpbkluZm9ybWF0aW9uLCBTdHJpbmcmIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pIG92ZXJy
aWRlCisgICAgICAgIFBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgcGx1Z2luTG9hZFBvbGljeShXZWJQ
YWdlUHJveHkmIHBhZ2UsIFBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQ
b2xpY3ksIEFQSTo6RGljdGlvbmFyeSYgcGx1Z2luSW5mb3JtYXRpb24sIFN0cmluZyYgdW5hdmFp
bGFiaWxpdHlEZXNjcmlwdGlvbikgb3ZlcnJpZGUKICAgICAgICAgewogICAgICAgICAgICAgV0tT
dHJpbmdSZWYgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbk91dCA9IDA7CiAgICAgICAgICAgICBQ
bHVnaW5Nb2R1bGVMb2FkUG9saWN5IGxvYWRQb2xpY3kgPSBjdXJyZW50UGx1Z2luTG9hZFBvbGlj
eTsKIAogICAgICAgICAgICAgaWYgKG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRl
ZEZvclVzZVdpdGhWMikKLSAgICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1
bGVMb2FkUG9saWN5KG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZvclVzZVdp
dGhWMih0b0FQSSgmcGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVnaW5Mb2Fk
UG9saWN5KSwgdG9BUEkocGx1Z2luSW5mb3JtYXRpb24pLCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pKTsKKyAgICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1bGVMb2FkUG9s
aWN5KG1fY2xpZW50LnBsdWdpbkxvYWRQb2xpY3lfZGVwcmVjYXRlZEZvclVzZVdpdGhWMih0b0FQ
SSgmcGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5KSwg
dG9BUEkoJnBsdWdpbkluZm9ybWF0aW9uKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CiAg
ICAgICAgICAgICBlbHNlIGlmIChtX2NsaWVudC5wbHVnaW5Mb2FkUG9saWN5KQotICAgICAgICAg
ICAgICAgIGxvYWRQb2xpY3kgPSB0b1BsdWdpbk1vZHVsZUxvYWRQb2xpY3kobV9jbGllbnQucGx1
Z2luTG9hZFBvbGljeSh0b0FQSSgmcGFnZSksIHRvV0tQbHVnaW5Mb2FkUG9saWN5KGN1cnJlbnRQ
bHVnaW5Mb2FkUG9saWN5KSwgdG9BUEkocGx1Z2luSW5mb3JtYXRpb24pLCAmdW5hdmFpbGFiaWxp
dHlEZXNjcmlwdGlvbk91dCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CisgICAgICAgICAg
ICAgICAgbG9hZFBvbGljeSA9IHRvUGx1Z2luTW9kdWxlTG9hZFBvbGljeShtX2NsaWVudC5wbHVn
aW5Mb2FkUG9saWN5KHRvQVBJKCZwYWdlKSwgdG9XS1BsdWdpbkxvYWRQb2xpY3koY3VycmVudFBs
dWdpbkxvYWRQb2xpY3kpLCB0b0FQSSgmcGx1Z2luSW5mb3JtYXRpb24pLCAmdW5hdmFpbGFiaWxp
dHlEZXNjcmlwdGlvbk91dCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CiAKICAgICAgICAg
ICAgIGlmICh1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0KSB7CiAgICAgICAgICAgICAgICAg
UmVmUHRyPEFQSTo6U3RyaW5nPiB3ZWJVbmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uID0gYWRvcHRS
ZWYodG9JbXBsKHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb25PdXQpKTsKQEAgLTIzMTMsMTMgKzIz
MTMsMTMgQEAgdm9pZCBXS1BhZ2VTZXRQYWdlTmF2aWdhdGlvbkNsaWVudChXS1BhZwogICAgICAg
ICAgICAgbV9jbGllbnQuY29udGVudFJ1bGVMaXN0Tm90aWZpY2F0aW9uKHRvQVBJKCZwYWdlKSwg
dG9VUkxSZWYodXJsLnN0cmluZygpLmltcGwoKSksIHRvQVBJKEFQSTo6QXJyYXk6OmNyZWF0ZShX
VEZNb3ZlKGFwaUxpc3RJZGVudGlmaWVycykpLnB0cigpKSwgdG9BUEkoQVBJOjpBcnJheTo6Y3Jl
YXRlKFdURk1vdmUoYXBpTm90aWZpY2F0aW9ucykpLnB0cigpKSwgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKTsKICAgICAgICAgfQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQotICAg
ICAgICBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQoV2Vi
UGFnZVByb3h5JiBwYWdlLCBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IGN1cnJlbnRQbHVnaW5Mb2Fk
UG9saWN5LCBBUEk6OkRpY3Rpb25hcnkqIHBsdWdpbkluZm9ybWF0aW9uLCBTdHJpbmcmIHVuYXZh
aWxhYmlsaXR5RGVzY3JpcHRpb24pIG92ZXJyaWRlCisgICAgICAgIFBsdWdpbk1vZHVsZUxvYWRQ
b2xpY3kgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZChXZWJQYWdlUHJveHkmIHBhZ2UsIFBsdWdp
bk1vZHVsZUxvYWRQb2xpY3kgY3VycmVudFBsdWdpbkxvYWRQb2xpY3ksIEFQSTo6RGljdGlvbmFy
eSYgcGx1Z2luSW5mb3JtYXRpb24sIFN0cmluZyYgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbikg
b3ZlcnJpZGUKICAgICAgICAgewogICAgICAgICAgICAgV0tTdHJpbmdSZWYgdW5hdmFpbGFiaWxp
dHlEZXNjcmlwdGlvbk91dCA9IDA7CiAgICAgICAgICAgICBQbHVnaW5Nb2R1bGVMb2FkUG9saWN5
IGxvYWRQb2xpY3kgPSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeTsKICAgICAgICAgICAgIAogICAg
ICAgICAgICAgaWYgKG1fY2xpZW50LmRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQpCi0gICAgICAg
ICAgICAgICAgbG9hZFBvbGljeSA9IHRvUGx1Z2luTW9kdWxlTG9hZFBvbGljeShtX2NsaWVudC5k
ZWNpZGVQb2xpY3lGb3JQbHVnaW5Mb2FkKHRvQVBJKCZwYWdlKSwgdG9XS1BsdWdpbkxvYWRQb2xp
Y3koY3VycmVudFBsdWdpbkxvYWRQb2xpY3kpLCB0b0FQSShwbHVnaW5JbmZvcm1hdGlvbiksICZ1
bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0LCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pKTsK
KyAgICAgICAgICAgICAgICBsb2FkUG9saWN5ID0gdG9QbHVnaW5Nb2R1bGVMb2FkUG9saWN5KG1f
Y2xpZW50LmRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWQodG9BUEkoJnBhZ2UpLCB0b1dLUGx1Z2lu
TG9hZFBvbGljeShjdXJyZW50UGx1Z2luTG9hZFBvbGljeSksIHRvQVBJKCZwbHVnaW5JbmZvcm1h
dGlvbiksICZ1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uT3V0LCBtX2NsaWVudC5iYXNlLmNsaWVu
dEluZm8pKTsKICAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKHVuYXZhaWxhYmlsaXR5RGVz
Y3JpcHRpb25PdXQpIHsKICAgICAgICAgICAgICAgICBSZWZQdHI8QVBJOjpTdHJpbmc+IHdlYlVu
YXZhaWxhYmlsaXR5RGVzY3JpcHRpb24gPSBhZG9wdFJlZih0b0ltcGwodW5hdmFpbGFiaWxpdHlE
ZXNjcmlwdGlvbk91dCkpOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L1dLTmF2aWdhdGlvbkRlbGVnYXRlUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25EZWxlZ2F0ZVByaXZhdGUuaAkocmV2
aXNpb24gMjI2MzY5KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2
aWdhdGlvbkRlbGVnYXRlUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw2ICszOSwxMyBA
QCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBfV0tXZWJHTExvYWRQCiAgICAgX1dLV2ViR0xM
b2FkUG9saWN5QWxsb3dDcmVhdGlvbiwKICAgICBfV0tXZWJHTExvYWRQb2xpY3lQZW5kaW5nQ3Jl
YXRpb24sCiB9IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKKwordHlwZWRl
ZiBOU19FTlVNKE5TSW50ZWdlciwgX1dLUGx1Z2luTW9kdWxlTG9hZFBvbGljeSkgeworICAgIF9X
S1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkTm9ybWFsbHksCisgICAgX1dLUGx1Z2luTW9kdWxl
TG9hZFBvbGljeUxvYWRVbnNhbmRib3hlZCwKKyAgICBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5
QmxvY2tlZEZvclNlY3VyaXR5LAorICAgIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lCbG9ja2Vk
Rm9yQ29tcGF0aWJpbGl0eSwKK30gV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSkp
OwogI2VuZGlmCiAKIHN0YXRpYyBjb25zdCBXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3kgX1dLTmF2
aWdhdGlvbkFjdGlvblBvbGljeURvd25sb2FkID0gKFdLTmF2aWdhdGlvbkFjdGlvblBvbGljeSko
V0tOYXZpZ2F0aW9uQWN0aW9uUG9saWN5QWxsb3cgKyAxKTsKQEAgLTkyLDYgKzk5LDcgQEAgc3Rh
dGljIGNvbnN0IFdLTmF2aWdhdGlvblJlc3BvbnNlUG9saWN5IAogLSAodm9pZClfd2ViVmlldzoo
V0tXZWJWaWV3ICopd2ViVmlldyByZXNvbHZlV2ViR0xMb2FkUG9saWN5Rm9yVVJMOihOU1VSTCAq
KXVybCBkZWNpc2lvbkhhbmRsZXI6KHZvaWQgKF4pKF9XS1dlYkdMTG9hZFBvbGljeSkpZGVjaXNp
b25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKIC0gKHZvaWQp
X3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgd2lsbEdvVG9CYWNrRm9yd2FyZExpc3RJdGVt
OihXS0JhY2tGb3J3YXJkTGlzdEl0ZW0gKilpdGVtIGluUGFnZUNhY2hlOihCT09MKWluUGFnZUNh
Y2hlIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpKTsKIC0gKHZvaWQpX3dlYlZp
ZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgZGlkRmFpbFRvSW5pdGlhbGl6ZVBsdWdJbldpdGhJbmZv
OihOU0RpY3Rpb25hcnkgKilpbmZvIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEp
KTsKKy0gKF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3kpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdl
YlZpZXcgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZFdpdGhDdXJyZW50UG9saWN5OihfV0tQbHVn
aW5Nb2R1bGVMb2FkUG9saWN5KXBvbGljeSBwbHVnaW5JbmZvOihOU0RpY3Rpb25hcnkgKilpbmZv
IHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb246KE5TU3RyaW5nICopdW5hdmFpbGFiaWxpdHlEZXNj
cmlwdGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSk7CiAtICh2b2lkKV93
ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGJhY2tGb3J3YXJkTGlzdEl0ZW1BZGRlZDooV0tC
YWNrRm9yd2FyZExpc3RJdGVtICopaXRlbUFkZGVkIHJlbW92ZWQ6KE5TQXJyYXk8V0tCYWNrRm9y
d2FyZExpc3RJdGVtICo+ICopaXRlbXNSZW1vdmVkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpKTsKICNlbmRpZgogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9OYXZpZ2F0aW9uU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUuaAkocmV2aXNpb24gMjI2MzY5KQorKysgU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQ29jb2EvTmF2aWdhdGlvblN0YXRlLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEyMSw2ICsxMjEsNyBAQCBwcml2YXRlOgogICAgICAgICB2b2lkIHJlc29sdmVXZWJHTExvYWRQ
b2xpY3koV2ViUGFnZVByb3h5JiwgY29uc3QgV2ViQ29yZTo6VVJMJiwgV1RGOjpGdW5jdGlvbjx2
b2lkKFdlYkNvcmU6OldlYkdMTG9hZFBvbGljeSk+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0
IGZpbmFsOwogICAgICAgICBib29sIHdpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbShXZWJQYWdl
UHJveHkmLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVtJiwgYm9vbCBpblBhZ2VDYWNoZSwgQVBJOjpP
YmplY3QqKSBmaW5hbDsKICAgICAgICAgYm9vbCBkaWRGYWlsVG9Jbml0aWFsaXplUGx1Z0luKFdl
YlBhZ2VQcm94eSYsIEFQSTo6RGljdGlvbmFyeSYpIGZpbmFsOworICAgICAgICBXZWJLaXQ6OlBs
dWdpbk1vZHVsZUxvYWRQb2xpY3kgZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9hZChXZWJLaXQ6Oldl
YlBhZ2VQcm94eSYsIFdlYktpdDo6UGx1Z2luTW9kdWxlTG9hZFBvbGljeSwgQVBJOjpEaWN0aW9u
YXJ5JiwgV1RGOjpTdHJpbmcmKSBmaW5hbDsKICAgICAgICAgYm9vbCBkaWRDaGFuZ2VCYWNrRm9y
d2FyZExpc3QoV2ViUGFnZVByb3h5JiwgV2ViQmFja0ZvcndhcmRMaXN0SXRlbSosIGNvbnN0IFZl
Y3RvcjxSZWY8V2ViQmFja0ZvcndhcmRMaXN0SXRlbT4+JikgZmluYWw7CiAjZW5kaWYKIApAQCAt
MjIxLDYgKzIyMiw3IEBAIHByaXZhdGU6CiAgICAgICAgIGJvb2wgd2ViVmlld0JhY2tGb3J3YXJk
TGlzdEl0ZW1BZGRlZFJlbW92ZWQgOiAxOwogICAgICAgICBib29sIHdlYlZpZXdEaWRGYWlsVG9J
bml0aWFsaXplUGx1Z0luV2l0aEluZm8gOiAxOwogICAgICAgICBib29sIHdlYlZpZXdXaWxsR29U
b0JhY2tGb3J3YXJkTGlzdEl0ZW1JblBhZ2VDYWNoZSA6IDE7CisgICAgICAgIGJvb2wgd2ViVmll
d0RlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGljeVBsdWdpbkluZm9VbmF2
YWlsYWJpbGl0eURlc2NyaXB0aW9uIDogMTsKICNlbmRpZgogICAgIH0gbV9uYXZpZ2F0aW9uRGVs
ZWdhdGVNZXRob2RzOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9OYXZp
Z2F0aW9uU3RhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvTmF2aWdhdGlvblN0YXRlLm1tCShyZXZpc2lvbiAyMjYzNjkpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUubW0JKHdvcmtpbmcgY29weSkKQEAgLTE4
NSw2ICsxODUsNyBAQCB2b2lkIE5hdmlnYXRpb25TdGF0ZTo6c2V0TmF2aWdhdGlvbkRlbGVnCiAg
ICAgbV9uYXZpZ2F0aW9uRGVsZWdhdGVNZXRob2RzLndlYlZpZXdXaWxsR29Ub0JhY2tGb3J3YXJk
TGlzdEl0ZW1JblBhZ2VDYWNoZSA9IFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVj
dG9yKF93ZWJWaWV3OndpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbTppblBhZ2VDYWNoZTopXTsK
ICAgICBtX25hdmlnYXRpb25EZWxlZ2F0ZU1ldGhvZHMud2ViVmlld0RpZEZhaWxUb0luaXRpYWxp
emVQbHVnSW5XaXRoSW5mbyA9IFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9y
KF93ZWJWaWV3OmRpZEZhaWxUb0luaXRpYWxpemVQbHVnSW5XaXRoSW5mbzopXTsKICAgICBtX25h
dmlnYXRpb25EZWxlZ2F0ZU1ldGhvZHMud2ViVmlld0JhY2tGb3J3YXJkTGlzdEl0ZW1BZGRlZFJl
bW92ZWQgPSBbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihfd2ViVmlldzpi
YWNrRm9yd2FyZExpc3RJdGVtQWRkZWQ6cmVtb3ZlZDopXTsKKyAgICBtX25hdmlnYXRpb25EZWxl
Z2F0ZU1ldGhvZHMud2ViVmlld0RlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBv
bGljeVBsdWdpbkluZm9VbmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uID0gW2RlbGVnYXRlIHJlc3Bv
bmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoX3dlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yUGx1Z2luTG9h
ZFdpdGhDdXJyZW50UG9saWN5OnBsdWdpbkluZm86dW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbjop
XTsKICNlbmRpZgogfQogCkBAIC0zMTIsNiArMzEzLDUwIEBAIGJvb2wgTmF2aWdhdGlvblN0YXRl
OjpOYXZpZ2F0aW9uQ2xpZW50OjoKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorc3RhdGljIFdlYktp
dDo6UGx1Z2luTW9kdWxlTG9hZFBvbGljeSBwbHVnaW5Nb2R1bGVMb2FkUG9saWN5KF9XS1BsdWdp
bk1vZHVsZUxvYWRQb2xpY3kgcG9saWN5KQoreworICAgIHN3aXRjaCAocG9saWN5KSB7CisgICAg
Y2FzZSBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5TG9hZE5vcm1hbGx5OgorICAgICAgICByZXR1
cm4gV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkTm9ybWFsbHk7CisgICAgY2FzZSBfV0tQbHVnaW5N
b2R1bGVMb2FkUG9saWN5TG9hZFVuc2FuZGJveGVkOgorICAgICAgICByZXR1cm4gV2ViS2l0OjpQ
bHVnaW5Nb2R1bGVMb2FkVW5zYW5kYm94ZWQ7CisgICAgY2FzZSBfV0tQbHVnaW5Nb2R1bGVMb2Fk
UG9saWN5QmxvY2tlZEZvclNlY3VyaXR5OgorICAgICAgICByZXR1cm4gV2ViS2l0OjpQbHVnaW5N
b2R1bGVCbG9ja2VkRm9yU2VjdXJpdHk7CisgICAgY2FzZSBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9s
aWN5QmxvY2tlZEZvckNvbXBhdGliaWxpdHk6CisgICAgICAgIHJldHVybiBXZWJLaXQ6OlBsdWdp
bk1vZHVsZUJsb2NrZWRGb3JDb21wYXRpYmlsaXR5OworICAgIH0KKyAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKKyAgICByZXR1cm4gV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkTm9ybWFsbHk7Cit9
CisKK3N0YXRpYyBfV0tQbHVnaW5Nb2R1bGVMb2FkUG9saWN5IHdrUGx1Z2luTW9kdWxlTG9hZFBv
bGljeShXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWRQb2xpY3kgcG9saWN5KQoreworICAgIHN3aXRj
aCAocG9saWN5KSB7CisgICAgY2FzZSBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWROb3JtYWxseToK
KyAgICAgICAgcmV0dXJuIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkTm9ybWFsbHk7Cisg
ICAgY2FzZSBXZWJLaXQ6OlBsdWdpbk1vZHVsZUxvYWRVbnNhbmRib3hlZDoKKyAgICAgICAgcmV0
dXJuIF9XS1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lMb2FkVW5zYW5kYm94ZWQ7CisgICAgY2FzZSBX
ZWJLaXQ6OlBsdWdpbk1vZHVsZUJsb2NrZWRGb3JTZWN1cml0eToKKyAgICAgICAgcmV0dXJuIF9X
S1BsdWdpbk1vZHVsZUxvYWRQb2xpY3lCbG9ja2VkRm9yU2VjdXJpdHk7CisgICAgY2FzZSBXZWJL
aXQ6OlBsdWdpbk1vZHVsZUJsb2NrZWRGb3JDb21wYXRpYmlsaXR5OgorICAgICAgICByZXR1cm4g
X1dLUGx1Z2luTW9kdWxlTG9hZFBvbGljeUJsb2NrZWRGb3JDb21wYXRpYmlsaXR5OworICAgIH0K
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gX1dLUGx1Z2luTW9kdWxlTG9h
ZFBvbGljeUxvYWROb3JtYWxseTsKK30KKworV2ViS2l0OjpQbHVnaW5Nb2R1bGVMb2FkUG9saWN5
IE5hdmlnYXRpb25TdGF0ZTo6TmF2aWdhdGlvbkNsaWVudDo6ZGVjaWRlUG9saWN5Rm9yUGx1Z2lu
TG9hZChXZWJLaXQ6OldlYlBhZ2VQcm94eSYsIFdlYktpdDo6UGx1Z2luTW9kdWxlTG9hZFBvbGlj
eSBjdXJyZW50UGx1Z2luTG9hZFBvbGljeSwgQVBJOjpEaWN0aW9uYXJ5JiBwbHVnaW5JbmZvcm1h
dGlvbiwgV1RGOjpTdHJpbmcmIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24pCit7CisgICAgaWYg
KCFtX25hdmlnYXRpb25TdGF0ZS5tX25hdmlnYXRpb25EZWxlZ2F0ZU1ldGhvZHMud2ViVmlld0Rl
Y2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGljeVBsdWdpbkluZm9VbmF2YWls
YWJpbGl0eURlc2NyaXB0aW9uKQorICAgICAgICByZXR1cm4gY3VycmVudFBsdWdpbkxvYWRQb2xp
Y3k7CisgICAgCisgICAgYXV0byBuYXZpZ2F0aW9uRGVsZWdhdGUgPSBtX25hdmlnYXRpb25TdGF0
ZS5tX25hdmlnYXRpb25EZWxlZ2F0ZS5nZXQoKTsKKyAgICBpZiAoIW5hdmlnYXRpb25EZWxlZ2F0
ZSkKKyAgICAgICAgcmV0dXJuIGN1cnJlbnRQbHVnaW5Mb2FkUG9saWN5OworCisgICAgcmV0dXJu
IHBsdWdpbk1vZHVsZUxvYWRQb2xpY3koWyhpZCA8V0tOYXZpZ2F0aW9uRGVsZWdhdGVQcml2YXRl
PiluYXZpZ2F0aW9uRGVsZWdhdGUgX3dlYlZpZXc6bV9uYXZpZ2F0aW9uU3RhdGUubV93ZWJWaWV3
IGRlY2lkZVBvbGljeUZvclBsdWdpbkxvYWRXaXRoQ3VycmVudFBvbGljeTp3a1BsdWdpbk1vZHVs
ZUxvYWRQb2xpY3koY3VycmVudFBsdWdpbkxvYWRQb2xpY3kpIHBsdWdpbkluZm86d3JhcHBlcihw
bHVnaW5JbmZvcm1hdGlvbikgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbjp1bmF2YWlsYWJpbGl0
eURlc2NyaXB0aW9uXSk7Cit9CisKIGlubGluZSBXZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgdG9X
ZWJDb3JlV2ViR0xMb2FkUG9saWN5KF9XS1dlYkdMTG9hZFBvbGljeSBwb2xpY3kpCiB7CiAgICAg
c3dpdGNoIChwb2xpY3kpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>