<?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>148554</bug_id>
          
          <creation_ts>2015-08-27 19:00:07 -0700</creation_ts>
          <short_desc>Get rid of the DynamicSizeWithMinimumViewSize layout mode</short_desc>
          <delta_ts>2015-08-28 11:10:36 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>bfulgham</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1121535</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-08-27 19:00:07 -0700</bug_when>
    <thetext>Get rid of the DynamicSizeWithMinimumViewSize layout mode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1121536</commentid>
    <comment_count>1</comment_count>
      <attachid>260108</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-08-27 19:01:10 -0700</bug_when>
    <thetext>Created attachment 260108
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1121542</commentid>
    <comment_count>2</comment_count>
      <attachid>260110</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-08-27 19:25:37 -0700</bug_when>
    <thetext>Created attachment 260110
same patch again

for EWS, because I just landed the patch this depends on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1121736</commentid>
    <comment_count>3</comment_count>
      <attachid>260110</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-28 10:36:16 -0700</bug_when>
    <thetext>Comment on attachment 260110
same patch again

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

&gt; Source/WebKit2/UIProcess/API/C/WKLayoutMode.h:39
&gt; +    kWKLayoutModeDynamicSizeWithMinimumViewSize_Deprecated, // This mode is deprecated and will behave like kWKLayoutModeViewSize.

Please use WK_ENUM_DEPRECATED instead of renaming the enum.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1121757</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-08-28 11:10:36 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/189105</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260108</attachid>
            <date>2015-08-27 19:01:10 -0700</date>
            <delta_ts>2015-08-27 19:25:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148554-20150827190057.patch</filename>
            <type>text/plain</type>
            <size>23475</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg5MDc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjI2YjdkNGVmN2JkOGEw
MjIyMWE5ZDFhZGQyYTVmNTgzZWIwNjE4Zi4uNGUzMGEyNDIyMjRlN2NlODg2NzUwZWM3NWU2YjQ5
MWRiNzU3Mjk3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ3IEBACiAyMDE1LTA4LTI3ICBUaW1v
dGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAorICAgICAgICBHZXQgcmlk
IG9mIHRoZSBEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemUgbGF5b3V0IG1vZGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODU1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9DL1dLTGF5b3V0TW9kZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tOgor
ICAgICAgICAoLVtXS1dlYlZpZXcgX2xheW91dE1vZGVdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3
IF9zZXRMYXlvdXRNb2RlOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgX3NldE1pbmltdW1WaWV3
U2l6ZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tXZWJWaWV3IF9taW5pbXVtVmlld1NpemVd
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZh
dGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xheW91dE1vZGUuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW06CisgICAgICAgICgtW1dLVmlldyBf
c2V0TWluaW11bVZpZXdTaXplOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1ZpZXcgX21pbmlt
dW1WaWV3U2l6ZV0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnNjYWxlVmlld0FuZFVwZGF0ZUdl
b21ldHJ5RmVuY2VkKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5tbToKKyAg
ICAgICAgKCtbV0tWaWV3TGF5b3V0U3RyYXRlZ3kgbGF5b3V0U3RyYXRlZ3lXaXRoUGFnZTp2aWV3
Om1vZGU6XSk6CisgICAgICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZUxheW91dFN0cmF0ZWd5IGluaXRXaXRoUGFnZTp2aWV3Om1vZGU6XSk6IERlbGV0ZWQuCisgICAg
ICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5
IF91cGRhdGVUcmFuc2llbnRTY2FsZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tWaWV3RHlu
YW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kgdXBkYXRlTGF5b3V0XSk6
IERlbGV0ZWQuCisgICAgICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZUxheW91dFN0cmF0ZWd5IGRpZENoYW5nZU1pbmltdW1WaWV3U2l6ZV0pOiBEZWxldGVkLgorICAg
ICAgICAoLVtXS1ZpZXdEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVn
eSB3aWxsU3RhcnRMaXZlUmVzaXplXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVmlld0R5bmFt
aWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5IGRpZEVuZExpdmVSZXNpemVd
KTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tWaWV3RHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplTGF5b3V0U3RyYXRlZ3kgZGlkQ2hhbmdlRnJhbWVTaXplXSk6IERlbGV0ZWQuCisgICAgICAg
ICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5IHdp
bGxDaGFuZ2VMYXlvdXRTdHJhdGVneV0pOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9EcmF3aW5nQXJlYS5oOgorICAgICAgICAoV2ViS2l0OjpEcmF3aW5nQXJlYTo6cmVw
bHlXaXRoRmVuY2VBZnRlck5leHRGbHVzaCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzY2FsZVZp
ZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29y
ZUFuaW1hdGlvbkRyYXdpbmdBcmVhLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21h
Yy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbToKKyAgICAgICAgKFdlYktpdDo6VGls
ZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnJlcGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2gp
OiBEZWxldGVkLgorCisyMDE1LTA4LTI3ICBUaW1vdGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KKwogICAgICAgICBWaWRlbyBmdWxsLXNjcmVlbiBzaG91bGRuJ3QgdXNlIHRo
ZSBEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemUgbGF5b3V0IG1vZGUKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODU1MwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tMYXlvdXRNb2RlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tMYXlvdXRNb2RlLmgKaW5kZXggNjcyNjZhNGI0ZGQw
MjllYmIzMmIzZGVmMjIxZTJiNTJkNTZkMTljMC4uNWU2NDhlNzg1MjQ4YzllYzBkY2U2ODIzZjBi
OTQyYzczNDhjZDdiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLTGF5b3V0TW9kZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0xh
eW91dE1vZGUuaApAQCAtMzYsNyArMzYsNyBAQCBlbnVtIHsKICAgICBrV0tMYXlvdXRNb2RlVmll
d1NpemUsCiAgICAga1dLTGF5b3V0TW9kZUZpeGVkU2l6ZSwKICAgICBrV0tMYXlvdXRNb2RlRHlu
YW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGUsCi0gICAga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplV2l0aE1pbmltdW1WaWV3U2l6ZSwKKyAgICBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRo
TWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQsIC8vIFRoaXMgbW9kZSBpcyBkZXByZWNhdGVkIGFu
ZCB3aWxsIGJlaGF2ZSBsaWtlIGtXS0xheW91dE1vZGVWaWV3U2l6ZS4KICAgICBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVDb21wdXRlZEZyb21NaW5pbXVtRG9jdW1lbnRTaXplCiB9OwogdHlwZWRl
ZiB1aW50MzJfdCBXS0xheW91dE1vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tWaWV3UHJpdmF0ZS5oCmluZGV4IDk4NGVhNzY4NTA4YmU5NDQwOTYzOGE3
ZGU1ZjFiOTVjY2E0OGM3YTEuLjllZWY5NmYyOGI0MmQzMWZjMjhjNDM2ZTAzNDQ3NzRkOGQ3OTY0
OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oCkBAIC05NSw4ICs5NSw2IEBACiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRMYXlvdXRNb2RlOikgV0tMYXlvdXRNb2RlIF9sYXlvdXRNb2RlOwogLy8gRm9yIHVzZSB3
aXRoIF9sYXlvdXRNb2RlID0ga1dLTGF5b3V0TW9kZUZpeGVkU2l6ZToKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldEZpeGVkTGF5b3V0U2l6ZTopIENHU2l6ZSBfZml4ZWRMYXlvdXRT
aXplOwotLy8gRm9yIHVzZSB3aXRoIF9sYXlvdXRNb2RlID0ga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplV2l0aE1pbmltdW1WaWV3U2l6ZToKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dE1pbmltdW1WaWV3U2l6ZTopIENHU2l6ZSBfbWluaW11bVZpZXdTaXplOwogCiBAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRWaWV3U2NhbGU6KSBDR0Zsb2F0IF92aWV3U2NhbGU7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5k
ZXggMDAwM2IyYWRhMDhlM2ZkNDczNWUwYWM1MDhiZmJhN2I2MTRhYWM5Yi4uOGQ2ZmQ0N2VmMDhl
ZTVhODgzZjZhNDY2N2QxNjQ4ZGUzZTJmNzc3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAgLTI1MDYsOCArMjUwNiw4IEBAIHN0YXRp
YyBpbmxpbmUgV2ViS2l0OjpGaW5kT3B0aW9ucyB0b0ZpbmRPcHRpb25zKF9XS0ZpbmRPcHRpb25z
IHdrRmluZE9wdGlvbnMpCiAgICAgICAgIHJldHVybiBfV0tMYXlvdXRNb2RlRml4ZWRTaXplOwog
ICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1NjYWxlOgog
ICAgICAgICByZXR1cm4gX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1Nj
YWxlOwotICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZToKLSAgICAgICAgcmV0dXJuIF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmll
d1NpemU7CisgICAgY2FzZSBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplX0RlcHJlY2F0ZWQ6CisgICAgICAgIHJldHVybiBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVX
aXRoTWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQ7CiAgICAgY2FzZSBrV0tMYXlvdXRNb2RlRHlu
YW1pY1NpemVDb21wdXRlZEZyb21NaW5pbXVtRG9jdW1lbnRTaXplOgogICAgICAgICByZXR1cm4g
X1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZTsK
ICAgICBjYXNlIGtXS0xheW91dE1vZGVWaWV3U2l6ZToKQEAgLTI1MzAsOCArMjUzMCw4IEBAIHN0
YXRpYyBpbmxpbmUgV2ViS2l0OjpGaW5kT3B0aW9ucyB0b0ZpbmRPcHRpb25zKF9XS0ZpbmRPcHRp
b25zIHdrRmluZE9wdGlvbnMpCiAgICAgY2FzZSBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVDb21w
dXRlZEZyb21WaWV3U2NhbGU6CiAgICAgICAgIHdrVmlld0xheW91dE1vZGUgPSBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGU7CiAgICAgICAgIGJyZWFrOwotICAg
IGNhc2UgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZToKLSAgICAg
ICAgd2tWaWV3TGF5b3V0TW9kZSA9IGtXS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVt
Vmlld1NpemU7CisgICAgY2FzZSBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZp
ZXdTaXplX0RlcHJlY2F0ZWQ6CisgICAgICAgIHdrVmlld0xheW91dE1vZGUgPSBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQ7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11
bURvY3VtZW50U2l6ZToKICAgICAgICAgd2tWaWV3TGF5b3V0TW9kZSA9IGtXS0xheW91dE1vZGVE
eW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNpemU7CkBAIC0yNTc0LDIyICsy
NTc0LDYgQEAgc3RhdGljIGlubGluZSBXZWJLaXQ6OkZpbmRPcHRpb25zIHRvRmluZE9wdGlvbnMo
X1dLRmluZE9wdGlvbnMgd2tGaW5kT3B0aW9ucykKICNlbmRpZgogfQogCi0tICh2b2lkKV9zZXRN
aW5pbXVtVmlld1NpemU6KENHU2l6ZSltaW5pbXVtVmlld1NpemUKLXsKLSNpZiBQTEFURk9STShN
QUMpCi0gICAgW193a1ZpZXcgX3NldE1pbmltdW1WaWV3U2l6ZTptaW5pbXVtVmlld1NpemVdOwot
I2VuZGlmCi19Ci0KLS0gKENHU2l6ZSlfbWluaW11bVZpZXdTaXplCi17Ci0jaWYgUExBVEZPUk0o
TUFDKQotICAgIHJldHVybiBbX3drVmlldyBfbWluaW11bVZpZXdTaXplXTsKLSNlbHNlCi0gICAg
cmV0dXJuIENHU2l6ZVplcm87Ci0jZW5kaWYKLX0KLQogI3ByYWdtYSBtYXJrIHNjcm9sbHBlcmYg
bWV0aG9kcwogCiAtICh2b2lkKV9zZXRTY3JvbGxQZXJmb3JtYW5jZURhdGFDb2xsZWN0aW9uRW5h
YmxlZDooQk9PTCllbmFibGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCmluZGV4IGExZWRmOGIxN2YwOGIzNjBhOGE3OTI4
N2FhY2QyMzlmYmFmZWE0NTguLjEzZGVjNGNkODQ1NjcwZjEzNWRhOGJlYzU2YmY1NzZkNjc2MTRk
YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3UHJpdmF0ZS5oCkBAIC05OSw4ICs5OSw2IEBAIFdLX0VYVEVSTiBOU1N0cmluZyAqIGNv
bnN0IF9XS1Nob3VsZE9wZW5FeHRlcm5hbFVSTHNLZXkgV0tfQVZBSUxBQkxFKFdLX01BQ19UQkEs
CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRMYXlvdXRNb2RlOikgX1dLTGF5b3V0
TW9kZSBfbGF5b3V0TW9kZTsKIC8vIEZvciB1c2Ugd2l0aCBfbGF5b3V0TW9kZSA9IF9XS0xheW91
dE1vZGVGaXhlZFNpemU6CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRGaXhlZExh
eW91dFNpemU6KSBDR1NpemUgX2ZpeGVkTGF5b3V0U2l6ZTsKLS8vIEZvciB1c2Ugd2l0aCBfbGF5
b3V0TW9kZSA9IF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemU6Ci1A
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNaW5pbXVtVmlld1NpemU6KSBDR1NpemUg
X21pbmltdW1WaWV3U2l6ZTsKIAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Vmll
d1NjYWxlOikgQ0dGbG9hdCBfdmlld1NjYWxlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xheW91dE1vZGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGF5b3V0TW9kZS5oCmluZGV4IDZkMThlNTRkNTljMDVmZDNj
MzM1YTMzOTZhY2VmMDQyNGYxZWI3MzEuLjI3YzA3M2M3YTJkYWI5NzYzOWNjNzUzN2NhZDNlNjMy
OTAwNTA5MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGF5b3V0TW9kZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGF5b3V0TW9kZS5oCkBAIC0zNCw4ICszNCw4IEBAIHR5cGVkZWYgTlNfRU5VTShOU1VJbnRl
Z2VyLCBfV0tMYXlvdXRNb2RlKSB7CiAgICAgLy8gTGF5IG91dCB0aGUgdmlldyB3aXRoIGl0cyBm
cmFtZSBzY2FsZWQgYnkgdGhlIGludmVyc2Ugdmlld1NjYWxlLgogICAgIF9XS0xheW91dE1vZGVE
eW5hbWljU2l6ZUNvbXB1dGVkRnJvbVZpZXdTY2FsZSwKIAotICAgIC8vIExheSBvdXQgdGhlIHZp
ZXcgYXQgYSBoZXVyaXN0aWNhbGx5LWRldGVybWluZWQgc2l6ZSBiYXNlZCBvbiB0aGUgbWluaW11
bSB2aWV3IHNpemUuCi0gICAgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3
U2l6ZSwKKyAgICAvLyBUaGlzIG1vZGUgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZWhhdmUgbGlr
ZSBrV0tMYXlvdXRNb2RlVmlld1NpemUuCisgICAgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0
aE1pbmltdW1WaWV3U2l6ZV9EZXByZWNhdGVkLAogCiAgICAgLy8gTGF5IG91dCB0aGUgdmlldyBh
dCBhIGhldXJpc3RpY2FsbHktZGV0ZXJtaW5lZCBzaXplIGJhc2VkIG9uIHRoZSBtaW5pbXVtIHNp
emUgb2YgdGhlIGRvY3VtZW50LgogICAgIF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZUNvbXB1dGVk
RnJvbU1pbmltdW1Eb2N1bWVudFNpemUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21h
Yy9XS1ZpZXcubW0KaW5kZXggZGExZTVmZDRlMDc2ZTgzNjRkMDI1MjMzNzI5YzJhYjhiYWRiYTRj
ZC4uNjhlYzM3NGFmNTUxNzdkNTgwOGRlYjYwN2EyMmIzNGRhYzNkZTg0OCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQpAQCAtMjY3LDcgKzI2Nyw2IEBAIHN0
cnVjdCBXS1ZpZXdJbnRlcnByZXRLZXlFdmVudHNQYXJhbWV0ZXJzIHsKICAgICBSZXRhaW5QdHI8
V0tWaWV3TGF5b3V0U3RyYXRlZ3k+IF9sYXlvdXRTdHJhdGVneTsKICAgICBXS0xheW91dE1vZGUg
X2xhc3RSZXF1ZXN0ZWRMYXlvdXRNb2RlOwogICAgIGZsb2F0IF9sYXN0UmVxdWVzdGVkVmlld1Nj
YWxlOwotICAgIENHU2l6ZSBfbWluaW11bVZpZXdTaXplOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IF9yb290TGF5ZXI7CiAKQEAgLTQzOTAsMTcgKzQzODksNiBAQCBzdGF0aWMgTlNTdHJpbmcg
KnBhdGhXaXRoVW5pcXVlRmlsZW5hbWVGb3JQYXRoKE5TU3RyaW5nICpwYXRoKQogICAgIFtfZGF0
YS0+X2xheW91dFN0cmF0ZWd5IGRpZENoYW5nZVZpZXdTY2FsZV07CiB9CiAKLS0gKHZvaWQpX3Nl
dE1pbmltdW1WaWV3U2l6ZTooQ0dTaXplKW1pbmltdW1WaWV3U2l6ZQotewotICAgIF9kYXRhLT5f
bWluaW11bVZpZXdTaXplID0gbWluaW11bVZpZXdTaXplOwotICAgIFtfZGF0YS0+X2xheW91dFN0
cmF0ZWd5IGRpZENoYW5nZU1pbmltdW1WaWV3U2l6ZV07Ci19Ci0KLS0gKENHU2l6ZSlfbWluaW11
bVZpZXdTaXplCi17Ci0gICAgcmV0dXJuIF9kYXRhLT5fbWluaW11bVZpZXdTaXplOwotfQotCiAt
ICh2b2lkKV9kaXNwYXRjaFNldFRvcENvbnRlbnRJbnNldAogewogICAgIGlmICghX2RhdGEtPl9k
aWRTY2hlZHVsZVNldFRvcENvbnRlbnRJbnNldCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKaW5kZXggNGNlZWEwY2FjYmUxYTYxYjk3OGM1MzE2MzhkMjAxMGIzOWJj
MTcwMC4uN2M5MzUzYjdkOTZkYTdhYWU2OTU0YjMxYjUwMTFlNDNhYjdmOGY5NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTIyNzUsMjIgKzIyNzUsNiBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6c2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKICAgICBtX3Byb2Nl
c3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNjYWxlVmlldyhzY2FsZSksIG1fcGFnZUlEKTsK
IH0KIAotI2lmIFBMQVRGT1JNKENPQ09BKQotdm9pZCBXZWJQYWdlUHJveHk6OnNjYWxlVmlld0Fu
ZFVwZGF0ZUdlb21ldHJ5RmVuY2VkKGRvdWJsZSBzY2FsZSwgSW50U2l6ZSB2aWV3U2l6ZSwgc3Rk
OjpmdW5jdGlvbjx2b2lkIChjb25zdCBNYWNoU2VuZFJpZ2h0JiwgQ2FsbGJhY2tCYXNlOjpFcnJv
cik+IGNhbGxiYWNrKQotewotICAgIGlmICghaXNWYWxpZCgpKSB7Ci0gICAgICAgIGNhbGxiYWNr
KE1hY2hTZW5kUmlnaHQoKSwgQ2FsbGJhY2tCYXNlOjpFcnJvcjo6T3duZXJXYXNJbnZhbGlkYXRl
ZCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBtX3ZpZXdTY2FsZUZhY3RvciA9IHNj
YWxlOwotICAgIGlmIChtX2RyYXdpbmdBcmVhKQotICAgICAgICBtX2RyYXdpbmdBcmVhLT53aWxs
U2VuZFVwZGF0ZUdlb21ldHJ5KCk7Ci0gICAgdWludDY0X3QgY2FsbGJhY2tJRCA9IG1fY2FsbGJh
Y2tzLnB1dChXVEY6Om1vdmUoY2FsbGJhY2spLCBtX3Byb2Nlc3MtPnRocm90dGxlcigpLmJhY2tn
cm91bmRBY3Rpdml0eVRva2VuKCkpOwotICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6U2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlGZW5jZWQoc2NhbGUsIHZpZXdTaXplLCBj
YWxsYmFja0lEKSwgbV9wYWdlSUQpOwotfQotI2VuZGlmCi0KIHZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXRJbnRyaW5zaWNEZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBzY2FsZUZhY3RvcikKIHsKICAgICBp
ZiAobV9pbnRyaW5zaWNEZXZpY2VTY2FsZUZhY3RvciA9PSBzY2FsZUZhY3RvcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCAxODkyZDc5ZTkzMzExMTZlN2YwM2E0
NDc1ZTBkMjIzZmVlMGYyODgyLi4zMmVmNmFlY2JjNmEzOWQxY2ZiN2E2OGYwMTBiZGM5MmQ3Zjgy
ODg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC02NDIsOSAr
NjQyLDYgQEAgcHVibGljOgogICAgIGRvdWJsZSBwYWdlU2NhbGVGYWN0b3IoKSBjb25zdDsKICAg
ICBkb3VibGUgdmlld1NjYWxlRmFjdG9yKCkgY29uc3QgeyByZXR1cm4gbV92aWV3U2NhbGVGYWN0
b3I7IH0KICAgICB2b2lkIHNjYWxlVmlldyhkb3VibGUgc2NhbGUpOwotI2lmIFBMQVRGT1JNKENP
Q09BKQotICAgIHZvaWQgc2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlGZW5jZWQoZG91YmxlIHNj
YWxlLCBXZWJDb3JlOjpJbnRTaXplIHZpZXdTaXplLCBzdGQ6OmZ1bmN0aW9uPHZvaWQgKGNvbnN0
IFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQmLCBDYWxsYmFja0Jhc2U6OkVycm9yKT4pOwotI2VuZGlm
CiAgICAgdm9pZCBzZXRTaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KGJvb2wpOwogICAgIAog
ICAgIGJvb2wgdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgpIHsgcmV0dXJuIG1fdXNlckNv
bnRlbnRFeHRlbnNpb25zRW5hYmxlZDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5oCmluZGV4IGU5OWQ5ZmUwYmM4ODkyNzAyMTAy
NTU3NjIyZTRiMDRkYzAxMjBhOTYuLjdiMzJiMjY5YThhZTdhMDIxMmM4M2U1YjFiMTAzMjI2NDBj
ODVjNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tWaWV3TGF5
b3V0U3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLVmlld0xh
eW91dFN0cmF0ZWd5LmgKQEAgLTU0LDcgKzU0LDYgQEAgY2xhc3MgV2ViUGFnZVByb3h5OwogLSAo
Qk9PTClmcmFtZVNpemVVcGRhdGVzRGlzYWJsZWQ7CiAKIC0gKHZvaWQpZGlkQ2hhbmdlVmlld1Nj
YWxlOwotLSAodm9pZClkaWRDaGFuZ2VNaW5pbXVtVmlld1NpemU7CiAtICh2b2lkKXdpbGxTdGFy
dExpdmVSZXNpemU7CiAtICh2b2lkKWRpZEVuZExpdmVSZXNpemU7CiAtICh2b2lkKWRpZENoYW5n
ZUZyYW1lU2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tW
aWV3TGF5b3V0U3RyYXRlZ3kubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLVmll
d0xheW91dFN0cmF0ZWd5Lm1tCmluZGV4IDA5YTQ1YzY2NDc0MGEwNDMyMjk3MjFhMDkzYmJjYzYy
OTBjNjJhODYuLjJlMGM5MTNkOTY4NDdlZWZkYmFiMDA4MTA3Y2RmYmJmNmZiNmNjY2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tWaWV3TGF5b3V0U3RyYXRlZ3ku
bW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVn
eS5tbQpAQCAtNDUsMTMgKzQ1LDYgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIEBpbnRlcmZh
Y2UgV0tWaWV3RHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGVMYXlvdXRTdHJhdGVneSA6
IFdLVmlld0xheW91dFN0cmF0ZWd5CiBAZW5kCiAKLUBpbnRlcmZhY2UgV0tWaWV3RHluYW1pY1Np
emVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kgOiBXS1ZpZXdMYXlvdXRTdHJhdGVn
eSB7Ci0gICAgQk9PTCBfaXNXYWl0aW5nRm9yQ29tbWl0OwotICAgIEJPT0wgX2hhc1BlbmRpbmdM
YXlvdXQ7Ci0gICAgQ0dGbG9hdCBfbGFzdENvbW1pdHRlZFZpZXdTY2FsZTsKLX0KLUBlbmQKLQog
QGludGVyZmFjZSBXS1ZpZXdEeW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNp
emVMYXlvdXRTdHJhdGVneSA6IFdLVmlld0xheW91dFN0cmF0ZWd5CiBAZW5kCiAKQEAgLTY4LDEz
ICs2MSwxMSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogICAgIGNhc2Uga1dLTGF5b3V0TW9k
ZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1NjYWxlOgogICAgICAgICBzdHJhdGVneSA9IFtb
V0tWaWV3RHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGVMYXlvdXRTdHJhdGVneSBhbGxv
Y10gaW5pdFdpdGhQYWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsKICAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXpl
OgotICAgICAgICBzdHJhdGVneSA9IFtbV0tWaWV3RHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplTGF5b3V0U3RyYXRlZ3kgYWxsb2NdIGluaXRXaXRoUGFnZTpwYWdlIHZpZXc6d2tWaWV3IG1v
ZGU6bW9kZV07Ci0gICAgICAgIGJyZWFrOwogICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZToKICAgICAgICAgc3RyYXRlZ3kgPSBb
W1dLVmlld0R5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZUxheW91dFN0
cmF0ZWd5IGFsbG9jXSBpbml0V2l0aFBhZ2U6cGFnZSB2aWV3OndrVmlldyBtb2RlOm1vZGVdOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIGtXS0xheW91dE1vZGVWaWV3U2l6ZToKKyAgICBjYXNl
IGtXS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVfRGVwcmVjYXRlZDoK
ICAgICBkZWZhdWx0OgogICAgICAgICBzdHJhdGVneSA9IFtbV0tWaWV3Vmlld1NpemVMYXlvdXRT
dHJhdGVneSBhbGxvY10gaW5pdFdpdGhQYWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsK
ICAgICAgICAgYnJlYWs7CkBAIC0xMzcsMTAgKzEyOCw2IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJL
aXQ7CiB7CiB9CiAKLS0gKHZvaWQpZGlkQ2hhbmdlTWluaW11bVZpZXdTaXplCi17Ci19Ci0KIC0g
KHZvaWQpd2lsbFN0YXJ0TGl2ZVJlc2l6ZQogewogfQpAQCAtMjQ0LDE0MiArMjMxLDYgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYktpdDsKIAogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV0tWaWV3RHlu
YW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kKLQotLSAoaW5zdGFuY2V0
eXBlKWluaXRXaXRoUGFnZTooV2ViUGFnZVByb3h5JilwYWdlIHZpZXc6KFdLVmlldyAqKXdrVmll
dyBtb2RlOihXS0xheW91dE1vZGUpbW9kZQotewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhQ
YWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsKLQotICAgIGlmICghc2VsZikKLSAgICAg
ICAgcmV0dXJuIG5pbDsKLQotICAgIHBhZ2Uuc2V0VXNlRml4ZWRMYXlvdXQodHJ1ZSk7Ci0gICAg
X2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPSBfcGFnZS0+dmlld1NjYWxlRmFjdG9yKCk7Ci0KLSAg
ICByZXR1cm4gc2VsZjsKLX0KLQotLSAodm9pZClfdXBkYXRlVHJhbnNpZW50U2NhbGU6KENHRmxv
YXQpc2NhbGUKLXsKLSAgICBmbG9hdCB0b3BDb250ZW50SW5zZXQgPSBfcGFnZS0+dG9wQ29udGVu
dEluc2V0KCk7Ci0KLSAgICBDR0Zsb2F0IHJlbGF0aXZlU2NhbGUgPSBzY2FsZSAvIF9sYXN0Q29t
bWl0dGVkVmlld1NjYWxlOwotCi0gICAgQ0FUcmFuc2Zvcm0zRCB0cmFuc2Zvcm0gPSBDQVRyYW5z
Zm9ybTNETWFrZVRyYW5zbGF0aW9uKDAsIHRvcENvbnRlbnRJbnNldCAtICh0b3BDb250ZW50SW5z
ZXQgKiByZWxhdGl2ZVNjYWxlKSwgMCk7Ci0gICAgdHJhbnNmb3JtID0gQ0FUcmFuc2Zvcm0zRFNj
YWxlKHRyYW5zZm9ybSwgcmVsYXRpdmVTY2FsZSwgcmVsYXRpdmVTY2FsZSwgMSk7Ci0KLSAgICBf
d2tWaWV3Ll9yb290TGF5ZXIudHJhbnNmb3JtID0gdHJhbnNmb3JtOwotfQotCi0tICh2b2lkKXVw
ZGF0ZUxheW91dAotewotICAgIF9oYXNQZW5kaW5nTGF5b3V0ID0gTk87Ci0KLSAgICBDR0Zsb2F0
IHNjYWxlID0gMTsKLQotICAgIENHRmxvYXQgbWluaW11bVZpZXdXaWR0aCA9IF93a1ZpZXcuX21p
bmltdW1WaWV3U2l6ZS53aWR0aDsKLSAgICBDR0Zsb2F0IG1pbmltdW1WaWV3SGVpZ2h0ID0gX3dr
Vmlldy5fbWluaW11bVZpZXdTaXplLmhlaWdodDsKLQotICAgIENHRmxvYXQgZml4ZWRMYXlvdXRX
aWR0aCA9IF93a1ZpZXcuZnJhbWUuc2l6ZS53aWR0aDsKLSAgICBDR0Zsb2F0IGZpeGVkTGF5b3V0
SGVpZ2h0ID0gX3drVmlldy5mcmFtZS5zaXplLmhlaWdodDsKLQotICAgIGlmIChOU0lzRW1wdHlS
ZWN0KF93a1ZpZXcuZnJhbWUpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoX3drVmlldy5m
cmFtZS5zaXplLndpZHRoIDwgbWluaW11bVZpZXdXaWR0aCkgewotICAgICAgICBzY2FsZSA9IF93
a1ZpZXcuZnJhbWUuc2l6ZS53aWR0aCAvIG1pbmltdW1WaWV3V2lkdGg7Ci0gICAgICAgIGZpeGVk
TGF5b3V0V2lkdGggPSBtaW5pbXVtVmlld1dpZHRoOwotICAgIH0KLQotICAgIGlmIChfd2tWaWV3
LmZyYW1lLnNpemUuaGVpZ2h0IDwgbWluaW11bVZpZXdIZWlnaHQpIHsKLSAgICAgICAgc2NhbGUg
PSBzdGQ6Om1pbihfd2tWaWV3LmZyYW1lLnNpemUuaGVpZ2h0IC8gbWluaW11bVZpZXdIZWlnaHQs
IHNjYWxlKTsKLSAgICAgICAgZml4ZWRMYXlvdXRXaWR0aCA9IG1pbmltdW1WaWV3SGVpZ2h0Owot
ICAgIH0KLQotICAgIF9wYWdlLT5zZXRGaXhlZExheW91dFNpemUoSW50U2l6ZShmaXhlZExheW91
dFdpZHRoLCBmaXhlZExheW91dEhlaWdodCkpOwotCi0gICAgW3NlbGYgX3VwZGF0ZVRyYW5zaWVu
dFNjYWxlOnNjYWxlXTsKLQotICAgIGlmIChfaXNXYWl0aW5nRm9yQ29tbWl0KSB7Ci0gICAgICAg
IF9oYXNQZW5kaW5nTGF5b3V0ID0gWUVTOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAg
aWYgKFtfd2tWaWV3IGluTGl2ZVJlc2l6ZV0gJiYgX2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPT0g
MSAmJiBzY2FsZSA9PSAxICYmIF9mcmFtZVNpemVVcGRhdGVzRGlzYWJsZWRDb3VudCA9PSAxKSB7
Ci0gICAgICAgIC8vIFNlbmQgZnJhbWUgc2l6ZSB1cGRhdGVzIGlmIHdlJ3JlIHRoZSBvbmx5IG9u
ZXMgZGlzYWJsaW5nIHRoZW0sCi0gICAgICAgIC8vIGlmIHdlJ3JlIG5vdCBzY2FsaW5nIGRvd24u
IFRoYXQgd2F5LCBldmVyeXRoaW5nIHdpbGwgYmVoYXZlIGxpa2UgYSBub3JtYWwKLSAgICAgICAg
Ly8gcmVzaXplIGV4Y2VwdCBpbiB0aGUgY3JpdGljYWwgc2VjdGlvbi4KLSAgICAgICAgaWYgKF93
a1ZpZXcuc2hvdWxkQ2xpcFRvVmlzaWJsZVJlY3QpCi0gICAgICAgICAgICBbX3drVmlldyBfdXBk
YXRlVmlld0V4cG9zZWRSZWN0XTsKLSAgICAgICAgW193a1ZpZXcgX3NldERyYXdpbmdBcmVhU2l6
ZTpbX3drVmlldyBmcmFtZV0uc2l6ZV07Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBp
ZiAoX2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPT0gc2NhbGUpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIF9pc1dhaXRpbmdGb3JDb21taXQgPSBZRVM7Ci0KLSNpZiBQTEFURk9STShJT1MpIHx8IF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMDAwCi0gICAgUmV0YWluUHRyPENB
Q29udGV4dD4gY29udGV4dCA9IFtfd2tWaWV3LmxheWVyIGNvbnRleHRdOwotICAgIFJldGFpblB0
cjxXS1ZpZXdEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVneT4gcmV0
YWluZWRTZWxmID0gc2VsZjsKLSAgICBfcGFnZS0+c2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlG
ZW5jZWQoc2NhbGUsIEludFNpemUoX3drVmlldy5mcmFtZS5zaXplKSwgW3JldGFpbmVkU2VsZiwg
Y29udGV4dCwgc2NhbGVdIChjb25zdCBXZWJDb3JlOjpNYWNoU2VuZFJpZ2h0JiBmZW5jZVBvcnQs
IENhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3IpIHsKLSAgICAgICAgaWYgKGVycm9yICE9IENhbGxi
YWNrQmFzZTo6RXJyb3I6Ok5vbmUpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgW2Nv
bnRleHQgc2V0RmVuY2VQb3J0OmZlbmNlUG9ydC5zZW5kUmlnaHQoKSBjb21taXRIYW5kbGVyOlty
ZXRhaW5lZFNlbGYsIHNjYWxlXSB7Ci0gICAgICAgICAgICBXS1ZpZXdEeW5hbWljU2l6ZVdpdGhN
aW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVneSAqbGF5b3V0U3RyYXRlZ3kgPSByZXRhaW5lZFNl
bGYuZ2V0KCk7Ci0gICAgICAgICAgICBsYXlvdXRTdHJhdGVneS0+X2xhc3RDb21taXR0ZWRWaWV3
U2NhbGUgPSBzY2FsZTsKLSAgICAgICAgICAgIFtsYXlvdXRTdHJhdGVneSBfdXBkYXRlVHJhbnNp
ZW50U2NhbGU6c2NhbGVdOwotICAgICAgICAgICAgbGF5b3V0U3RyYXRlZ3ktPl9pc1dhaXRpbmdG
b3JDb21taXQgPSBOTzsKLQotICAgICAgICAgICAgaWYgKGxheW91dFN0cmF0ZWd5LT5faGFzUGVu
ZGluZ0xheW91dCkKLSAgICAgICAgICAgICAgICBbbGF5b3V0U3RyYXRlZ3kgdXBkYXRlTGF5b3V0
XTsKLSAgICAgICAgfV07Ci0gICAgfSk7Ci0jZWxzZQotICAgIF9wYWdlLT5zY2FsZVZpZXcoc2Nh
bGUpOwotICAgIF93a1ZpZXcuX3Jvb3RMYXllci50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNESWRl
bnRpdHk7Ci0jZW5kaWYKLX0KLQotLSAodm9pZClkaWRDaGFuZ2VNaW5pbXVtVmlld1NpemUKLXsK
LSAgICBbc3VwZXIgZGlkQ2hhbmdlTWluaW11bVZpZXdTaXplXTsKLQotICAgIFtzZWxmIHVwZGF0
ZUxheW91dF07Ci19Ci0KLS0gKHZvaWQpd2lsbFN0YXJ0TGl2ZVJlc2l6ZQotewotICAgIFtzdXBl
ciB3aWxsU3RhcnRMaXZlUmVzaXplXTsKLQotICAgIFtfd2tWaWV3IGRpc2FibGVGcmFtZVNpemVV
cGRhdGVzXTsKLX0KLQotLSAodm9pZClkaWRFbmRMaXZlUmVzaXplCi17Ci0gICAgW3N1cGVyIGRp
ZEVuZExpdmVSZXNpemVdOwotCi0gICAgW3NlbGYgdXBkYXRlTGF5b3V0XTsKLSAgICBbX3drVmll
dyBlbmFibGVGcmFtZVNpemVVcGRhdGVzXTsKLX0KLQotLSAodm9pZClkaWRDaGFuZ2VGcmFtZVNp
emUKLXsKLSAgICBbc3VwZXIgZGlkQ2hhbmdlRnJhbWVTaXplXTsKLQotICAgIFtzZWxmIHVwZGF0
ZUxheW91dF07Ci19Ci0KLS0gKHZvaWQpd2lsbENoYW5nZUxheW91dFN0cmF0ZWd5Ci17Ci0gICAg
X3drVmlldy5fcm9vdExheWVyLnRyYW5zZm9ybSA9IENBVHJhbnNmb3JtM0RJZGVudGl0eTsKLSAg
ICBfcGFnZS0+c2NhbGVWaWV3KDEpOwotfQotCi1AZW5kCi0KIEBpbXBsZW1lbnRhdGlvbiBXS1Zp
ZXdEeW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNpemVMYXlvdXRTdHJhdGVn
eQogCiAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhQYWdlOihXZWJQYWdlUHJveHkmKXBhZ2Ugdmll
dzooV0tWaWV3ICopd2tWaWV3IG1vZGU6KFdLTGF5b3V0TW9kZSltb2RlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oCmluZGV4IDNhZDE5MTcwYzZl
MDUxNjlmYzg1NjAyMmU4YmJmZDQ1MzcwMWRhNzkuLjQ0YWVjMDJiZGRmMGY4NzE5OTY1MTczNGM5
MWFlZmM2YjE0ZmE2OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9EcmF3aW5nQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9EcmF3aW5nQXJlYS5oCkBAIC0xMzIsOCArMTMyLDYgQEAgcHVibGljOgogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIC8vIFVzZWQgYnkgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuCiAg
ICAgdmlydHVhbCB2b2lkIHVwZGF0ZUdlb21ldHJ5KGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHZp
ZXdTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBsYXllclBvc2l0aW9uLCBib29sIGZsdXNo
U3luY2hyb25vdXNseSwgY29uc3QgV2ViQ29yZTo6TWFjaFNlbmRSaWdodCYgZmVuY2VQb3J0KSB7
IH0KLQotICAgIHZpcnR1YWwgdm9pZCByZXBseVdpdGhGZW5jZUFmdGVyTmV4dEZsdXNoKHVpbnQ2
NF90IGNhbGxiYWNrSUQpIHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IH0KICNlbmRpZgogCiBwcm90
ZWN0ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAK
aW5kZXggMGQ3YjlkZmYzMWU0MmJhNjk0ZmJkODM3NzEzYTk4N2NjZWMwMDNmMC4uMTJmZjQ0NTRj
MjUzODczNTJmMzFjZDU2NTIyNjAzZTYxMGUyNmMwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMTQ5MiwxNSArMTQ5Miw2IEBAIHZvaWQg
V2ViUGFnZTo6c2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKICAgICBzY2FsZVBhZ2UocGFnZVNjYWxl
LCBzY3JvbGxQb3NpdGlvbkF0TmV3U2NhbGUpOwogfQogCi0jaWYgUExBVEZPUk0oQ09DT0EpCi12
b2lkIFdlYlBhZ2U6OnNjYWxlVmlld0FuZFVwZGF0ZUdlb21ldHJ5RmVuY2VkKGRvdWJsZSBzY2Fs
ZSwgSW50U2l6ZSB2aWV3U2l6ZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKLXsKLSAgICBzY2FsZVZp
ZXcoc2NhbGUpOwotICAgIG1fZHJhd2luZ0FyZWEtPnVwZGF0ZUdlb21ldHJ5KHZpZXdTaXplLCBJ
bnRTaXplKCksIGZhbHNlLCBNYWNoU2VuZFJpZ2h0KCkpOwotICAgIG1fZHJhd2luZ0FyZWEtPnJl
cGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2goY2FsbGJhY2tJRCk7Ci19Ci0jZW5kaWYKLQogdm9p
ZCBXZWJQYWdlOjpzZXREZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBzY2FsZUZhY3RvcikKIHsKICAg
ICBpZiAoc2NhbGVGYWN0b3IgPT0gbV9wYWdlLT5kZXZpY2VTY2FsZUZhY3RvcigpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggMWUyZjYxYWY3ZDJk
ZDE2MDE5ZTQ5MTBjYzE1M2NjNWEzMmEzMzQ0ZC4uNDM2MjQ0Y2RjOTVlMDU2NTMwMjU3NGQzMWU3
MzZmNTRhM2ExNGYwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCkBAIC0zNzAsOSArMzcwLDYgQEAgcHVibGljOgogICAgIGRvdWJsZSB0b3RhbFNjYWxl
RmFjdG9yKCkgY29uc3Q7CiAgICAgZG91YmxlIHZpZXdTY2FsZUZhY3RvcigpIGNvbnN0OwogICAg
IHZvaWQgc2NhbGVWaWV3KGRvdWJsZSBzY2FsZSk7Ci0jaWYgUExBVEZPUk0oQ09DT0EpCi0gICAg
dm9pZCBzY2FsZVZpZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZChkb3VibGUgc2NhbGUsIFdlYkNv
cmU6OkludFNpemUgdmlld1NpemUsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotI2VuZGlmCiAKICAg
ICB2b2lkIHNldFVzZUZpeGVkTGF5b3V0KGJvb2wpOwogICAgIGJvb2wgdXNlRml4ZWRMYXlvdXQo
KSBjb25zdCB7IHJldHVybiBtX3VzZUZpeGVkTGF5b3V0OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IGE2NDcx
ODBiODk4OGNiMzdkMGE3MDkyODNlODQ1MTA4MjFhODJjNTUuLjQ5ZWY3OWMwOWQ5ZDI3ZTU2YzE4
ODRkMWUzM2VlOTg2NjI4Zjk0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0xOTgsOSArMTk4LDYgQEAgbWVz
c2FnZXMgLT4gV2ViUGFnZSBMZWdhY3lSZWNlaXZlciB7CiAgICAgU2NhbGVQYWdlKGRvdWJsZSBz
Y2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgb3JpZ2luKQogICAgIFNjYWxlUGFnZUluVmlld0Nvb3Jk
aW5hdGVzKGRvdWJsZSBzY2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgY2VudGVySW5WaWV3Q29vcmRp
bmF0ZXMpCiAgICAgU2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKLSNpZiBQTEFURk9STShDT0NPQSkK
LSAgICBTY2FsZVZpZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZChkb3VibGUgc2NhbGUsIFdlYkNv
cmU6OkludFNpemUgdmlld1NpemUsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCi0jZW5kaWYKIAogICAg
IFNldFVzZUZpeGVkTGF5b3V0KGJvb2wgZml4ZWQpCiAgICAgU2V0Rml4ZWRMYXlvdXRTaXplKFdl
YkNvcmU6OkludFNpemUgc2l6ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWEuaAppbmRleCAwYWJlZTIzZWFjYzk0NWI5MzBjOTQ0MDRmNjIwY2NiMTZiOWE3NzdjLi4xNzRm
NTlkNzVmMTZjYTBlNzk0MzAyZWRmOWI4NzBiMzZlYmIzNDM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdB
cmVhLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYS5oCkBAIC04Niw4ICs4Niw2IEBAIHByaXZhdGU6CiAKICAg
ICB2aXJ0dWFsIHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCB2
b2lkIHJlcGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2godWludDY0X3QgY2FsbGJhY2tJRCkgb3Zl
cnJpZGU7Ci0KICAgICAvLyBXZWJDb3JlOjpMYXllckZsdXNoU2NoZWR1bGVyQ2xpZW50CiAgICAg
dmlydHVhbCBib29sIGZsdXNoTGF5ZXJzKCkgb3ZlcnJpZGU7CiAKQEAgLTE1Miw3ICsxNTAsNiBA
QCBwcml2YXRlOgogCiAgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllciogbV92aWV3T3ZlcmxheVJv
b3RMYXllcjsKIAotICAgIFZlY3Rvcjx1aW50NjRfdD4gbV9mZW5jZUNhbGxiYWNrc0ZvckFmdGVy
TmV4dEZsdXNoOwogICAgIGJvb2wgbV9zaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50IHsgZmFs
c2UgfTsKICAgICBib29sIG1faXNTY2FsaW5nVmlld1RvRml0RG9jdW1lbnQgeyBmYWxzZSB9Owog
ICAgIFdlYkNvcmU6OkludFNpemUgbV9sYXN0Vmlld1NpemVGb3JTY2FsZVRvRml0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmlt
YXRpb25EcmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9t
YWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW0KaW5kZXggYmRlYjM2NTg0ZGM5ZDQx
MzJlMWE5ZTcyMDRiMjk4OTNlYWZlNTc0Ny4uOWQxYTliZWNkZGViYjFjODA5Zjk0ZGZhMzIxZmJj
MzA3YzFiZjk5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1t
CkBAIC00NDAsMTYgKzQ0MCw2IEBAIGJvb2wgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6
OmZsdXNoTGF5ZXJzKCkKICAgICAgICAgaWYgKG1fdHJhbnNpZW50Wm9vbVNjYWxlICE9IDEpCiAg
ICAgICAgICAgICBhcHBseVRyYW5zaWVudFpvb21Ub0xheWVycyhtX3RyYW5zaWVudFpvb21TY2Fs
ZSwgbV90cmFuc2llbnRab29tT3JpZ2luKTsKIAotICAgICAgICBpZiAoIW1fZmVuY2VDYWxsYmFj
a3NGb3JBZnRlck5leHRGbHVzaC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIE1hY2hTZW5kUmln
aHQgZmVuY2VQb3J0ID0gbV9sYXllckhvc3RpbmdDb250ZXh0LT5jcmVhdGVGZW5jZVBvcnQoKTsK
LQotICAgICAgICAgICAgZm9yIChhdXRvIGNhbGxiYWNrSUQgOiBtX2ZlbmNlQ2FsbGJhY2tzRm9y
QWZ0ZXJOZXh0Rmx1c2gpCi0gICAgICAgICAgICAgICAgbV93ZWJQYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6TWFjaFNlbmRSaWdodENhbGxiYWNrKGZlbmNlUG9ydCwgY2FsbGJhY2tJ
RCkpOwotICAgICAgICAgICAgbV9mZW5jZUNhbGxiYWNrc0ZvckFmdGVyTmV4dEZsdXNoLmNsZWFy
KCk7Ci0KLSAgICAgICAgICAgIG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+c2V0RmVuY2VQb3J0KGZl
bmNlUG9ydC5zZW5kUmlnaHQoKSk7Ci0gICAgICAgIH0KLQogICAgICAgICByZXR1cm4gcmV0dXJu
VmFsdWU7CiAgICAgfQogfQpAQCAtODc0LDExICs4NjQsNiBAQCB2b2lkIFRpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhOjphZGRGZW5jZShjb25zdCBNYWNoU2VuZFJpZ2h0JiBmZW5jZVBvcnQp
CiAgICAgbV9sYXllckhvc3RpbmdDb250ZXh0LT5zZXRGZW5jZVBvcnQoZmVuY2VQb3J0LnNlbmRS
aWdodCgpKTsKIH0KIAotdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6cmVwbHlX
aXRoRmVuY2VBZnRlck5leHRGbHVzaCh1aW50NjRfdCBjYWxsYmFja0lEKQotewotICAgIG1fZmVu
Y2VDYWxsYmFja3NGb3JBZnRlck5leHRGbHVzaC5hcHBlbmQoY2FsbGJhY2tJRCk7Ci19Ci0KIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPUykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260110</attachid>
            <date>2015-08-27 19:25:37 -0700</date>
            <delta_ts>2015-08-28 10:36:16 -0700</delta_ts>
            <desc>same patch again</desc>
            <filename>bug-148554-20150827190057.patch</filename>
            <type>text/plain</type>
            <size>23475</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg5MDc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjI2YjdkNGVmN2JkOGEw
MjIyMWE5ZDFhZGQyYTVmNTgzZWIwNjE4Zi4uNGUzMGEyNDIyMjRlN2NlODg2NzUwZWM3NWU2YjQ5
MWRiNzU3Mjk3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ3IEBACiAyMDE1LTA4LTI3ICBUaW1v
dGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAorICAgICAgICBHZXQgcmlk
IG9mIHRoZSBEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemUgbGF5b3V0IG1vZGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODU1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9DL1dLTGF5b3V0TW9kZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tOgor
ICAgICAgICAoLVtXS1dlYlZpZXcgX2xheW91dE1vZGVdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3
IF9zZXRMYXlvdXRNb2RlOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgX3NldE1pbmltdW1WaWV3
U2l6ZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tXZWJWaWV3IF9taW5pbXVtVmlld1NpemVd
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZh
dGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xheW91dE1vZGUuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW06CisgICAgICAgICgtW1dLVmlldyBf
c2V0TWluaW11bVZpZXdTaXplOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1ZpZXcgX21pbmlt
dW1WaWV3U2l6ZV0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnNjYWxlVmlld0FuZFVwZGF0ZUdl
b21ldHJ5RmVuY2VkKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5tbToKKyAg
ICAgICAgKCtbV0tWaWV3TGF5b3V0U3RyYXRlZ3kgbGF5b3V0U3RyYXRlZ3lXaXRoUGFnZTp2aWV3
Om1vZGU6XSk6CisgICAgICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZUxheW91dFN0cmF0ZWd5IGluaXRXaXRoUGFnZTp2aWV3Om1vZGU6XSk6IERlbGV0ZWQuCisgICAg
ICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5
IF91cGRhdGVUcmFuc2llbnRTY2FsZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tWaWV3RHlu
YW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kgdXBkYXRlTGF5b3V0XSk6
IERlbGV0ZWQuCisgICAgICAgICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZUxheW91dFN0cmF0ZWd5IGRpZENoYW5nZU1pbmltdW1WaWV3U2l6ZV0pOiBEZWxldGVkLgorICAg
ICAgICAoLVtXS1ZpZXdEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVn
eSB3aWxsU3RhcnRMaXZlUmVzaXplXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVmlld0R5bmFt
aWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5IGRpZEVuZExpdmVSZXNpemVd
KTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tWaWV3RHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplTGF5b3V0U3RyYXRlZ3kgZGlkQ2hhbmdlRnJhbWVTaXplXSk6IERlbGV0ZWQuCisgICAgICAg
ICgtW1dLVmlld0R5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZUxheW91dFN0cmF0ZWd5IHdp
bGxDaGFuZ2VMYXlvdXRTdHJhdGVneV0pOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9EcmF3aW5nQXJlYS5oOgorICAgICAgICAoV2ViS2l0OjpEcmF3aW5nQXJlYTo6cmVw
bHlXaXRoRmVuY2VBZnRlck5leHRGbHVzaCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzY2FsZVZp
ZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29y
ZUFuaW1hdGlvbkRyYXdpbmdBcmVhLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21h
Yy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbToKKyAgICAgICAgKFdlYktpdDo6VGls
ZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnJlcGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2gp
OiBEZWxldGVkLgorCisyMDE1LTA4LTI3ICBUaW1vdGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KKwogICAgICAgICBWaWRlbyBmdWxsLXNjcmVlbiBzaG91bGRuJ3QgdXNlIHRo
ZSBEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemUgbGF5b3V0IG1vZGUKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODU1MwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tMYXlvdXRNb2RlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tMYXlvdXRNb2RlLmgKaW5kZXggNjcyNjZhNGI0ZGQw
MjllYmIzMmIzZGVmMjIxZTJiNTJkNTZkMTljMC4uNWU2NDhlNzg1MjQ4YzllYzBkY2U2ODIzZjBi
OTQyYzczNDhjZDdiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLTGF5b3V0TW9kZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0xh
eW91dE1vZGUuaApAQCAtMzYsNyArMzYsNyBAQCBlbnVtIHsKICAgICBrV0tMYXlvdXRNb2RlVmll
d1NpemUsCiAgICAga1dLTGF5b3V0TW9kZUZpeGVkU2l6ZSwKICAgICBrV0tMYXlvdXRNb2RlRHlu
YW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGUsCi0gICAga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplV2l0aE1pbmltdW1WaWV3U2l6ZSwKKyAgICBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRo
TWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQsIC8vIFRoaXMgbW9kZSBpcyBkZXByZWNhdGVkIGFu
ZCB3aWxsIGJlaGF2ZSBsaWtlIGtXS0xheW91dE1vZGVWaWV3U2l6ZS4KICAgICBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVDb21wdXRlZEZyb21NaW5pbXVtRG9jdW1lbnRTaXplCiB9OwogdHlwZWRl
ZiB1aW50MzJfdCBXS0xheW91dE1vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tWaWV3UHJpdmF0ZS5oCmluZGV4IDk4NGVhNzY4NTA4YmU5NDQwOTYzOGE3
ZGU1ZjFiOTVjY2E0OGM3YTEuLjllZWY5NmYyOGI0MmQzMWZjMjhjNDM2ZTAzNDQ3NzRkOGQ3OTY0
OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tWaWV3
UHJpdmF0ZS5oCkBAIC05NSw4ICs5NSw2IEBACiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRMYXlvdXRNb2RlOikgV0tMYXlvdXRNb2RlIF9sYXlvdXRNb2RlOwogLy8gRm9yIHVzZSB3
aXRoIF9sYXlvdXRNb2RlID0ga1dLTGF5b3V0TW9kZUZpeGVkU2l6ZToKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldEZpeGVkTGF5b3V0U2l6ZTopIENHU2l6ZSBfZml4ZWRMYXlvdXRT
aXplOwotLy8gRm9yIHVzZSB3aXRoIF9sYXlvdXRNb2RlID0ga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplV2l0aE1pbmltdW1WaWV3U2l6ZToKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3Nl
dE1pbmltdW1WaWV3U2l6ZTopIENHU2l6ZSBfbWluaW11bVZpZXdTaXplOwogCiBAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRWaWV3U2NhbGU6KSBDR0Zsb2F0IF92aWV3U2NhbGU7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5k
ZXggMDAwM2IyYWRhMDhlM2ZkNDczNWUwYWM1MDhiZmJhN2I2MTRhYWM5Yi4uOGQ2ZmQ0N2VmMDhl
ZTVhODgzZjZhNDY2N2QxNjQ4ZGUzZTJmNzc3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAgLTI1MDYsOCArMjUwNiw4IEBAIHN0YXRp
YyBpbmxpbmUgV2ViS2l0OjpGaW5kT3B0aW9ucyB0b0ZpbmRPcHRpb25zKF9XS0ZpbmRPcHRpb25z
IHdrRmluZE9wdGlvbnMpCiAgICAgICAgIHJldHVybiBfV0tMYXlvdXRNb2RlRml4ZWRTaXplOwog
ICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1NjYWxlOgog
ICAgICAgICByZXR1cm4gX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1Nj
YWxlOwotICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6
ZToKLSAgICAgICAgcmV0dXJuIF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmll
d1NpemU7CisgICAgY2FzZSBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplX0RlcHJlY2F0ZWQ6CisgICAgICAgIHJldHVybiBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVX
aXRoTWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQ7CiAgICAgY2FzZSBrV0tMYXlvdXRNb2RlRHlu
YW1pY1NpemVDb21wdXRlZEZyb21NaW5pbXVtRG9jdW1lbnRTaXplOgogICAgICAgICByZXR1cm4g
X1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZTsK
ICAgICBjYXNlIGtXS0xheW91dE1vZGVWaWV3U2l6ZToKQEAgLTI1MzAsOCArMjUzMCw4IEBAIHN0
YXRpYyBpbmxpbmUgV2ViS2l0OjpGaW5kT3B0aW9ucyB0b0ZpbmRPcHRpb25zKF9XS0ZpbmRPcHRp
b25zIHdrRmluZE9wdGlvbnMpCiAgICAgY2FzZSBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVDb21w
dXRlZEZyb21WaWV3U2NhbGU6CiAgICAgICAgIHdrVmlld0xheW91dE1vZGUgPSBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGU7CiAgICAgICAgIGJyZWFrOwotICAg
IGNhc2UgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3U2l6ZToKLSAgICAg
ICAgd2tWaWV3TGF5b3V0TW9kZSA9IGtXS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVt
Vmlld1NpemU7CisgICAgY2FzZSBfV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZp
ZXdTaXplX0RlcHJlY2F0ZWQ6CisgICAgICAgIHdrVmlld0xheW91dE1vZGUgPSBrV0tMYXlvdXRN
b2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplX0RlcHJlY2F0ZWQ7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11
bURvY3VtZW50U2l6ZToKICAgICAgICAgd2tWaWV3TGF5b3V0TW9kZSA9IGtXS0xheW91dE1vZGVE
eW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNpemU7CkBAIC0yNTc0LDIyICsy
NTc0LDYgQEAgc3RhdGljIGlubGluZSBXZWJLaXQ6OkZpbmRPcHRpb25zIHRvRmluZE9wdGlvbnMo
X1dLRmluZE9wdGlvbnMgd2tGaW5kT3B0aW9ucykKICNlbmRpZgogfQogCi0tICh2b2lkKV9zZXRN
aW5pbXVtVmlld1NpemU6KENHU2l6ZSltaW5pbXVtVmlld1NpemUKLXsKLSNpZiBQTEFURk9STShN
QUMpCi0gICAgW193a1ZpZXcgX3NldE1pbmltdW1WaWV3U2l6ZTptaW5pbXVtVmlld1NpemVdOwot
I2VuZGlmCi19Ci0KLS0gKENHU2l6ZSlfbWluaW11bVZpZXdTaXplCi17Ci0jaWYgUExBVEZPUk0o
TUFDKQotICAgIHJldHVybiBbX3drVmlldyBfbWluaW11bVZpZXdTaXplXTsKLSNlbHNlCi0gICAg
cmV0dXJuIENHU2l6ZVplcm87Ci0jZW5kaWYKLX0KLQogI3ByYWdtYSBtYXJrIHNjcm9sbHBlcmYg
bWV0aG9kcwogCiAtICh2b2lkKV9zZXRTY3JvbGxQZXJmb3JtYW5jZURhdGFDb2xsZWN0aW9uRW5h
YmxlZDooQk9PTCllbmFibGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCmluZGV4IGExZWRmOGIxN2YwOGIzNjBhOGE3OTI4
N2FhY2QyMzlmYmFmZWE0NTguLjEzZGVjNGNkODQ1NjcwZjEzNWRhOGJlYzU2YmY1NzZkNjc2MTRk
YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3UHJpdmF0ZS5oCkBAIC05OSw4ICs5OSw2IEBAIFdLX0VYVEVSTiBOU1N0cmluZyAqIGNv
bnN0IF9XS1Nob3VsZE9wZW5FeHRlcm5hbFVSTHNLZXkgV0tfQVZBSUxBQkxFKFdLX01BQ19UQkEs
CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRMYXlvdXRNb2RlOikgX1dLTGF5b3V0
TW9kZSBfbGF5b3V0TW9kZTsKIC8vIEZvciB1c2Ugd2l0aCBfbGF5b3V0TW9kZSA9IF9XS0xheW91
dE1vZGVGaXhlZFNpemU6CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRGaXhlZExh
eW91dFNpemU6KSBDR1NpemUgX2ZpeGVkTGF5b3V0U2l6ZTsKLS8vIEZvciB1c2Ugd2l0aCBfbGF5
b3V0TW9kZSA9IF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemU6Ci1A
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNaW5pbXVtVmlld1NpemU6KSBDR1NpemUg
X21pbmltdW1WaWV3U2l6ZTsKIAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Vmll
d1NjYWxlOikgQ0dGbG9hdCBfdmlld1NjYWxlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xheW91dE1vZGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGF5b3V0TW9kZS5oCmluZGV4IDZkMThlNTRkNTljMDVmZDNj
MzM1YTMzOTZhY2VmMDQyNGYxZWI3MzEuLjI3YzA3M2M3YTJkYWI5NzYzOWNjNzUzN2NhZDNlNjMy
OTAwNTA5MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGF5b3V0TW9kZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGF5b3V0TW9kZS5oCkBAIC0zNCw4ICszNCw4IEBAIHR5cGVkZWYgTlNfRU5VTShOU1VJbnRl
Z2VyLCBfV0tMYXlvdXRNb2RlKSB7CiAgICAgLy8gTGF5IG91dCB0aGUgdmlldyB3aXRoIGl0cyBm
cmFtZSBzY2FsZWQgYnkgdGhlIGludmVyc2Ugdmlld1NjYWxlLgogICAgIF9XS0xheW91dE1vZGVE
eW5hbWljU2l6ZUNvbXB1dGVkRnJvbVZpZXdTY2FsZSwKIAotICAgIC8vIExheSBvdXQgdGhlIHZp
ZXcgYXQgYSBoZXVyaXN0aWNhbGx5LWRldGVybWluZWQgc2l6ZSBiYXNlZCBvbiB0aGUgbWluaW11
bSB2aWV3IHNpemUuCi0gICAgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0aE1pbmltdW1WaWV3
U2l6ZSwKKyAgICAvLyBUaGlzIG1vZGUgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZWhhdmUgbGlr
ZSBrV0tMYXlvdXRNb2RlVmlld1NpemUuCisgICAgX1dLTGF5b3V0TW9kZUR5bmFtaWNTaXplV2l0
aE1pbmltdW1WaWV3U2l6ZV9EZXByZWNhdGVkLAogCiAgICAgLy8gTGF5IG91dCB0aGUgdmlldyBh
dCBhIGhldXJpc3RpY2FsbHktZGV0ZXJtaW5lZCBzaXplIGJhc2VkIG9uIHRoZSBtaW5pbXVtIHNp
emUgb2YgdGhlIGRvY3VtZW50LgogICAgIF9XS0xheW91dE1vZGVEeW5hbWljU2l6ZUNvbXB1dGVk
RnJvbU1pbmltdW1Eb2N1bWVudFNpemUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21h
Yy9XS1ZpZXcubW0KaW5kZXggZGExZTVmZDRlMDc2ZTgzNjRkMDI1MjMzNzI5YzJhYjhiYWRiYTRj
ZC4uNjhlYzM3NGFmNTUxNzdkNTgwOGRlYjYwN2EyMmIzNGRhYzNkZTg0OCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQpAQCAtMjY3LDcgKzI2Nyw2IEBAIHN0
cnVjdCBXS1ZpZXdJbnRlcnByZXRLZXlFdmVudHNQYXJhbWV0ZXJzIHsKICAgICBSZXRhaW5QdHI8
V0tWaWV3TGF5b3V0U3RyYXRlZ3k+IF9sYXlvdXRTdHJhdGVneTsKICAgICBXS0xheW91dE1vZGUg
X2xhc3RSZXF1ZXN0ZWRMYXlvdXRNb2RlOwogICAgIGZsb2F0IF9sYXN0UmVxdWVzdGVkVmlld1Nj
YWxlOwotICAgIENHU2l6ZSBfbWluaW11bVZpZXdTaXplOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IF9yb290TGF5ZXI7CiAKQEAgLTQzOTAsMTcgKzQzODksNiBAQCBzdGF0aWMgTlNTdHJpbmcg
KnBhdGhXaXRoVW5pcXVlRmlsZW5hbWVGb3JQYXRoKE5TU3RyaW5nICpwYXRoKQogICAgIFtfZGF0
YS0+X2xheW91dFN0cmF0ZWd5IGRpZENoYW5nZVZpZXdTY2FsZV07CiB9CiAKLS0gKHZvaWQpX3Nl
dE1pbmltdW1WaWV3U2l6ZTooQ0dTaXplKW1pbmltdW1WaWV3U2l6ZQotewotICAgIF9kYXRhLT5f
bWluaW11bVZpZXdTaXplID0gbWluaW11bVZpZXdTaXplOwotICAgIFtfZGF0YS0+X2xheW91dFN0
cmF0ZWd5IGRpZENoYW5nZU1pbmltdW1WaWV3U2l6ZV07Ci19Ci0KLS0gKENHU2l6ZSlfbWluaW11
bVZpZXdTaXplCi17Ci0gICAgcmV0dXJuIF9kYXRhLT5fbWluaW11bVZpZXdTaXplOwotfQotCiAt
ICh2b2lkKV9kaXNwYXRjaFNldFRvcENvbnRlbnRJbnNldAogewogICAgIGlmICghX2RhdGEtPl9k
aWRTY2hlZHVsZVNldFRvcENvbnRlbnRJbnNldCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKaW5kZXggNGNlZWEwY2FjYmUxYTYxYjk3OGM1MzE2MzhkMjAxMGIzOWJj
MTcwMC4uN2M5MzUzYjdkOTZkYTdhYWU2OTU0YjMxYjUwMTFlNDNhYjdmOGY5NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTIyNzUsMjIgKzIyNzUsNiBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6c2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKICAgICBtX3Byb2Nl
c3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNjYWxlVmlldyhzY2FsZSksIG1fcGFnZUlEKTsK
IH0KIAotI2lmIFBMQVRGT1JNKENPQ09BKQotdm9pZCBXZWJQYWdlUHJveHk6OnNjYWxlVmlld0Fu
ZFVwZGF0ZUdlb21ldHJ5RmVuY2VkKGRvdWJsZSBzY2FsZSwgSW50U2l6ZSB2aWV3U2l6ZSwgc3Rk
OjpmdW5jdGlvbjx2b2lkIChjb25zdCBNYWNoU2VuZFJpZ2h0JiwgQ2FsbGJhY2tCYXNlOjpFcnJv
cik+IGNhbGxiYWNrKQotewotICAgIGlmICghaXNWYWxpZCgpKSB7Ci0gICAgICAgIGNhbGxiYWNr
KE1hY2hTZW5kUmlnaHQoKSwgQ2FsbGJhY2tCYXNlOjpFcnJvcjo6T3duZXJXYXNJbnZhbGlkYXRl
ZCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBtX3ZpZXdTY2FsZUZhY3RvciA9IHNj
YWxlOwotICAgIGlmIChtX2RyYXdpbmdBcmVhKQotICAgICAgICBtX2RyYXdpbmdBcmVhLT53aWxs
U2VuZFVwZGF0ZUdlb21ldHJ5KCk7Ci0gICAgdWludDY0X3QgY2FsbGJhY2tJRCA9IG1fY2FsbGJh
Y2tzLnB1dChXVEY6Om1vdmUoY2FsbGJhY2spLCBtX3Byb2Nlc3MtPnRocm90dGxlcigpLmJhY2tn
cm91bmRBY3Rpdml0eVRva2VuKCkpOwotICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6U2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlGZW5jZWQoc2NhbGUsIHZpZXdTaXplLCBj
YWxsYmFja0lEKSwgbV9wYWdlSUQpOwotfQotI2VuZGlmCi0KIHZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXRJbnRyaW5zaWNEZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBzY2FsZUZhY3RvcikKIHsKICAgICBp
ZiAobV9pbnRyaW5zaWNEZXZpY2VTY2FsZUZhY3RvciA9PSBzY2FsZUZhY3RvcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCAxODkyZDc5ZTkzMzExMTZlN2YwM2E0
NDc1ZTBkMjIzZmVlMGYyODgyLi4zMmVmNmFlY2JjNmEzOWQxY2ZiN2E2OGYwMTBiZGM5MmQ3Zjgy
ODg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC02NDIsOSAr
NjQyLDYgQEAgcHVibGljOgogICAgIGRvdWJsZSBwYWdlU2NhbGVGYWN0b3IoKSBjb25zdDsKICAg
ICBkb3VibGUgdmlld1NjYWxlRmFjdG9yKCkgY29uc3QgeyByZXR1cm4gbV92aWV3U2NhbGVGYWN0
b3I7IH0KICAgICB2b2lkIHNjYWxlVmlldyhkb3VibGUgc2NhbGUpOwotI2lmIFBMQVRGT1JNKENP
Q09BKQotICAgIHZvaWQgc2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlGZW5jZWQoZG91YmxlIHNj
YWxlLCBXZWJDb3JlOjpJbnRTaXplIHZpZXdTaXplLCBzdGQ6OmZ1bmN0aW9uPHZvaWQgKGNvbnN0
IFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQmLCBDYWxsYmFja0Jhc2U6OkVycm9yKT4pOwotI2VuZGlm
CiAgICAgdm9pZCBzZXRTaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KGJvb2wpOwogICAgIAog
ICAgIGJvb2wgdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgpIHsgcmV0dXJuIG1fdXNlckNv
bnRlbnRFeHRlbnNpb25zRW5hYmxlZDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVneS5oCmluZGV4IGU5OWQ5ZmUwYmM4ODkyNzAyMTAy
NTU3NjIyZTRiMDRkYzAxMjBhOTYuLjdiMzJiMjY5YThhZTdhMDIxMmM4M2U1YjFiMTAzMjI2NDBj
ODVjNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tWaWV3TGF5
b3V0U3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLVmlld0xh
eW91dFN0cmF0ZWd5LmgKQEAgLTU0LDcgKzU0LDYgQEAgY2xhc3MgV2ViUGFnZVByb3h5OwogLSAo
Qk9PTClmcmFtZVNpemVVcGRhdGVzRGlzYWJsZWQ7CiAKIC0gKHZvaWQpZGlkQ2hhbmdlVmlld1Nj
YWxlOwotLSAodm9pZClkaWRDaGFuZ2VNaW5pbXVtVmlld1NpemU7CiAtICh2b2lkKXdpbGxTdGFy
dExpdmVSZXNpemU7CiAtICh2b2lkKWRpZEVuZExpdmVSZXNpemU7CiAtICh2b2lkKWRpZENoYW5n
ZUZyYW1lU2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tW
aWV3TGF5b3V0U3RyYXRlZ3kubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dLVmll
d0xheW91dFN0cmF0ZWd5Lm1tCmluZGV4IDA5YTQ1YzY2NDc0MGEwNDMyMjk3MjFhMDkzYmJjYzYy
OTBjNjJhODYuLjJlMGM5MTNkOTY4NDdlZWZkYmFiMDA4MTA3Y2RmYmJmNmZiNmNjY2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV0tWaWV3TGF5b3V0U3RyYXRlZ3ku
bW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XS1ZpZXdMYXlvdXRTdHJhdGVn
eS5tbQpAQCAtNDUsMTMgKzQ1LDYgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIEBpbnRlcmZh
Y2UgV0tWaWV3RHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGVMYXlvdXRTdHJhdGVneSA6
IFdLVmlld0xheW91dFN0cmF0ZWd5CiBAZW5kCiAKLUBpbnRlcmZhY2UgV0tWaWV3RHluYW1pY1Np
emVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kgOiBXS1ZpZXdMYXlvdXRTdHJhdGVn
eSB7Ci0gICAgQk9PTCBfaXNXYWl0aW5nRm9yQ29tbWl0OwotICAgIEJPT0wgX2hhc1BlbmRpbmdM
YXlvdXQ7Ci0gICAgQ0dGbG9hdCBfbGFzdENvbW1pdHRlZFZpZXdTY2FsZTsKLX0KLUBlbmQKLQog
QGludGVyZmFjZSBXS1ZpZXdEeW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNp
emVMYXlvdXRTdHJhdGVneSA6IFdLVmlld0xheW91dFN0cmF0ZWd5CiBAZW5kCiAKQEAgLTY4LDEz
ICs2MSwxMSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogICAgIGNhc2Uga1dLTGF5b3V0TW9k
ZUR5bmFtaWNTaXplQ29tcHV0ZWRGcm9tVmlld1NjYWxlOgogICAgICAgICBzdHJhdGVneSA9IFtb
V0tWaWV3RHluYW1pY1NpemVDb21wdXRlZEZyb21WaWV3U2NhbGVMYXlvdXRTdHJhdGVneSBhbGxv
Y10gaW5pdFdpdGhQYWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsKICAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSBrV0tMYXlvdXRNb2RlRHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXpl
OgotICAgICAgICBzdHJhdGVneSA9IFtbV0tWaWV3RHluYW1pY1NpemVXaXRoTWluaW11bVZpZXdT
aXplTGF5b3V0U3RyYXRlZ3kgYWxsb2NdIGluaXRXaXRoUGFnZTpwYWdlIHZpZXc6d2tWaWV3IG1v
ZGU6bW9kZV07Ci0gICAgICAgIGJyZWFrOwogICAgIGNhc2Uga1dLTGF5b3V0TW9kZUR5bmFtaWNT
aXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZToKICAgICAgICAgc3RyYXRlZ3kgPSBb
W1dLVmlld0R5bmFtaWNTaXplQ29tcHV0ZWRGcm9tTWluaW11bURvY3VtZW50U2l6ZUxheW91dFN0
cmF0ZWd5IGFsbG9jXSBpbml0V2l0aFBhZ2U6cGFnZSB2aWV3OndrVmlldyBtb2RlOm1vZGVdOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIGtXS0xheW91dE1vZGVWaWV3U2l6ZToKKyAgICBjYXNl
IGtXS0xheW91dE1vZGVEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVfRGVwcmVjYXRlZDoK
ICAgICBkZWZhdWx0OgogICAgICAgICBzdHJhdGVneSA9IFtbV0tWaWV3Vmlld1NpemVMYXlvdXRT
dHJhdGVneSBhbGxvY10gaW5pdFdpdGhQYWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsK
ICAgICAgICAgYnJlYWs7CkBAIC0xMzcsMTAgKzEyOCw2IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJL
aXQ7CiB7CiB9CiAKLS0gKHZvaWQpZGlkQ2hhbmdlTWluaW11bVZpZXdTaXplCi17Ci19Ci0KIC0g
KHZvaWQpd2lsbFN0YXJ0TGl2ZVJlc2l6ZQogewogfQpAQCAtMjQ0LDE0MiArMjMxLDYgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYktpdDsKIAogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV0tWaWV3RHlu
YW1pY1NpemVXaXRoTWluaW11bVZpZXdTaXplTGF5b3V0U3RyYXRlZ3kKLQotLSAoaW5zdGFuY2V0
eXBlKWluaXRXaXRoUGFnZTooV2ViUGFnZVByb3h5JilwYWdlIHZpZXc6KFdLVmlldyAqKXdrVmll
dyBtb2RlOihXS0xheW91dE1vZGUpbW9kZQotewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhQ
YWdlOnBhZ2Ugdmlldzp3a1ZpZXcgbW9kZTptb2RlXTsKLQotICAgIGlmICghc2VsZikKLSAgICAg
ICAgcmV0dXJuIG5pbDsKLQotICAgIHBhZ2Uuc2V0VXNlRml4ZWRMYXlvdXQodHJ1ZSk7Ci0gICAg
X2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPSBfcGFnZS0+dmlld1NjYWxlRmFjdG9yKCk7Ci0KLSAg
ICByZXR1cm4gc2VsZjsKLX0KLQotLSAodm9pZClfdXBkYXRlVHJhbnNpZW50U2NhbGU6KENHRmxv
YXQpc2NhbGUKLXsKLSAgICBmbG9hdCB0b3BDb250ZW50SW5zZXQgPSBfcGFnZS0+dG9wQ29udGVu
dEluc2V0KCk7Ci0KLSAgICBDR0Zsb2F0IHJlbGF0aXZlU2NhbGUgPSBzY2FsZSAvIF9sYXN0Q29t
bWl0dGVkVmlld1NjYWxlOwotCi0gICAgQ0FUcmFuc2Zvcm0zRCB0cmFuc2Zvcm0gPSBDQVRyYW5z
Zm9ybTNETWFrZVRyYW5zbGF0aW9uKDAsIHRvcENvbnRlbnRJbnNldCAtICh0b3BDb250ZW50SW5z
ZXQgKiByZWxhdGl2ZVNjYWxlKSwgMCk7Ci0gICAgdHJhbnNmb3JtID0gQ0FUcmFuc2Zvcm0zRFNj
YWxlKHRyYW5zZm9ybSwgcmVsYXRpdmVTY2FsZSwgcmVsYXRpdmVTY2FsZSwgMSk7Ci0KLSAgICBf
d2tWaWV3Ll9yb290TGF5ZXIudHJhbnNmb3JtID0gdHJhbnNmb3JtOwotfQotCi0tICh2b2lkKXVw
ZGF0ZUxheW91dAotewotICAgIF9oYXNQZW5kaW5nTGF5b3V0ID0gTk87Ci0KLSAgICBDR0Zsb2F0
IHNjYWxlID0gMTsKLQotICAgIENHRmxvYXQgbWluaW11bVZpZXdXaWR0aCA9IF93a1ZpZXcuX21p
bmltdW1WaWV3U2l6ZS53aWR0aDsKLSAgICBDR0Zsb2F0IG1pbmltdW1WaWV3SGVpZ2h0ID0gX3dr
Vmlldy5fbWluaW11bVZpZXdTaXplLmhlaWdodDsKLQotICAgIENHRmxvYXQgZml4ZWRMYXlvdXRX
aWR0aCA9IF93a1ZpZXcuZnJhbWUuc2l6ZS53aWR0aDsKLSAgICBDR0Zsb2F0IGZpeGVkTGF5b3V0
SGVpZ2h0ID0gX3drVmlldy5mcmFtZS5zaXplLmhlaWdodDsKLQotICAgIGlmIChOU0lzRW1wdHlS
ZWN0KF93a1ZpZXcuZnJhbWUpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoX3drVmlldy5m
cmFtZS5zaXplLndpZHRoIDwgbWluaW11bVZpZXdXaWR0aCkgewotICAgICAgICBzY2FsZSA9IF93
a1ZpZXcuZnJhbWUuc2l6ZS53aWR0aCAvIG1pbmltdW1WaWV3V2lkdGg7Ci0gICAgICAgIGZpeGVk
TGF5b3V0V2lkdGggPSBtaW5pbXVtVmlld1dpZHRoOwotICAgIH0KLQotICAgIGlmIChfd2tWaWV3
LmZyYW1lLnNpemUuaGVpZ2h0IDwgbWluaW11bVZpZXdIZWlnaHQpIHsKLSAgICAgICAgc2NhbGUg
PSBzdGQ6Om1pbihfd2tWaWV3LmZyYW1lLnNpemUuaGVpZ2h0IC8gbWluaW11bVZpZXdIZWlnaHQs
IHNjYWxlKTsKLSAgICAgICAgZml4ZWRMYXlvdXRXaWR0aCA9IG1pbmltdW1WaWV3SGVpZ2h0Owot
ICAgIH0KLQotICAgIF9wYWdlLT5zZXRGaXhlZExheW91dFNpemUoSW50U2l6ZShmaXhlZExheW91
dFdpZHRoLCBmaXhlZExheW91dEhlaWdodCkpOwotCi0gICAgW3NlbGYgX3VwZGF0ZVRyYW5zaWVu
dFNjYWxlOnNjYWxlXTsKLQotICAgIGlmIChfaXNXYWl0aW5nRm9yQ29tbWl0KSB7Ci0gICAgICAg
IF9oYXNQZW5kaW5nTGF5b3V0ID0gWUVTOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAg
aWYgKFtfd2tWaWV3IGluTGl2ZVJlc2l6ZV0gJiYgX2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPT0g
MSAmJiBzY2FsZSA9PSAxICYmIF9mcmFtZVNpemVVcGRhdGVzRGlzYWJsZWRDb3VudCA9PSAxKSB7
Ci0gICAgICAgIC8vIFNlbmQgZnJhbWUgc2l6ZSB1cGRhdGVzIGlmIHdlJ3JlIHRoZSBvbmx5IG9u
ZXMgZGlzYWJsaW5nIHRoZW0sCi0gICAgICAgIC8vIGlmIHdlJ3JlIG5vdCBzY2FsaW5nIGRvd24u
IFRoYXQgd2F5LCBldmVyeXRoaW5nIHdpbGwgYmVoYXZlIGxpa2UgYSBub3JtYWwKLSAgICAgICAg
Ly8gcmVzaXplIGV4Y2VwdCBpbiB0aGUgY3JpdGljYWwgc2VjdGlvbi4KLSAgICAgICAgaWYgKF93
a1ZpZXcuc2hvdWxkQ2xpcFRvVmlzaWJsZVJlY3QpCi0gICAgICAgICAgICBbX3drVmlldyBfdXBk
YXRlVmlld0V4cG9zZWRSZWN0XTsKLSAgICAgICAgW193a1ZpZXcgX3NldERyYXdpbmdBcmVhU2l6
ZTpbX3drVmlldyBmcmFtZV0uc2l6ZV07Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBp
ZiAoX2xhc3RDb21taXR0ZWRWaWV3U2NhbGUgPT0gc2NhbGUpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIF9pc1dhaXRpbmdGb3JDb21taXQgPSBZRVM7Ci0KLSNpZiBQTEFURk9STShJT1MpIHx8IF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMDAwCi0gICAgUmV0YWluUHRyPENB
Q29udGV4dD4gY29udGV4dCA9IFtfd2tWaWV3LmxheWVyIGNvbnRleHRdOwotICAgIFJldGFpblB0
cjxXS1ZpZXdEeW5hbWljU2l6ZVdpdGhNaW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVneT4gcmV0
YWluZWRTZWxmID0gc2VsZjsKLSAgICBfcGFnZS0+c2NhbGVWaWV3QW5kVXBkYXRlR2VvbWV0cnlG
ZW5jZWQoc2NhbGUsIEludFNpemUoX3drVmlldy5mcmFtZS5zaXplKSwgW3JldGFpbmVkU2VsZiwg
Y29udGV4dCwgc2NhbGVdIChjb25zdCBXZWJDb3JlOjpNYWNoU2VuZFJpZ2h0JiBmZW5jZVBvcnQs
IENhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3IpIHsKLSAgICAgICAgaWYgKGVycm9yICE9IENhbGxi
YWNrQmFzZTo6RXJyb3I6Ok5vbmUpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgW2Nv
bnRleHQgc2V0RmVuY2VQb3J0OmZlbmNlUG9ydC5zZW5kUmlnaHQoKSBjb21taXRIYW5kbGVyOlty
ZXRhaW5lZFNlbGYsIHNjYWxlXSB7Ci0gICAgICAgICAgICBXS1ZpZXdEeW5hbWljU2l6ZVdpdGhN
aW5pbXVtVmlld1NpemVMYXlvdXRTdHJhdGVneSAqbGF5b3V0U3RyYXRlZ3kgPSByZXRhaW5lZFNl
bGYuZ2V0KCk7Ci0gICAgICAgICAgICBsYXlvdXRTdHJhdGVneS0+X2xhc3RDb21taXR0ZWRWaWV3
U2NhbGUgPSBzY2FsZTsKLSAgICAgICAgICAgIFtsYXlvdXRTdHJhdGVneSBfdXBkYXRlVHJhbnNp
ZW50U2NhbGU6c2NhbGVdOwotICAgICAgICAgICAgbGF5b3V0U3RyYXRlZ3ktPl9pc1dhaXRpbmdG
b3JDb21taXQgPSBOTzsKLQotICAgICAgICAgICAgaWYgKGxheW91dFN0cmF0ZWd5LT5faGFzUGVu
ZGluZ0xheW91dCkKLSAgICAgICAgICAgICAgICBbbGF5b3V0U3RyYXRlZ3kgdXBkYXRlTGF5b3V0
XTsKLSAgICAgICAgfV07Ci0gICAgfSk7Ci0jZWxzZQotICAgIF9wYWdlLT5zY2FsZVZpZXcoc2Nh
bGUpOwotICAgIF93a1ZpZXcuX3Jvb3RMYXllci50cmFuc2Zvcm0gPSBDQVRyYW5zZm9ybTNESWRl
bnRpdHk7Ci0jZW5kaWYKLX0KLQotLSAodm9pZClkaWRDaGFuZ2VNaW5pbXVtVmlld1NpemUKLXsK
LSAgICBbc3VwZXIgZGlkQ2hhbmdlTWluaW11bVZpZXdTaXplXTsKLQotICAgIFtzZWxmIHVwZGF0
ZUxheW91dF07Ci19Ci0KLS0gKHZvaWQpd2lsbFN0YXJ0TGl2ZVJlc2l6ZQotewotICAgIFtzdXBl
ciB3aWxsU3RhcnRMaXZlUmVzaXplXTsKLQotICAgIFtfd2tWaWV3IGRpc2FibGVGcmFtZVNpemVV
cGRhdGVzXTsKLX0KLQotLSAodm9pZClkaWRFbmRMaXZlUmVzaXplCi17Ci0gICAgW3N1cGVyIGRp
ZEVuZExpdmVSZXNpemVdOwotCi0gICAgW3NlbGYgdXBkYXRlTGF5b3V0XTsKLSAgICBbX3drVmll
dyBlbmFibGVGcmFtZVNpemVVcGRhdGVzXTsKLX0KLQotLSAodm9pZClkaWRDaGFuZ2VGcmFtZVNp
emUKLXsKLSAgICBbc3VwZXIgZGlkQ2hhbmdlRnJhbWVTaXplXTsKLQotICAgIFtzZWxmIHVwZGF0
ZUxheW91dF07Ci19Ci0KLS0gKHZvaWQpd2lsbENoYW5nZUxheW91dFN0cmF0ZWd5Ci17Ci0gICAg
X3drVmlldy5fcm9vdExheWVyLnRyYW5zZm9ybSA9IENBVHJhbnNmb3JtM0RJZGVudGl0eTsKLSAg
ICBfcGFnZS0+c2NhbGVWaWV3KDEpOwotfQotCi1AZW5kCi0KIEBpbXBsZW1lbnRhdGlvbiBXS1Zp
ZXdEeW5hbWljU2l6ZUNvbXB1dGVkRnJvbU1pbmltdW1Eb2N1bWVudFNpemVMYXlvdXRTdHJhdGVn
eQogCiAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhQYWdlOihXZWJQYWdlUHJveHkmKXBhZ2Ugdmll
dzooV0tWaWV3ICopd2tWaWV3IG1vZGU6KFdLTGF5b3V0TW9kZSltb2RlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oCmluZGV4IDNhZDE5MTcwYzZl
MDUxNjlmYzg1NjAyMmU4YmJmZDQ1MzcwMWRhNzkuLjQ0YWVjMDJiZGRmMGY4NzE5OTY1MTczNGM5
MWFlZmM2YjE0ZmE2OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9EcmF3aW5nQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9EcmF3aW5nQXJlYS5oCkBAIC0xMzIsOCArMTMyLDYgQEAgcHVibGljOgogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIC8vIFVzZWQgYnkgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuCiAg
ICAgdmlydHVhbCB2b2lkIHVwZGF0ZUdlb21ldHJ5KGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHZp
ZXdTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBsYXllclBvc2l0aW9uLCBib29sIGZsdXNo
U3luY2hyb25vdXNseSwgY29uc3QgV2ViQ29yZTo6TWFjaFNlbmRSaWdodCYgZmVuY2VQb3J0KSB7
IH0KLQotICAgIHZpcnR1YWwgdm9pZCByZXBseVdpdGhGZW5jZUFmdGVyTmV4dEZsdXNoKHVpbnQ2
NF90IGNhbGxiYWNrSUQpIHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IH0KICNlbmRpZgogCiBwcm90
ZWN0ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAK
aW5kZXggMGQ3YjlkZmYzMWU0MmJhNjk0ZmJkODM3NzEzYTk4N2NjZWMwMDNmMC4uMTJmZjQ0NTRj
MjUzODczNTJmMzFjZDU2NTIyNjAzZTYxMGUyNmMwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMTQ5MiwxNSArMTQ5Miw2IEBAIHZvaWQg
V2ViUGFnZTo6c2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKICAgICBzY2FsZVBhZ2UocGFnZVNjYWxl
LCBzY3JvbGxQb3NpdGlvbkF0TmV3U2NhbGUpOwogfQogCi0jaWYgUExBVEZPUk0oQ09DT0EpCi12
b2lkIFdlYlBhZ2U6OnNjYWxlVmlld0FuZFVwZGF0ZUdlb21ldHJ5RmVuY2VkKGRvdWJsZSBzY2Fs
ZSwgSW50U2l6ZSB2aWV3U2l6ZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKLXsKLSAgICBzY2FsZVZp
ZXcoc2NhbGUpOwotICAgIG1fZHJhd2luZ0FyZWEtPnVwZGF0ZUdlb21ldHJ5KHZpZXdTaXplLCBJ
bnRTaXplKCksIGZhbHNlLCBNYWNoU2VuZFJpZ2h0KCkpOwotICAgIG1fZHJhd2luZ0FyZWEtPnJl
cGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2goY2FsbGJhY2tJRCk7Ci19Ci0jZW5kaWYKLQogdm9p
ZCBXZWJQYWdlOjpzZXREZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBzY2FsZUZhY3RvcikKIHsKICAg
ICBpZiAoc2NhbGVGYWN0b3IgPT0gbV9wYWdlLT5kZXZpY2VTY2FsZUZhY3RvcigpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggMWUyZjYxYWY3ZDJk
ZDE2MDE5ZTQ5MTBjYzE1M2NjNWEzMmEzMzQ0ZC4uNDM2MjQ0Y2RjOTVlMDU2NTMwMjU3NGQzMWU3
MzZmNTRhM2ExNGYwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCkBAIC0zNzAsOSArMzcwLDYgQEAgcHVibGljOgogICAgIGRvdWJsZSB0b3RhbFNjYWxl
RmFjdG9yKCkgY29uc3Q7CiAgICAgZG91YmxlIHZpZXdTY2FsZUZhY3RvcigpIGNvbnN0OwogICAg
IHZvaWQgc2NhbGVWaWV3KGRvdWJsZSBzY2FsZSk7Ci0jaWYgUExBVEZPUk0oQ09DT0EpCi0gICAg
dm9pZCBzY2FsZVZpZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZChkb3VibGUgc2NhbGUsIFdlYkNv
cmU6OkludFNpemUgdmlld1NpemUsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwotI2VuZGlmCiAKICAg
ICB2b2lkIHNldFVzZUZpeGVkTGF5b3V0KGJvb2wpOwogICAgIGJvb2wgdXNlRml4ZWRMYXlvdXQo
KSBjb25zdCB7IHJldHVybiBtX3VzZUZpeGVkTGF5b3V0OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IGE2NDcx
ODBiODk4OGNiMzdkMGE3MDkyODNlODQ1MTA4MjFhODJjNTUuLjQ5ZWY3OWMwOWQ5ZDI3ZTU2YzE4
ODRkMWUzM2VlOTg2NjI4Zjk0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0xOTgsOSArMTk4LDYgQEAgbWVz
c2FnZXMgLT4gV2ViUGFnZSBMZWdhY3lSZWNlaXZlciB7CiAgICAgU2NhbGVQYWdlKGRvdWJsZSBz
Y2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgb3JpZ2luKQogICAgIFNjYWxlUGFnZUluVmlld0Nvb3Jk
aW5hdGVzKGRvdWJsZSBzY2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgY2VudGVySW5WaWV3Q29vcmRp
bmF0ZXMpCiAgICAgU2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKLSNpZiBQTEFURk9STShDT0NPQSkK
LSAgICBTY2FsZVZpZXdBbmRVcGRhdGVHZW9tZXRyeUZlbmNlZChkb3VibGUgc2NhbGUsIFdlYkNv
cmU6OkludFNpemUgdmlld1NpemUsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCi0jZW5kaWYKIAogICAg
IFNldFVzZUZpeGVkTGF5b3V0KGJvb2wgZml4ZWQpCiAgICAgU2V0Rml4ZWRMYXlvdXRTaXplKFdl
YkNvcmU6OkludFNpemUgc2l6ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWEuaAppbmRleCAwYWJlZTIzZWFjYzk0NWI5MzBjOTQ0MDRmNjIwY2NiMTZiOWE3NzdjLi4xNzRm
NTlkNzVmMTZjYTBlNzk0MzAyZWRmOWI4NzBiMzZlYmIzNDM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdB
cmVhLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYS5oCkBAIC04Niw4ICs4Niw2IEBAIHByaXZhdGU6CiAKICAg
ICB2aXJ0dWFsIHZvaWQgYXR0YWNoVmlld092ZXJsYXlHcmFwaGljc0xheWVyKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R3JhcGhpY3NMYXllciopIG92ZXJyaWRlOwogCi0gICAgdmlydHVhbCB2
b2lkIHJlcGx5V2l0aEZlbmNlQWZ0ZXJOZXh0Rmx1c2godWludDY0X3QgY2FsbGJhY2tJRCkgb3Zl
cnJpZGU7Ci0KICAgICAvLyBXZWJDb3JlOjpMYXllckZsdXNoU2NoZWR1bGVyQ2xpZW50CiAgICAg
dmlydHVhbCBib29sIGZsdXNoTGF5ZXJzKCkgb3ZlcnJpZGU7CiAKQEAgLTE1Miw3ICsxNTAsNiBA
QCBwcml2YXRlOgogCiAgICAgV2ViQ29yZTo6R3JhcGhpY3NMYXllciogbV92aWV3T3ZlcmxheVJv
b3RMYXllcjsKIAotICAgIFZlY3Rvcjx1aW50NjRfdD4gbV9mZW5jZUNhbGxiYWNrc0ZvckFmdGVy
TmV4dEZsdXNoOwogICAgIGJvb2wgbV9zaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50IHsgZmFs
c2UgfTsKICAgICBib29sIG1faXNTY2FsaW5nVmlld1RvRml0RG9jdW1lbnQgeyBmYWxzZSB9Owog
ICAgIFdlYkNvcmU6OkludFNpemUgbV9sYXN0Vmlld1NpemVGb3JTY2FsZVRvRml0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmlt
YXRpb25EcmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9t
YWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW0KaW5kZXggYmRlYjM2NTg0ZGM5ZDQx
MzJlMWE5ZTcyMDRiMjk4OTNlYWZlNTc0Ny4uOWQxYTliZWNkZGViYjFjODA5Zjk0ZGZhMzIxZmJj
MzA3YzFiZjk5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1t
CkBAIC00NDAsMTYgKzQ0MCw2IEBAIGJvb2wgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6
OmZsdXNoTGF5ZXJzKCkKICAgICAgICAgaWYgKG1fdHJhbnNpZW50Wm9vbVNjYWxlICE9IDEpCiAg
ICAgICAgICAgICBhcHBseVRyYW5zaWVudFpvb21Ub0xheWVycyhtX3RyYW5zaWVudFpvb21TY2Fs
ZSwgbV90cmFuc2llbnRab29tT3JpZ2luKTsKIAotICAgICAgICBpZiAoIW1fZmVuY2VDYWxsYmFj
a3NGb3JBZnRlck5leHRGbHVzaC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIE1hY2hTZW5kUmln
aHQgZmVuY2VQb3J0ID0gbV9sYXllckhvc3RpbmdDb250ZXh0LT5jcmVhdGVGZW5jZVBvcnQoKTsK
LQotICAgICAgICAgICAgZm9yIChhdXRvIGNhbGxiYWNrSUQgOiBtX2ZlbmNlQ2FsbGJhY2tzRm9y
QWZ0ZXJOZXh0Rmx1c2gpCi0gICAgICAgICAgICAgICAgbV93ZWJQYWdlLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6TWFjaFNlbmRSaWdodENhbGxiYWNrKGZlbmNlUG9ydCwgY2FsbGJhY2tJ
RCkpOwotICAgICAgICAgICAgbV9mZW5jZUNhbGxiYWNrc0ZvckFmdGVyTmV4dEZsdXNoLmNsZWFy
KCk7Ci0KLSAgICAgICAgICAgIG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+c2V0RmVuY2VQb3J0KGZl
bmNlUG9ydC5zZW5kUmlnaHQoKSk7Ci0gICAgICAgIH0KLQogICAgICAgICByZXR1cm4gcmV0dXJu
VmFsdWU7CiAgICAgfQogfQpAQCAtODc0LDExICs4NjQsNiBAQCB2b2lkIFRpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhOjphZGRGZW5jZShjb25zdCBNYWNoU2VuZFJpZ2h0JiBmZW5jZVBvcnQp
CiAgICAgbV9sYXllckhvc3RpbmdDb250ZXh0LT5zZXRGZW5jZVBvcnQoZmVuY2VQb3J0LnNlbmRS
aWdodCgpKTsKIH0KIAotdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6cmVwbHlX
aXRoRmVuY2VBZnRlck5leHRGbHVzaCh1aW50NjRfdCBjYWxsYmFja0lEKQotewotICAgIG1fZmVu
Y2VDYWxsYmFja3NGb3JBZnRlck5leHRGbHVzaC5hcHBlbmQoY2FsbGJhY2tJRCk7Ci19Ci0KIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPUykK
</data>
<flag name="review"
          id="285303"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>