<?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>153465</bug_id>
          
          <creation_ts>2016-01-25 16:39:20 -0800</creation_ts>
          <short_desc>[iOS] Documents without an explicit width should not get fast tapping</short_desc>
          <delta_ts>2016-01-26 12:10:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>jonlee</cc>
    
    <cc>kangil.han</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1158598</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-01-25 16:39:20 -0800</bug_when>
    <thetext>[iOS] Documents without an explicit width should not get fast tapping</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158608</commentid>
    <comment_count>1</comment_count>
      <attachid>269818</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-01-25 17:01:33 -0800</bug_when>
    <thetext>Created attachment 269818
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158621</commentid>
    <comment_count>2</comment_count>
      <attachid>269818</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-01-25 17:23:53 -0800</bug_when>
    <thetext>Comment on attachment 269818
Patch

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

&gt; Source/WebCore/dom/ViewportArguments.cpp:310
&gt; +static bool findSizeValue(const String&amp; keyString, const String&amp; valueString, Document* document, float&amp; sizeValue)

I think I have a minor preference to return the float, and have the bool&amp; as a param.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158623</commentid>
    <comment_count>3</comment_count>
      <attachid>269818</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2016-01-25 17:25:46 -0800</bug_when>
    <thetext>Comment on attachment 269818
Patch

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

&gt; Source/WebCore/ChangeLog:14
&gt; +        width was explicit. However, it turns out that those ImageDocuments

I found this bit to be somewhat confusing, since an ImageDocument&apos;s viewport is explicitly set, but the flag would ship across to the UI process as false. Maybe it would be wise to send over an IsImageDocument flag as well, or just leave a comment where the flag is defined that explains this nuance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158780</commentid>
    <comment_count>4</comment_count>
      <attachid>269875</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-01-26 03:12:04 -0800</bug_when>
    <thetext>Created attachment 269875
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158801</commentid>
    <comment_count>5</comment_count>
      <attachid>269875</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2016-01-26 06:48:32 -0800</bug_when>
    <thetext>Comment on attachment 269875
Patch

r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158874</commentid>
    <comment_count>6</comment_count>
      <attachid>269875</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-01-26 11:02:02 -0800</bug_when>
    <thetext>Comment on attachment 269875
Patch

Please make a test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158910</commentid>
    <comment_count>7</comment_count>
      <attachid>269902</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-01-26 12:00:47 -0800</bug_when>
    <thetext>Created attachment 269902
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158911</commentid>
    <comment_count>8</comment_count>
      <attachid>269902</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2016-01-26 12:02:35 -0800</bug_when>
    <thetext>Comment on attachment 269902
Patch

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

&gt; LayoutTests/fast/events/ios/viewport-no-width-value-allows-double-tap.html:10
&gt; +            uiController.doubleTapAtPoint(15, 400, function() {});

The uiScriptComplete should be inside the completion callback to doubleTapAtPoint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158916</commentid>
    <comment_count>9</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-01-26 12:10:23 -0800</bug_when>
    <thetext>Committed r195607: &lt;http://trac.webkit.org/changeset/195607&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269818</attachid>
            <date>2016-01-25 17:01:33 -0800</date>
            <delta_ts>2016-01-26 03:11:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153465-20160126120105.patch</filename>
            <type>text/plain</type>
            <size>12500</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1NDY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzRlOTkyZDNjNjZjMWU4
Mjg0NjY2NGIyMTA0MzJhODkwODM2M2YxMy4uMDIxZTg5YTgyMzdjMDhiOTMzOGVmZDQ1OTM1NjE5
MzhmOTgwNGRjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE2LTAxLTI1ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBEb2N1bWVudHMgd2l0
aG91dCBhbiBleHBsaWNpdCB3aWR0aCBzaG91bGQgbm90IGdldCBmYXN0IHRhcHBpbmcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzQ2NQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMjM5NjI1Mjk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQXMgdGhlIHRpdGxlIHNheXMsIGRvY3VtZW50cyB0aGF0IGRv
IG5vdCBzZXQgYSB2aWV3cG9ydCBzaG91bGQKKyAgICAgICAgbm90IGdldCB0aGUgZmFzdCBjbGlj
ayBiZWhhdmlvdXIuIFRoZXJlIHdlcmUgY29tcGxhaW50cyB0aGF0IHdlIGJyb2tlCisgICAgICAg
IGRvdWJsZS10YXAgdG8gc2Nyb2xsIGluIEltYWdlRG9jdW1lbnRzIHdoZXJlIHRoZSBpbWFnZSB3
YXMgbmFycm93IGFuZCBsb25nLgorCisgICAgICAgIFRoZSBmaXggaXMgdG8ganVzdCBrZWVwIGEg
ZmxhZyB0aGF0IHRlbGxzIHRoZSBVSSBwcm9jZXNzIGlmIHRoZQorICAgICAgICB3aWR0aCB3YXMg
ZXhwbGljaXQuIEhvd2V2ZXIsIGl0IHR1cm5zIG91dCB0aGF0IHRob3NlIEltYWdlRG9jdW1lbnRz
CisgICAgICAgIGFyZSBnaXZlbiBhbiBleHBsaWNpdCBkZXZpY2Utd2lkdGgsIHdoaWNoIGlzIGZp
bmUgZm9yIHNjYWxpbmcgYnV0CisgICAgICAgIHJlYWxseSBzaG91bGQgYmVoYXZlIGFzIGF1dG8g
Zm9yIGZhc3QgdGFwcGluZy4KKworICAgICAgICAqIGRvbS9WaWV3cG9ydEFyZ3VtZW50cy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpmaW5kU2l6ZVZhbHVlKTogVHVybiB0aGlzIGludG8gYSBmdW5j
dGlvbiB0aGF0IHJldHVybnMgYSBib29sZWFuCisgICAgICAgIGluZGljYXRpbmcgdGhhdCB0aGUg
c2l6ZSB3YXMgZXhwbGljaXQsIGFuZCBleHBvcnRzIHRoZSBzaXplIGFzIGEgcmVmZXJlbmNlCisg
ICAgICAgIHBhcmFtZXRlci4KKyAgICAgICAgKFdlYkNvcmU6OnNldFZpZXdwb3J0RmVhdHVyZSk6
IFdpZHRoIGlzIG9ubHkgZXhwbGljaXQgaWYgaXQgd2Fzbid0CisgICAgICAgIGFuIEltYWdlRG9j
dW1lbnQuCisgICAgICAgICogZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmg6IEFkZCBhIHdpZHRoV2Fz
RXhwbGljaXQgZmxhZy4KKyAgICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzOjpvcGVy
YXRvcj09KToKKwogMjAxNi0wMS0yMiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+
CiAKICAgICAgICAgU3R5bGUgcmVzb2x2ZXIgaW5pdGlhbGl6YXRpb24gY2xlYW51cHMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBkMWIxM2JiYTljMDNhY2FiMjU2NjUwNWNkYjlmNTYwYjk3MjFmNWYyLi4zMjdjYjEz
ZDJjYWJmNTJlMjlkNWY3MDU0YTM4MzJhMWZhZGU5YjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MzcgQEAKKzIwMTYtMDEtMjUgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAg
ICAgIFtpT1NdIERvY3VtZW50cyB3aXRob3V0IGFuIGV4cGxpY2l0IHdpZHRoIHNob3VsZCBub3Qg
Z2V0IGZhc3QgdGFwcGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTUzNDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yMzk2MjUyOT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBcyB0aGUgdGl0bGUg
c2F5cywgZG9jdW1lbnRzIHRoYXQgZG8gbm90IHNldCBhIHZpZXdwb3J0IHNob3VsZAorICAgICAg
ICBub3QgZ2V0IHRoZSBmYXN0IGNsaWNrIGJlaGF2aW91ci4gVGhlcmUgd2VyZSBjb21wbGFpbnRz
IHRoYXQgd2UgYnJva2UKKyAgICAgICAgZG91YmxlLXRhcCB0byBzY3JvbGwgaW4gSW1hZ2VEb2N1
bWVudHMgd2hlcmUgdGhlIGltYWdlIHdhcyBuYXJyb3cgYW5kIGxvbmcuCisKKyAgICAgICAgVGhl
IGZpeCBpcyB0byBqdXN0IGtlZXAgYSBmbGFnIHRoYXQgdGVsbHMgdGhlIFVJIHByb2Nlc3MgaWYg
dGhlCisgICAgICAgIHdpZHRoIHdhcyBleHBsaWNpdC4gSG93ZXZlciwgaXQgdHVybnMgb3V0IHRo
YXQgdGhvc2UgSW1hZ2VEb2N1bWVudHMKKyAgICAgICAgYXJlIGdpdmVuIGFuIGV4cGxpY2l0IGRl
dmljZS13aWR0aCwgd2hpY2ggaXMgZmluZSBmb3Igc2NhbGluZyBidXQKKyAgICAgICAgcmVhbGx5
IHNob3VsZCBiZWhhdmUgYXMgYXV0byBmb3IgZmFzdCB0YXBwaW5nLgorCisgICAgICAgICogU2hh
cmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oOiBBZGQgYSBuZXcgZmxhZyBpbnRv
CisgICAgICAgIHRoZSB0cmFuc2FjdGlvbi4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJU
cmVlVHJhbnNhY3Rpb246OnZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQpOgorICAgICAg
ICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6c2V0Vmlld3BvcnRNZXRhVGFn
V2lkdGhXYXNFeHBsaWNpdCk6CisgICAgICAgICogU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVU
cmFuc2FjdGlvbi5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rp
b246OmVuY29kZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9u
OjpkZWNvZGUpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6
ZGVzY3JpcHRpb24pOgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcu
bW06CisgICAgICAgICgtW1dLV2ViVmlldyBfZGlkQ29tbWl0TGF5ZXJUcmVlOl0pOiBOb3RpY2Ug
d2hldGhlciBvciBub3QgdGhlIHZpZXdwb3J0CisgICAgICAgIHdpZHRoIHdhcyBleHBsaWNpdC4K
KyAgICAgICAgKC1bV0tXZWJWaWV3IF9hbGxvd3NEb3VibGVUYXBHZXN0dXJlc10pOiBSZXR1cm4g
eWVzIGlmIHRoZSB3aWR0aAorICAgICAgICB3YXMgbm90IGV4cGxpY2l0LgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6
d2lsbENvbW1pdExheWVyVHJlZSk6CisKIDIwMTYtMDEtMjIgIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFJlZHVjZSB1c2Ugb2YgZXF1YWxJZ25vcmluZ0Nhc2UgdG8g
anVzdCBpZ25vcmUgQVNDSUkgY2FzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Zp
ZXdwb3J0QXJndW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50
cy5jcHAKaW5kZXggMTExZDQyZWQ4N2UyMTgwMzE1OGQ1MThjOTVhZDU1ZGVmOWE3YzQ4MS4uYzI0
NjViMzE4MjE5ODk1YTE1ZGI4MTZjM2QyODg4YmM5ODBjNTdkYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vVmlld3BvcnRBcmd1bWVudHMuY3BwCkBAIC0zMDcsMjQgKzMwNywzMCBAQCBzdGF0aWMgZmxv
YXQgbnVtZXJpY1ByZWZpeChjb25zdCBTdHJpbmcmIGtleVN0cmluZywgY29uc3QgU3RyaW5nJiB2
YWx1ZVN0cmluZywgRAogICAgIHJldHVybiB2YWx1ZTsKIH0KIAotc3RhdGljIGZsb2F0IGZpbmRT
aXplVmFsdWUoY29uc3QgU3RyaW5nJiBrZXlTdHJpbmcsIGNvbnN0IFN0cmluZyYgdmFsdWVTdHJp
bmcsIERvY3VtZW50KiBkb2N1bWVudCkKK3N0YXRpYyBib29sIGZpbmRTaXplVmFsdWUoY29uc3Qg
U3RyaW5nJiBrZXlTdHJpbmcsIGNvbnN0IFN0cmluZyYgdmFsdWVTdHJpbmcsIERvY3VtZW50KiBk
b2N1bWVudCwgZmxvYXQmIHNpemVWYWx1ZSkKIHsKICAgICAvLyAxKSBOb24tbmVnYXRpdmUgbnVt
YmVyIHZhbHVlcyBhcmUgdHJhbnNsYXRlZCB0byBweCBsZW5ndGhzLgogICAgIC8vIDIpIE5lZ2F0
aXZlIG51bWJlciB2YWx1ZXMgYXJlIHRyYW5zbGF0ZWQgdG8gYXV0by4KICAgICAvLyAzKSBkZXZp
Y2Utd2lkdGggYW5kIGRldmljZS1oZWlnaHQgYXJlIHVzZWQgYXMga2V5d29yZHMuCiAgICAgLy8g
NCkgT3RoZXIga2V5d29yZHMgYW5kIHVua25vd24gdmFsdWVzIHRyYW5zbGF0ZSB0byAwLjAuCiAK
LSAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodmFsdWVTdHJpbmcsICJkZXZp
Y2Utd2lkdGgiKSkKLSAgICAgICAgcmV0dXJuIFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmlj
ZVdpZHRoOwotICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh2YWx1ZVN0cmlu
ZywgImRldmljZS1oZWlnaHQiKSkKLSAgICAgICAgcmV0dXJuIFZpZXdwb3J0QXJndW1lbnRzOjpW
YWx1ZURldmljZUhlaWdodDsKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uo
dmFsdWVTdHJpbmcsICJkZXZpY2Utd2lkdGgiKSkgeworICAgICAgICBzaXplVmFsdWUgPSBWaWV3
cG9ydEFyZ3VtZW50czo6VmFsdWVEZXZpY2VXaWR0aDsKKyAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgfQorICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh2YWx1ZVN0cmluZywg
ImRldmljZS1oZWlnaHQiKSkgeworICAgICAgICBzaXplVmFsdWUgPSBWaWV3cG9ydEFyZ3VtZW50
czo6VmFsdWVEZXZpY2VIZWlnaHQ7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KIAotICAg
IGZsb2F0IHZhbHVlID0gbnVtZXJpY1ByZWZpeChrZXlTdHJpbmcsIHZhbHVlU3RyaW5nLCBkb2N1
bWVudCk7CisgICAgc2l6ZVZhbHVlID0gbnVtZXJpY1ByZWZpeChrZXlTdHJpbmcsIHZhbHVlU3Ry
aW5nLCBkb2N1bWVudCk7CiAKLSAgICBpZiAodmFsdWUgPCAwKQotICAgICAgICByZXR1cm4gVmll
d3BvcnRBcmd1bWVudHM6OlZhbHVlQXV0bzsKKyAgICBpZiAoc2l6ZVZhbHVlIDwgMCkgeworICAg
ICAgICBzaXplVmFsdWUgPSBWaWV3cG9ydEFyZ3VtZW50czo6VmFsdWVBdXRvOworICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgfQogCi0gICAgcmV0dXJuIHZhbHVlOworICAgIHJldHVybiB0cnVl
OwogfQogCiBzdGF0aWMgZmxvYXQgZmluZFNjYWxlVmFsdWUoY29uc3QgU3RyaW5nJiBrZXlTdHJp
bmcsIGNvbnN0IFN0cmluZyYgdmFsdWVTdHJpbmcsIERvY3VtZW50KiBkb2N1bWVudCkKQEAgLTM4
Myw5ICszODksOSBAQCB2b2lkIHNldFZpZXdwb3J0RmVhdHVyZShjb25zdCBTdHJpbmcmIGtleVN0
cmluZywgY29uc3QgU3RyaW5nJiB2YWx1ZVN0cmluZywgRG9jdQogICAgIFZpZXdwb3J0QXJndW1l
bnRzKiBhcmd1bWVudHMgPSBzdGF0aWNfY2FzdDxWaWV3cG9ydEFyZ3VtZW50cyo+KGRhdGEpOwog
CiAgICAgaWYgKGtleVN0cmluZyA9PSAid2lkdGgiKQotICAgICAgICBhcmd1bWVudHMtPndpZHRo
ID0gZmluZFNpemVWYWx1ZShrZXlTdHJpbmcsIHZhbHVlU3RyaW5nLCBkb2N1bWVudCk7CisgICAg
ICAgIGFyZ3VtZW50cy0+d2lkdGhXYXNFeHBsaWNpdCA9IGZpbmRTaXplVmFsdWUoa2V5U3RyaW5n
LCB2YWx1ZVN0cmluZywgZG9jdW1lbnQsIGFyZ3VtZW50cy0+d2lkdGgpICYmIGFyZ3VtZW50cy0+
dHlwZSAhPSBWaWV3cG9ydEFyZ3VtZW50czo6SW1hZ2VEb2N1bWVudDsKICAgICBlbHNlIGlmIChr
ZXlTdHJpbmcgPT0gImhlaWdodCIpCi0gICAgICAgIGFyZ3VtZW50cy0+aGVpZ2h0ID0gZmluZFNp
emVWYWx1ZShrZXlTdHJpbmcsIHZhbHVlU3RyaW5nLCBkb2N1bWVudCk7CisgICAgICAgIGZpbmRT
aXplVmFsdWUoa2V5U3RyaW5nLCB2YWx1ZVN0cmluZywgZG9jdW1lbnQsIGFyZ3VtZW50cy0+aGVp
Z2h0KTsKICAgICBlbHNlIGlmIChrZXlTdHJpbmcgPT0gImluaXRpYWwtc2NhbGUiKQogICAgICAg
ICBhcmd1bWVudHMtPnpvb20gPSBmaW5kU2NhbGVWYWx1ZShrZXlTdHJpbmcsIHZhbHVlU3RyaW5n
LCBkb2N1bWVudCk7CiAgICAgZWxzZSBpZiAoa2V5U3RyaW5nID09ICJtaW5pbXVtLXNjYWxlIikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5oIGIvU291
cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmgKaW5kZXggNGRmNTJkZDZlODQ4MGNj
ZDc4OWEzMTVlY2MxOThjZjY3YzI1ZjU2OC4uZWRkOWY4NmU5YmMyNmY5ZmFkN2VkNGI5NmIyM2M0
YzUzNzdmYmE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1l
bnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmgKQEAgLTk1
LDYgKzk1LDcgQEAgc3RydWN0IFZpZXdwb3J0QXJndW1lbnRzIHsKICAgICBmbG9hdCB1c2VyWm9v
bSB7IFZhbHVlQXV0byB9OwogICAgIGZsb2F0IG9yaWVudGF0aW9uIHsgVmFsdWVBdXRvIH07CiAg
ICAgZmxvYXQgc2hyaW5rVG9GaXQgeyBWYWx1ZUF1dG8gfTsKKyAgICBib29sIHdpZHRoV2FzRXhw
bGljaXQgeyBmYWxzZSB9OwogCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFZpZXdwb3J0QXJn
dW1lbnRzJiBvdGhlcikgY29uc3QKICAgICB7CkBAIC0xMTEsNyArMTEyLDggQEAgc3RydWN0IFZp
ZXdwb3J0QXJndW1lbnRzIHsKICAgICAgICAgICAgICYmIG1heFpvb20gPT0gb3RoZXIubWF4Wm9v
bQogICAgICAgICAgICAgJiYgdXNlclpvb20gPT0gb3RoZXIudXNlclpvb20KICAgICAgICAgICAg
ICYmIG9yaWVudGF0aW9uID09IG90aGVyLm9yaWVudGF0aW9uCi0gICAgICAgICAgICAmJiBzaHJp
bmtUb0ZpdCA9PSBvdGhlci5zaHJpbmtUb0ZpdDsKKyAgICAgICAgICAgICYmIHNocmlua1RvRml0
ID09IG90aGVyLnNocmlua1RvRml0CisgICAgICAgICAgICAmJiB3aWR0aFdhc0V4cGxpY2l0ID09
IG90aGVyLndpZHRoV2FzRXhwbGljaXQ7CiAgICAgfQogCiAgICAgYm9vbCBvcGVyYXRvciE9KGNv
bnN0IFZpZXdwb3J0QXJndW1lbnRzJiBvdGhlcikgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24uaCBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24uaAppbmRleCBlNjhl
MjBiZGMzNzgyZjgzNjc0NjE2Yzc3NTgwZGVjY2NjZTY4MTliLi40ZWFiNzA1NjFiZDdjY2EyYTRi
ODUyZDUzMjM2YThkNjhhN2Y1ZDYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
bWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oCkBAIC0yMzAsNiArMjMwLDkgQEAg
cHVibGljOgogICAgIGRvdWJsZSB2aWV3cG9ydE1ldGFUYWdXaWR0aCgpIGNvbnN0IHsgcmV0dXJu
IG1fdmlld3BvcnRNZXRhVGFnV2lkdGg7IH0KICAgICB2b2lkIHNldFZpZXdwb3J0TWV0YVRhZ1dp
ZHRoKGRvdWJsZSB3aWR0aCkgeyBtX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoID0gd2lkdGg7IH0KIAor
ICAgIGJvb2wgdmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCgpIGNvbnN0IHsgcmV0dXJu
IG1fdmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdDsgfQorICAgIHZvaWQgc2V0Vmlld3Bv
cnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdChib29sIHdpZHRoV2FzRXhwbGljaXQpIHsgbV92aWV3
cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0ID0gd2lkdGhXYXNFeHBsaWNpdDsgfQorCiAgICAg
Ym9vbCBhbGxvd3NVc2VyU2NhbGluZygpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzVXNlclNjYWxp
bmc7IH0KICAgICB2b2lkIHNldEFsbG93c1VzZXJTY2FsaW5nKGJvb2wgYWxsb3dzVXNlclNjYWxp
bmcpIHsgbV9hbGxvd3NVc2VyU2NhbGluZyA9IGFsbG93c1VzZXJTY2FsaW5nOyB9CiAKQEAgLTI3
MSw2ICsyNzQsNyBAQCBwcml2YXRlOgogICAgIFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZXMgbV9u
ZXdseVJlYWNoZWRMYXlvdXRNaWxlc3RvbmVzIHsgMCB9OwogICAgIGJvb2wgbV9zY2FsZVdhc1Nl
dEJ5VUlQcm9jZXNzIHsgZmFsc2UgfTsKICAgICBib29sIG1fYWxsb3dzVXNlclNjYWxpbmcgeyBm
YWxzZSB9OworICAgIGJvb2wgbV92aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0IHsgZmFs
c2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KaW5kZXggN2E5
ZjUyOWUzOTg1OWJhNThiM2Q3NjllNmEzNWI1ZDJiZTFlMGQ1NS4uNGZkOTNlNDI4ODU1MTc1NGQy
OGJjY2JmNzRkNWYzZTExMGJkNzUyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1tCkBAIC01MjgsNiArNTI4LDgg
QEAgdm9pZCBSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6ZW5jb2RlKElQQzo6QXJndW1lbnRF
bmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwgbV9zY2FsZVdhc1NldEJ5VUlQ
cm9jZXNzOwogICAgIGVuY29kZXIgPDwgbV9hbGxvd3NVc2VyU2NhbGluZzsKIAorICAgIGVuY29k
ZXIgPDwgbV92aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0OworCiAgICAgZW5jb2RlciA8
PCBtX2NhbGxiYWNrSURzOwogfQogCkBAIC02MjAsNiArNjIyLDkgQEAgYm9vbCBSZW1vdGVMYXll
clRyZWVUcmFuc2FjdGlvbjo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBS
ZW1vdGVMYXkKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5tX2FsbG93c1VzZXJTY2Fs
aW5nKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShy
ZXN1bHQubV92aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQubV9jYWxsYmFja0lEcykp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtODE5LDYgKzgyNCw3IEBAIENTdHJpbmcgUmVt
b3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OmRlc2NyaXB0aW9uKCkgY29uc3QKICAgICB0cy5kdW1w
UHJvcGVydHkoIm1heGltdW1TY2FsZUZhY3RvciIsIG1fbWF4aW11bVNjYWxlRmFjdG9yKTsKICAg
ICB0cy5kdW1wUHJvcGVydHkoImluaXRpYWxTY2FsZUZhY3RvciIsIG1faW5pdGlhbFNjYWxlRmFj
dG9yKTsKICAgICB0cy5kdW1wUHJvcGVydHkoInZpZXdwb3J0TWV0YVRhZ1dpZHRoIiwgbV92aWV3
cG9ydE1ldGFUYWdXaWR0aCk7CisgICAgdHMuZHVtcFByb3BlcnR5KCJ2aWV3cG9ydE1ldGFUYWdX
aWR0aFdhc0V4cGxpY2l0IiwgbV92aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KTsKICAg
ICB0cy5kdW1wUHJvcGVydHkoInJlbmRlclRyZWVTaXplIiwgbV9yZW5kZXJUcmVlU2l6ZSk7CiAK
ICAgICB0cyA8PCAicm9vdC1sYXllciAiIDw8IG1fcm9vdExheWVySUQgPDwgIikiOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0gYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQppbmRleCA1OGJj
OTkyYmQyZTVkOTZiMTViYTIyZGU1YTA5NjBhZTA5MTMxZTRlLi5jNmI3NjM4Y2IzNDNlNTk4MTll
ZGFlM2M3MTc1YTg4ZGJjODJjYzEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlldy5tbQpAQCAtMjAxLDYgKzIwMSw3IEBAIFdLV2ViVmlldyogZnJv
bVdlYlBhZ2VQcm94eShXZWJLaXQ6OldlYlBhZ2VQcm94eSYgcGFnZSkKICAgICBDR1NpemUgX21h
eGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOwogICAgIENHUmVjdCBfaW5wdXRWaWV3Qm91bmRz
OwogICAgIENHRmxvYXQgX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoOworICAgIEJPT0wgX3ZpZXdwb3J0
TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQ7CiAgICAgQ0dGbG9hdCBfaW5pdGlhbFNjYWxlRmFjdG9y
OwogICAgIEJPT0wgX2Zhc3RDbGlja2luZ0lzRGlzYWJsZWQ7CiAKQEAgLTExMTgsNiArMTExOSw3
IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBhcmVFc3NlbnRpYWxseUVxdWFsQXNGbG9hdChmbG9hdCBh
LCBmbG9hdCBiKQogICAgICAgICBbX3Njcm9sbFZpZXcgc2V0Wm9vbVNjYWxlOmxheWVyVHJlZVRy
YW5zYWN0aW9uLnBhZ2VTY2FsZUZhY3RvcigpXTsKIAogICAgIF92aWV3cG9ydE1ldGFUYWdXaWR0
aCA9IGxheWVyVHJlZVRyYW5zYWN0aW9uLnZpZXdwb3J0TWV0YVRhZ1dpZHRoKCk7CisgICAgX3Zp
ZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQgPSBsYXllclRyZWVUcmFuc2FjdGlvbi52aWV3
cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KCk7CiAgICAgX2luaXRpYWxTY2FsZUZhY3RvciA9
IGxheWVyVHJlZVRyYW5zYWN0aW9uLmluaXRpYWxTY2FsZUZhY3RvcigpOwogICAgIGlmICghW19j
b250ZW50VmlldyBfbWF5RGlzYWJsZURvdWJsZVRhcEdlc3R1cmVzRHVyaW5nU2luZ2xlVGFwXSkK
ICAgICAgICAgW19jb250ZW50VmlldyBfc2V0RG91YmxlVGFwR2VzdHVyZXNFbmFibGVkOnNlbGYu
X2FsbG93c0RvdWJsZVRhcEdlc3R1cmVzXTsKQEAgLTE1OTUsNiArMTU5NywxMCBAQCBzdGF0aWMg
V2ViQ29yZTo6RmxvYXRQb2ludCBjb25zdHJhaW5Db250ZW50T2Zmc2V0KFdlYkNvcmU6OkZsb2F0
UG9pbnQgY29udGVudE9mZgogICAgIGlmICghW19zY3JvbGxWaWV3IGlzWm9vbUVuYWJsZWRdIHx8
IFtfc2Nyb2xsVmlldyBtaW5pbXVtWm9vbVNjYWxlXSA+PSBbX3Njcm9sbFZpZXcgbWF4aW11bVpv
b21TY2FsZV0pCiAgICAgICAgIHJldHVybiBOTzsKIAorICAgIC8vIElmIHRoZSB2aWV3cG9ydCB3
aWR0aCB3YXMgbm90IGV4cGxpY2l0LCB3ZSBhbGxvdyBkb3VibGUgdGFwIGdlc3R1cmVzLgorICAg
IGlmICghX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQpCisgICAgICAgIHJldHVybiBZ
RVM7CisKICAgICAvLyBGb3Igc2NhbGFibGUgdmlld3BvcnRzLCBvbmx5IGRpc2FibGUgZG91Ymxl
IHRhcCBnZXN0dXJlcyBpZiB0aGUgdmlld3BvcnQgd2lkdGggaXMgZGV2aWNlIHdpZHRoLgogICAg
IGlmIChfdmlld3BvcnRNZXRhVGFnV2lkdGggIT0gV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHM6
OlZhbHVlRGV2aWNlV2lkdGgpCiAgICAgICAgIHJldHVybiBZRVM7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZGI0MDQ2YzE5MGFiOWUxYjU3
YmEzN2ZkNmE3YzAwNTQ5NDJiZDM1Yy4uNGRmMTNiNTdiYThiNzkxZWIyZDBmZDgwNzNhNmZlYmMx
NTM3NTYzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcApAQCAtMjk4Miw2ICsyOTgyLDcgQEAgdm9pZCBXZWJQYWdlOjp3aWxsQ29tbWl0TGF5ZXJU
cmVlKFJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uJiBsYXllclRyYW5zYWN0aW9uKQogICAgIGxh
eWVyVHJhbnNhY3Rpb24uc2V0TWF4aW11bVNjYWxlRmFjdG9yKG1fdmlld3BvcnRDb25maWd1cmF0
aW9uLm1heGltdW1TY2FsZSgpKTsKICAgICBsYXllclRyYW5zYWN0aW9uLnNldEluaXRpYWxTY2Fs
ZUZhY3RvcihtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5pbml0aWFsU2NhbGUoKSk7CiAgICAgbGF5
ZXJUcmFuc2FjdGlvbi5zZXRWaWV3cG9ydE1ldGFUYWdXaWR0aChtX3ZpZXdwb3J0Q29uZmlndXJh
dGlvbi52aWV3cG9ydEFyZ3VtZW50cygpLndpZHRoKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNl
dFZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQobV92aWV3cG9ydENvbmZpZ3VyYXRpb24u
dmlld3BvcnRBcmd1bWVudHMoKS53aWR0aFdhc0V4cGxpY2l0KTsKICAgICBsYXllclRyYW5zYWN0
aW9uLnNldEFsbG93c1VzZXJTY2FsaW5nKGFsbG93c1VzZXJTY2FsaW5nKCkpOwogI2VuZGlmCiAj
aWYgUExBVEZPUk0oTUFDKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269875</attachid>
            <date>2016-01-26 03:12:04 -0800</date>
            <delta_ts>2016-01-26 12:00:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153465-20160126221132.patch</filename>
            <type>text/plain</type>
            <size>13287</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1NDY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzRlOTkyZDNjNjZjMWU4
Mjg0NjY2NGIyMTA0MzJhODkwODM2M2YxMy4uNmMzY2Y5MWUzZTIzZTNjYzg4M2IxMmI4NTIyN2Yx
ZmE1MDM4ZTYyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE2LTAxLTI1ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBEb2N1bWVudHMgd2l0
aG91dCBhbiBleHBsaWNpdCB3aWR0aCBzaG91bGQgbm90IGdldCBmYXN0IHRhcHBpbmcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzQ2NQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMjM5NjI1Mjk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQXMgdGhlIHRpdGxlIHNheXMsIGRvY3VtZW50cyB0aGF0IGRv
IG5vdCBzZXQgYSB2aWV3cG9ydCBzaG91bGQKKyAgICAgICAgbm90IGdldCB0aGUgZmFzdCBjbGlj
ayBiZWhhdmlvdXIuIFRoZXJlIHdlcmUgY29tcGxhaW50cyB0aGF0IHdlIGJyb2tlCisgICAgICAg
IGRvdWJsZS10YXAgdG8gc2Nyb2xsIGluIEltYWdlRG9jdW1lbnRzIHdoZXJlIHRoZSBpbWFnZSB3
YXMgbmFycm93IGFuZCBsb25nLgorCisgICAgICAgIFRoZSBmaXggaXMgdG8ganVzdCBrZWVwIGEg
ZmxhZyB0aGF0IHRlbGxzIHRoZSBVSSBwcm9jZXNzIGlmIHRoZQorICAgICAgICB3aWR0aCB3YXMg
ZXhwbGljaXQuIEhvd2V2ZXIsIGl0IHR1cm5zIG91dCB0aGF0IHRob3NlIEltYWdlRG9jdW1lbnRz
CisgICAgICAgIGFyZSBnaXZlbiBhbiBleHBsaWNpdCBkZXZpY2Utd2lkdGgsIHdoaWNoIGlzIGZp
bmUgZm9yIHNjYWxpbmcgYnV0CisgICAgICAgIHJlYWxseSBzaG91bGQgYmVoYXZlIGFzIGF1dG8g
Zm9yIGZhc3QgdGFwcGluZy4gU28gd2UgYWxzbyBuZWVkCisgICAgICAgIHRvIHRlbGwgdGhlIFVJ
UHJvY2VzcyBpZiB0aGUgdmlld3BvcnQgYXJndW1lbnRzIGNhbWUgZnJvbSBhbgorICAgICAgICBJ
bWFnZURvY3VtZW50LgorCisgICAgICAgICogZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmZpbmRTaXplVmFsdWUpOiBBZGQgYSBwYXJhbWV0ZXIgdGhhdCB0b2dn
bGVzIGEgZmxhZworICAgICAgICBpZiB0aGUgc2l6ZSB3YXMgZXhwbGljaXRseSBzZXQuCisgICAg
ICAgIChXZWJDb3JlOjpzZXRWaWV3cG9ydEZlYXR1cmUpOiBSZW1lbWJlciBpZiB0aGUgd2lkdGgg
d2FzCisgICAgICAgIGV4cGxpY2l0LgorICAgICAgICAqIGRvbS9WaWV3cG9ydEFyZ3VtZW50cy5o
OiBBZGQgYSB3aWR0aFdhc0V4cGxpY2l0IGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpWaWV3cG9y
dEFyZ3VtZW50czo6b3BlcmF0b3I9PSk6CisKIDIwMTYtMDEtMjIgIEFudHRpIEtvaXZpc3RvICA8
YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFN0eWxlIHJlc29sdmVyIGluaXRpYWxpemF0aW9u
IGNsZWFudXBzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZDFiMTNiYmE5YzAzYWNhYjI1NjY1MDVjZGI5ZjU2MGI5
NzIxZjVmMi4uOWQ3ZmYzMTg0ZDc1NTIxOTY2N2ViNDA2ODIyZGQxMTczM2M4MWU1NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE2LTAxLTI1ICBEZWFuIEphY2tzb24gIDxkaW5vQGFw
cGxlLmNvbT4KKworICAgICAgICBbaU9TXSBEb2N1bWVudHMgd2l0aG91dCBhbiBleHBsaWNpdCB3
aWR0aCBzaG91bGQgbm90IGdldCBmYXN0IHRhcHBpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzQ2NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
MjM5NjI1Mjk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQXMgdGhlIHRpdGxlIHNheXMsIGRvY3VtZW50cyB0aGF0IGRvIG5vdCBzZXQgYSB2aWV3cG9y
dCBzaG91bGQKKyAgICAgICAgbm90IGdldCB0aGUgZmFzdCBjbGljayBiZWhhdmlvdXIuIFRoZXJl
IHdlcmUgY29tcGxhaW50cyB0aGF0IHdlIGJyb2tlCisgICAgICAgIGRvdWJsZS10YXAgdG8gc2Ny
b2xsIGluIEltYWdlRG9jdW1lbnRzIHdoZXJlIHRoZSBpbWFnZSB3YXMgbmFycm93IGFuZCBsb25n
LgorCisgICAgICAgIFRoZSBmaXggaXMgdG8ganVzdCBrZWVwIGEgZmxhZyB0aGF0IHRlbGxzIHRo
ZSBVSSBwcm9jZXNzIGlmIHRoZQorICAgICAgICB3aWR0aCB3YXMgZXhwbGljaXQuIEhvd2V2ZXIs
IGl0IHR1cm5zIG91dCB0aGF0IHRob3NlIEltYWdlRG9jdW1lbnRzCisgICAgICAgIGFyZSBnaXZl
biBhbiBleHBsaWNpdCBkZXZpY2Utd2lkdGgsIHdoaWNoIGlzIGZpbmUgZm9yIHNjYWxpbmcgYnV0
CisgICAgICAgIHJlYWxseSBzaG91bGQgYmVoYXZlIGFzIGF1dG8gZm9yIGZhc3QgdGFwcGluZy4g
U28gd2UgYWxzbyBuZWVkCisgICAgICAgIHRvIHRlbGwgdGhlIFVJUHJvY2VzcyBpZiB0aGUgdmll
d3BvcnQgYXJndW1lbnRzIGNhbWUgZnJvbSBhbgorICAgICAgICBJbWFnZURvY3VtZW50LgorCisg
ICAgICAgICogU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oOiBBZGQgdHdv
IG5ldyBmbGFncyBpbnRvCisgICAgICAgIHRoZSB0cmFuc2FjdGlvbi4KKyAgICAgICAgKFdlYktp
dDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OnZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhw
bGljaXQpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6c2V0
Vmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZUxheWVyVHJlZVRyYW5zYWN0aW9uOjp2aWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdlRG9jdW1l
bnQpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6c2V0Vmll
d3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50KToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVM
YXllclRyZWVUcmFuc2FjdGlvbjo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5
ZXJUcmVlVHJhbnNhY3Rpb246OmRlY29kZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVy
VHJlZVRyYW5zYWN0aW9uOjpkZXNjcmlwdGlvbik6CisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3IF9kaWRDb21taXRMYXll
clRyZWU6XSk6IE5vdGljZSB3aGV0aGVyIG9yIG5vdCB0aGUgdmlld3BvcnQKKyAgICAgICAgd2lk
dGggd2FzIGV4cGxpY2l0LgorICAgICAgICAoLVtXS1dlYlZpZXcgX2FsbG93c0RvdWJsZVRhcEdl
c3R1cmVzXSk6IFJldHVybiB5ZXMgaWYgdGhlIHdpZHRoCisgICAgICAgIHdhcyBub3QgZXhwbGlj
aXQsIG9yIGlmIHRoZSB2aWV3cG9ydCBjYW1lIGZyb20gYW4gSW1hZ2VEb2N1bWVudC4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OndpbGxDb21taXRMYXllclRyZWUpOgorCiAyMDE2LTAxLTIyICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWR1Y2UgdXNlIG9mIGVxdWFsSWdub3JpbmdD
YXNlIHRvIGp1c3QgaWdub3JlIEFTQ0lJIGNhc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVmlld3BvcnRB
cmd1bWVudHMuY3BwCmluZGV4IDExMWQ0MmVkODdlMjE4MDMxNThkNTE4Yzk1YWQ1NWRlZjlhN2M0
ODEuLjgxY2Y3OWQxYWFjZmZkZThmMTBmMGY1NDM3ZjI0ZjE4MzMyZWM2NWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmNwcApAQCAtMzA3LDI0ICszMDcsMzEgQEAgc3Rh
dGljIGZsb2F0IG51bWVyaWNQcmVmaXgoY29uc3QgU3RyaW5nJiBrZXlTdHJpbmcsIGNvbnN0IFN0
cmluZyYgdmFsdWVTdHJpbmcsIEQKICAgICByZXR1cm4gdmFsdWU7CiB9CiAKLXN0YXRpYyBmbG9h
dCBmaW5kU2l6ZVZhbHVlKGNvbnN0IFN0cmluZyYga2V5U3RyaW5nLCBjb25zdCBTdHJpbmcmIHZh
bHVlU3RyaW5nLCBEb2N1bWVudCogZG9jdW1lbnQpCitzdGF0aWMgZmxvYXQgZmluZFNpemVWYWx1
ZShjb25zdCBTdHJpbmcmIGtleVN0cmluZywgY29uc3QgU3RyaW5nJiB2YWx1ZVN0cmluZywgRG9j
dW1lbnQqIGRvY3VtZW50LCBib29sKiB2YWx1ZVdhc0V4cGxpY2l0ID0gbnVsbHB0cikKIHsKICAg
ICAvLyAxKSBOb24tbmVnYXRpdmUgbnVtYmVyIHZhbHVlcyBhcmUgdHJhbnNsYXRlZCB0byBweCBs
ZW5ndGhzLgogICAgIC8vIDIpIE5lZ2F0aXZlIG51bWJlciB2YWx1ZXMgYXJlIHRyYW5zbGF0ZWQg
dG8gYXV0by4KICAgICAvLyAzKSBkZXZpY2Utd2lkdGggYW5kIGRldmljZS1oZWlnaHQgYXJlIHVz
ZWQgYXMga2V5d29yZHMuCiAgICAgLy8gNCkgT3RoZXIga2V5d29yZHMgYW5kIHVua25vd24gdmFs
dWVzIHRyYW5zbGF0ZSB0byAwLjAuCiAKKyAgICBpZiAodmFsdWVXYXNFeHBsaWNpdCkKKyAgICAg
ICAgKnZhbHVlV2FzRXhwbGljaXQgPSB0cnVlOworCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9y
aW5nQVNDSUlDYXNlKHZhbHVlU3RyaW5nLCAiZGV2aWNlLXdpZHRoIikpCiAgICAgICAgIHJldHVy
biBWaWV3cG9ydEFyZ3VtZW50czo6VmFsdWVEZXZpY2VXaWR0aDsKKwogICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh2YWx1ZVN0cmluZywgImRldmljZS1oZWlnaHQiKSkKICAg
ICAgICAgcmV0dXJuIFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmljZUhlaWdodDsKIAotICAg
IGZsb2F0IHZhbHVlID0gbnVtZXJpY1ByZWZpeChrZXlTdHJpbmcsIHZhbHVlU3RyaW5nLCBkb2N1
bWVudCk7CisgICAgZmxvYXQgc2l6ZVZhbHVlID0gbnVtZXJpY1ByZWZpeChrZXlTdHJpbmcsIHZh
bHVlU3RyaW5nLCBkb2N1bWVudCk7CiAKLSAgICBpZiAodmFsdWUgPCAwKQorICAgIGlmIChzaXpl
VmFsdWUgPCAwKSB7CisgICAgICAgIGlmICh2YWx1ZVdhc0V4cGxpY2l0KQorICAgICAgICAgICAg
KnZhbHVlV2FzRXhwbGljaXQgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIFZpZXdwb3J0QXJndW1l
bnRzOjpWYWx1ZUF1dG87CisgICAgfQogCi0gICAgcmV0dXJuIHZhbHVlOworICAgIHJldHVybiBz
aXplVmFsdWU7CiB9CiAKIHN0YXRpYyBmbG9hdCBmaW5kU2NhbGVWYWx1ZShjb25zdCBTdHJpbmcm
IGtleVN0cmluZywgY29uc3QgU3RyaW5nJiB2YWx1ZVN0cmluZywgRG9jdW1lbnQqIGRvY3VtZW50
KQpAQCAtMzgzLDcgKzM5MCw3IEBAIHZvaWQgc2V0Vmlld3BvcnRGZWF0dXJlKGNvbnN0IFN0cmlu
ZyYga2V5U3RyaW5nLCBjb25zdCBTdHJpbmcmIHZhbHVlU3RyaW5nLCBEb2N1CiAgICAgVmlld3Bv
cnRBcmd1bWVudHMqIGFyZ3VtZW50cyA9IHN0YXRpY19jYXN0PFZpZXdwb3J0QXJndW1lbnRzKj4o
ZGF0YSk7CiAKICAgICBpZiAoa2V5U3RyaW5nID09ICJ3aWR0aCIpCi0gICAgICAgIGFyZ3VtZW50
cy0+d2lkdGggPSBmaW5kU2l6ZVZhbHVlKGtleVN0cmluZywgdmFsdWVTdHJpbmcsIGRvY3VtZW50
KTsKKyAgICAgICAgYXJndW1lbnRzLT53aWR0aCA9IGZpbmRTaXplVmFsdWUoa2V5U3RyaW5nLCB2
YWx1ZVN0cmluZywgZG9jdW1lbnQsICZhcmd1bWVudHMtPndpZHRoV2FzRXhwbGljaXQpOwogICAg
IGVsc2UgaWYgKGtleVN0cmluZyA9PSAiaGVpZ2h0IikKICAgICAgICAgYXJndW1lbnRzLT5oZWln
aHQgPSBmaW5kU2l6ZVZhbHVlKGtleVN0cmluZywgdmFsdWVTdHJpbmcsIGRvY3VtZW50KTsKICAg
ICBlbHNlIGlmIChrZXlTdHJpbmcgPT0gImluaXRpYWwtc2NhbGUiKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Vmlld3BvcnRBcmd1bWVudHMuaAppbmRleCA0ZGY1MmRkNmU4NDgwY2NkNzg5YTMxNWVjYzE5OGNm
NjdjMjVmNTY4Li5lZGQ5Zjg2ZTliYzI2ZjlmYWQ3ZWQ0Yjk2YjIzYzRjNTM3N2ZiYTg5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vVmlld3BvcnRBcmd1bWVudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vVmlld3BvcnRBcmd1bWVudHMuaApAQCAtOTUsNiArOTUsNyBAQCBzdHJ1
Y3QgVmlld3BvcnRBcmd1bWVudHMgewogICAgIGZsb2F0IHVzZXJab29tIHsgVmFsdWVBdXRvIH07
CiAgICAgZmxvYXQgb3JpZW50YXRpb24geyBWYWx1ZUF1dG8gfTsKICAgICBmbG9hdCBzaHJpbmtU
b0ZpdCB7IFZhbHVlQXV0byB9OworICAgIGJvb2wgd2lkdGhXYXNFeHBsaWNpdCB7IGZhbHNlIH07
CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgVmlld3BvcnRBcmd1bWVudHMmIG90aGVyKSBj
b25zdAogICAgIHsKQEAgLTExMSw3ICsxMTIsOCBAQCBzdHJ1Y3QgVmlld3BvcnRBcmd1bWVudHMg
ewogICAgICAgICAgICAgJiYgbWF4Wm9vbSA9PSBvdGhlci5tYXhab29tCiAgICAgICAgICAgICAm
JiB1c2VyWm9vbSA9PSBvdGhlci51c2VyWm9vbQogICAgICAgICAgICAgJiYgb3JpZW50YXRpb24g
PT0gb3RoZXIub3JpZW50YXRpb24KLSAgICAgICAgICAgICYmIHNocmlua1RvRml0ID09IG90aGVy
LnNocmlua1RvRml0OworICAgICAgICAgICAgJiYgc2hyaW5rVG9GaXQgPT0gb3RoZXIuc2hyaW5r
VG9GaXQKKyAgICAgICAgICAgICYmIHdpZHRoV2FzRXhwbGljaXQgPT0gb3RoZXIud2lkdGhXYXNF
eHBsaWNpdDsKICAgICB9CiAKICAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgVmlld3BvcnRBcmd1
bWVudHMmIG90aGVyKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21h
Yy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21h
Yy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oCmluZGV4IGU2OGUyMGJkYzM3ODJmODM2NzQ2
MTZjNzc1ODBkZWNjY2NlNjgxOWIuLjRlOTlhY2QyOTk3ZGI3NDRmMzVjNzQxZTQ1M2QzMDMyOTcw
ZGRiNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJU
cmVlVHJhbnNhY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxh
eWVyVHJlZVRyYW5zYWN0aW9uLmgKQEAgLTIzMCw2ICsyMzAsMTIgQEAgcHVibGljOgogICAgIGRv
dWJsZSB2aWV3cG9ydE1ldGFUYWdXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fdmlld3BvcnRNZXRh
VGFnV2lkdGg7IH0KICAgICB2b2lkIHNldFZpZXdwb3J0TWV0YVRhZ1dpZHRoKGRvdWJsZSB3aWR0
aCkgeyBtX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoID0gd2lkdGg7IH0KIAorICAgIGJvb2wgdmlld3Bv
cnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCgpIGNvbnN0IHsgcmV0dXJuIG1fdmlld3BvcnRNZXRh
VGFnV2lkdGhXYXNFeHBsaWNpdDsgfQorICAgIHZvaWQgc2V0Vmlld3BvcnRNZXRhVGFnV2lkdGhX
YXNFeHBsaWNpdChib29sIHdpZHRoV2FzRXhwbGljaXQpIHsgbV92aWV3cG9ydE1ldGFUYWdXaWR0
aFdhc0V4cGxpY2l0ID0gd2lkdGhXYXNFeHBsaWNpdDsgfQorCisgICAgYm9vbCB2aWV3cG9ydE1l
dGFUYWdDYW1lRnJvbUltYWdlRG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBtX3ZpZXdwb3J0TWV0
YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudDsgfQorICAgIHZvaWQgc2V0Vmlld3BvcnRNZXRhVGFn
Q2FtZUZyb21JbWFnZURvY3VtZW50KGJvb2wgY2FtZUZyb21JbWFnZURvY3VtZW50KSB7IG1fdmll
d3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50ID0gY2FtZUZyb21JbWFnZURvY3VtZW50
OyB9CisKICAgICBib29sIGFsbG93c1VzZXJTY2FsaW5nKCkgY29uc3QgeyByZXR1cm4gbV9hbGxv
d3NVc2VyU2NhbGluZzsgfQogICAgIHZvaWQgc2V0QWxsb3dzVXNlclNjYWxpbmcoYm9vbCBhbGxv
d3NVc2VyU2NhbGluZykgeyBtX2FsbG93c1VzZXJTY2FsaW5nID0gYWxsb3dzVXNlclNjYWxpbmc7
IH0KIApAQCAtMjcxLDYgKzI3Nyw4IEBAIHByaXZhdGU6CiAgICAgV2ViQ29yZTo6TGF5b3V0TWls
ZXN0b25lcyBtX25ld2x5UmVhY2hlZExheW91dE1pbGVzdG9uZXMgeyAwIH07CiAgICAgYm9vbCBt
X3NjYWxlV2FzU2V0QnlVSVByb2Nlc3MgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9hbGxvd3NVc2Vy
U2NhbGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhw
bGljaXQgeyBmYWxzZSB9OworICAgIGJvb2wgbV92aWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdl
RG9jdW1lbnQgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9u
Lm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlv
bi5tbQppbmRleCA3YTlmNTI5ZTM5ODU5YmE1OGIzZDc2OWU2YTM1YjVkMmJlMWUwZDU1Li43M2Q3
MzRiMWU4MTgxOWQyNzc1YWQ5ZjM4OTRjMDFkOWY1MTJjNDg2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0KQEAg
LTUyOCw2ICs1MjgsOSBAQCB2b2lkIFJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uOjplbmNvZGUo
SVBDOjpBcmd1bWVudEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBtX3Nj
YWxlV2FzU2V0QnlVSVByb2Nlc3M7CiAgICAgZW5jb2RlciA8PCBtX2FsbG93c1VzZXJTY2FsaW5n
OwogCisgICAgZW5jb2RlciA8PCBtX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQ7Cisg
ICAgZW5jb2RlciA8PCBtX3ZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudDsKKwog
ICAgIGVuY29kZXIgPDwgbV9jYWxsYmFja0lEczsKIH0KIApAQCAtNjIwLDYgKzYyMywxMiBAQCBi
b29sIFJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uOjpkZWNvZGUoSVBDOjpBcmd1bWVudERlY29k
ZXImIGRlY29kZXIsIFJlbW90ZUxheQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0Lm1f
YWxsb3dzVXNlclNjYWxpbmcpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKHJlc3VsdC5tX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5t
X3ZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0Lm1fY2FsbGJhY2tJRHMpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTgxOSw2ICs4MjgsOCBAQCBDU3RyaW5nIFJlbW90
ZUxheWVyVHJlZVRyYW5zYWN0aW9uOjpkZXNjcmlwdGlvbigpIGNvbnN0CiAgICAgdHMuZHVtcFBy
b3BlcnR5KCJtYXhpbXVtU2NhbGVGYWN0b3IiLCBtX21heGltdW1TY2FsZUZhY3Rvcik7CiAgICAg
dHMuZHVtcFByb3BlcnR5KCJpbml0aWFsU2NhbGVGYWN0b3IiLCBtX2luaXRpYWxTY2FsZUZhY3Rv
cik7CiAgICAgdHMuZHVtcFByb3BlcnR5KCJ2aWV3cG9ydE1ldGFUYWdXaWR0aCIsIG1fdmlld3Bv
cnRNZXRhVGFnV2lkdGgpOworICAgIHRzLmR1bXBQcm9wZXJ0eSgidmlld3BvcnRNZXRhVGFnV2lk
dGhXYXNFeHBsaWNpdCIsIG1fdmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCk7CisgICAg
dHMuZHVtcFByb3BlcnR5KCJ2aWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdlRG9jdW1lbnQiLCBt
X3ZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCk7CiAgICAgdHMuZHVtcFByb3Bl
cnR5KCJyZW5kZXJUcmVlU2l6ZSIsIG1fcmVuZGVyVHJlZVNpemUpOwogCiAgICAgdHMgPDwgInJv
b3QtbGF5ZXIgIiA8PCBtX3Jvb3RMYXllcklEIDw8ICIpIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5kZXggNThiYzk5MmJkMmU1ZDk2YjE1
YmEyMmRlNWEwOTYwYWUwOTEzMWU0ZS4uZjk5OTYyYTkwZTYyNDk3YjE5OWEwZDE3OTBhNzE5Nzky
Nzc5ZTE2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXcubW0KQEAgLTIwMSw2ICsyMDEsOCBAQCBXS1dlYlZpZXcqIGZyb21XZWJQYWdlUHJveHko
V2ViS2l0OjpXZWJQYWdlUHJveHkmIHBhZ2UpCiAgICAgQ0dTaXplIF9tYXhpbXVtVW5vYnNjdXJl
ZFNpemVPdmVycmlkZTsKICAgICBDR1JlY3QgX2lucHV0Vmlld0JvdW5kczsKICAgICBDR0Zsb2F0
IF92aWV3cG9ydE1ldGFUYWdXaWR0aDsKKyAgICBCT09MIF92aWV3cG9ydE1ldGFUYWdXaWR0aFdh
c0V4cGxpY2l0OworICAgIEJPT0wgX3ZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVu
dDsKICAgICBDR0Zsb2F0IF9pbml0aWFsU2NhbGVGYWN0b3I7CiAgICAgQk9PTCBfZmFzdENsaWNr
aW5nSXNEaXNhYmxlZDsKIApAQCAtMTExOCw2ICsxMTIwLDggQEAgc3RhdGljIGlubGluZSBib29s
IGFyZUVzc2VudGlhbGx5RXF1YWxBc0Zsb2F0KGZsb2F0IGEsIGZsb2F0IGIpCiAgICAgICAgIFtf
c2Nyb2xsVmlldyBzZXRab29tU2NhbGU6bGF5ZXJUcmVlVHJhbnNhY3Rpb24ucGFnZVNjYWxlRmFj
dG9yKCldOwogCiAgICAgX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoID0gbGF5ZXJUcmVlVHJhbnNhY3Rp
b24udmlld3BvcnRNZXRhVGFnV2lkdGgoKTsKKyAgICBfdmlld3BvcnRNZXRhVGFnV2lkdGhXYXNF
eHBsaWNpdCA9IGxheWVyVHJlZVRyYW5zYWN0aW9uLnZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhw
bGljaXQoKTsKKyAgICBfdmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50ID0gbGF5
ZXJUcmVlVHJhbnNhY3Rpb24udmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50KCk7
CiAgICAgX2luaXRpYWxTY2FsZUZhY3RvciA9IGxheWVyVHJlZVRyYW5zYWN0aW9uLmluaXRpYWxT
Y2FsZUZhY3RvcigpOwogICAgIGlmICghW19jb250ZW50VmlldyBfbWF5RGlzYWJsZURvdWJsZVRh
cEdlc3R1cmVzRHVyaW5nU2luZ2xlVGFwXSkKICAgICAgICAgW19jb250ZW50VmlldyBfc2V0RG91
YmxlVGFwR2VzdHVyZXNFbmFibGVkOnNlbGYuX2FsbG93c0RvdWJsZVRhcEdlc3R1cmVzXTsKQEAg
LTE1OTUsNiArMTU5OSwxMCBAQCBzdGF0aWMgV2ViQ29yZTo6RmxvYXRQb2ludCBjb25zdHJhaW5D
b250ZW50T2Zmc2V0KFdlYkNvcmU6OkZsb2F0UG9pbnQgY29udGVudE9mZgogICAgIGlmICghW19z
Y3JvbGxWaWV3IGlzWm9vbUVuYWJsZWRdIHx8IFtfc2Nyb2xsVmlldyBtaW5pbXVtWm9vbVNjYWxl
XSA+PSBbX3Njcm9sbFZpZXcgbWF4aW11bVpvb21TY2FsZV0pCiAgICAgICAgIHJldHVybiBOTzsK
IAorICAgIC8vIElmIHRoZSB2aWV3cG9ydCB3aWR0aCB3YXMgbm90IGV4cGxpY2l0LCB3ZSBhbGxv
dyBkb3VibGUgdGFwIGdlc3R1cmVzLgorICAgIGlmICghX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2Fz
RXhwbGljaXQgfHwgX3ZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCkKKyAgICAg
ICAgcmV0dXJuIFlFUzsKKwogICAgIC8vIEZvciBzY2FsYWJsZSB2aWV3cG9ydHMsIG9ubHkgZGlz
YWJsZSBkb3VibGUgdGFwIGdlc3R1cmVzIGlmIHRoZSB2aWV3cG9ydCB3aWR0aCBpcyBkZXZpY2Ug
d2lkdGguCiAgICAgaWYgKF92aWV3cG9ydE1ldGFUYWdXaWR0aCAhPSBXZWJDb3JlOjpWaWV3cG9y
dEFyZ3VtZW50czo6VmFsdWVEZXZpY2VXaWR0aCkKICAgICAgICAgcmV0dXJuIFlFUzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBkYjQwNDZj
MTkwYWI5ZTFiNTdiYTM3ZmQ2YTdjMDA1NDk0MmJkMzVjLi5mMDc4MWE0YmMxN2VlMzM3NjYxNmVk
Y2U4MTViZWVmMWM0MDRkOTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCkBAIC0yOTgyLDYgKzI5ODIsOCBAQCB2b2lkIFdlYlBhZ2U6OndpbGxD
b21taXRMYXllclRyZWUoUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24mIGxheWVyVHJhbnNhY3Rp
b24pCiAgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRNYXhpbXVtU2NhbGVGYWN0b3IobV92aWV3cG9y
dENvbmZpZ3VyYXRpb24ubWF4aW11bVNjYWxlKCkpOwogICAgIGxheWVyVHJhbnNhY3Rpb24uc2V0
SW5pdGlhbFNjYWxlRmFjdG9yKG1fdmlld3BvcnRDb25maWd1cmF0aW9uLmluaXRpYWxTY2FsZSgp
KTsKICAgICBsYXllclRyYW5zYWN0aW9uLnNldFZpZXdwb3J0TWV0YVRhZ1dpZHRoKG1fdmlld3Bv
cnRDb25maWd1cmF0aW9uLnZpZXdwb3J0QXJndW1lbnRzKCkud2lkdGgpOworICAgIGxheWVyVHJh
bnNhY3Rpb24uc2V0Vmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdChtX3ZpZXdwb3J0Q29u
ZmlndXJhdGlvbi52aWV3cG9ydEFyZ3VtZW50cygpLndpZHRoV2FzRXhwbGljaXQpOworICAgIGxh
eWVyVHJhbnNhY3Rpb24uc2V0Vmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50KG1f
dmlld3BvcnRDb25maWd1cmF0aW9uLnZpZXdwb3J0QXJndW1lbnRzKCkudHlwZSA9PSBWaWV3cG9y
dEFyZ3VtZW50czo6SW1hZ2VEb2N1bWVudCk7CiAgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRBbGxv
d3NVc2VyU2NhbGluZyhhbGxvd3NVc2VyU2NhbGluZygpKTsKICNlbmRpZgogI2lmIFBMQVRGT1JN
KE1BQykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269902</attachid>
            <date>2016-01-26 12:00:47 -0800</date>
            <delta_ts>2016-01-26 12:03:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-153465-20160127070019.patch</filename>
            <type>text/plain</type>
            <size>40720</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1NDY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzRlOTkyZDNjNjZjMWU4
Mjg0NjY2NGIyMTA0MzJhODkwODM2M2YxMy4uOWM0ZTIzMGE0M2MxMjcwYWMyZGIwMTBmNjAxM2Fi
Nzc1ZmE5NjVlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTAxLTI2ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBEb2N1bWVudHMgd2l0
aG91dCBhbiBleHBsaWNpdCB3aWR0aCBzaG91bGQgbm90IGdldCBmYXN0IHRhcHBpbmcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzQ2NQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMjM5NjI1Mjk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQXMgdGhlIHRpdGxlIHNheXMsIGRvY3VtZW50cyB0aGF0IGRv
IG5vdCBzZXQgYSB2aWV3cG9ydCBzaG91bGQKKyAgICAgICAgbm90IGdldCB0aGUgZmFzdCBjbGlj
ayBiZWhhdmlvdXIuIFRoZXJlIHdlcmUgY29tcGxhaW50cyB0aGF0IHdlIGJyb2tlCisgICAgICAg
IGRvdWJsZS10YXAgdG8gc2Nyb2xsIGluIEltYWdlRG9jdW1lbnRzIHdoZXJlIHRoZSBpbWFnZSB3
YXMgbmFycm93IGFuZCBsb25nLgorCisgICAgICAgIFRoZSBmaXggaXMgdG8ganVzdCBrZWVwIGEg
ZmxhZyB0aGF0IHRlbGxzIHRoZSBVSSBwcm9jZXNzIGlmIHRoZQorICAgICAgICB3aWR0aCB3YXMg
ZXhwbGljaXQuIEhvd2V2ZXIsIGl0IHR1cm5zIG91dCB0aGF0IHRob3NlIEltYWdlRG9jdW1lbnRz
CisgICAgICAgIGFyZSBnaXZlbiBhbiBleHBsaWNpdCBkZXZpY2Utd2lkdGgsIHdoaWNoIGlzIGZp
bmUgZm9yIHNjYWxpbmcgYnV0CisgICAgICAgIHJlYWxseSBzaG91bGQgYmVoYXZlIGFzIGF1dG8g
Zm9yIGZhc3QgdGFwcGluZy4gU28gd2UgYWxzbyBuZWVkCisgICAgICAgIHRvIHRlbGwgdGhlIFVJ
UHJvY2VzcyBpZiB0aGUgdmlld3BvcnQgYXJndW1lbnRzIGNhbWUgZnJvbSBhbgorICAgICAgICBJ
bWFnZURvY3VtZW50LgorCisgICAgICAgIFRlc3Q6IGZhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1u
by13aWR0aC12YWx1ZS1hbGxvd3MtZG91YmxlLXRhcC5odG1sCisKKyAgICAgICAgKiBkb20vVmll
d3BvcnRBcmd1bWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZmluZFNpemVWYWx1ZSk6IEFk
ZCBhIHBhcmFtZXRlciB0aGF0IHRvZ2dsZXMgYSBmbGFnCisgICAgICAgIGlmIHRoZSBzaXplIHdh
cyBleHBsaWNpdGx5IHNldC4KKyAgICAgICAgKFdlYkNvcmU6OnNldFZpZXdwb3J0RmVhdHVyZSk6
IFJlbWVtYmVyIGlmIHRoZSB3aWR0aCB3YXMKKyAgICAgICAgZXhwbGljaXQuCisgICAgICAgICog
ZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmg6IEFkZCBhIHdpZHRoV2FzRXhwbGljaXQgZmxhZy4KKyAg
ICAgICAgKFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzOjpvcGVyYXRvcj09KToKKwogMjAxNi0w
MS0yMiAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgU3R5bGUg
cmVzb2x2ZXIgaW5pdGlhbGl6YXRpb24gY2xlYW51cHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBkMWIxM2JiYTlj
MDNhY2FiMjU2NjUwNWNkYjlmNTYwYjk3MjFmNWYyLi5hNzA1ZTFkYmFiMjZiYmE4MWE3MWFlYmJi
MTJiNjc5NTk0ZDI0NDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMTYtMDEtMjYg
IERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIERvY3VtZW50
cyB3aXRob3V0IGFuIGV4cGxpY2l0IHdpZHRoIHNob3VsZCBub3QgZ2V0IGZhc3QgdGFwcGluZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUzNDY1Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yMzk2MjUyOT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBcyB0aGUgdGl0bGUgc2F5cywgZG9jdW1lbnRzIHRo
YXQgZG8gbm90IHNldCBhIHZpZXdwb3J0IHNob3VsZAorICAgICAgICBub3QgZ2V0IHRoZSBmYXN0
IGNsaWNrIGJlaGF2aW91ci4gVGhlcmUgd2VyZSBjb21wbGFpbnRzIHRoYXQgd2UgYnJva2UKKyAg
ICAgICAgZG91YmxlLXRhcCB0byBzY3JvbGwgaW4gSW1hZ2VEb2N1bWVudHMgd2hlcmUgdGhlIGlt
YWdlIHdhcyBuYXJyb3cgYW5kIGxvbmcuCisKKyAgICAgICAgVGhlIGZpeCBpcyB0byBqdXN0IGtl
ZXAgYSBmbGFnIHRoYXQgdGVsbHMgdGhlIFVJIHByb2Nlc3MgaWYgdGhlCisgICAgICAgIHdpZHRo
IHdhcyBleHBsaWNpdC4gSG93ZXZlciwgaXQgdHVybnMgb3V0IHRoYXQgdGhvc2UgSW1hZ2VEb2N1
bWVudHMKKyAgICAgICAgYXJlIGdpdmVuIGFuIGV4cGxpY2l0IGRldmljZS13aWR0aCwgd2hpY2gg
aXMgZmluZSBmb3Igc2NhbGluZyBidXQKKyAgICAgICAgcmVhbGx5IHNob3VsZCBiZWhhdmUgYXMg
YXV0byBmb3IgZmFzdCB0YXBwaW5nLiBTbyB3ZSBhbHNvIG5lZWQKKyAgICAgICAgdG8gdGVsbCB0
aGUgVUlQcm9jZXNzIGlmIHRoZSB2aWV3cG9ydCBhcmd1bWVudHMgY2FtZSBmcm9tIGFuCisgICAg
ICAgIEltYWdlRG9jdW1lbnQuCisKKyAgICAgICAgKiBTaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJl
ZVRyYW5zYWN0aW9uLmg6IEFkZCB0d28gbmV3IGZsYWdzIGludG8KKyAgICAgICAgdGhlIHRyYW5z
YWN0aW9uLgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6dmll
d3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxh
eWVyVHJlZVRyYW5zYWN0aW9uOjpzZXRWaWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KToK
KyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OnZpZXdwb3J0TWV0
YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVy
VHJlZVRyYW5zYWN0aW9uOjpzZXRWaWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdlRG9jdW1lbnQp
OgorICAgICAgICAqIFNoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW06Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uOjplbmNvZGUpOgorICAg
ICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbjo6ZGVjb2RlKToKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OmRlc2NyaXB0aW9uKToKKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tOgorICAgICAgICAoLVtX
S1dlYlZpZXcgX2RpZENvbW1pdExheWVyVHJlZTpdKTogTm90aWNlIHdoZXRoZXIgb3Igbm90IHRo
ZSB2aWV3cG9ydAorICAgICAgICB3aWR0aCB3YXMgZXhwbGljaXQuCisgICAgICAgICgtW1dLV2Vi
VmlldyBfYWxsb3dzRG91YmxlVGFwR2VzdHVyZXNdKTogUmV0dXJuIHllcyBpZiB0aGUgd2lkdGgK
KyAgICAgICAgd2FzIG5vdCBleHBsaWNpdCwgb3IgaWYgdGhlIHZpZXdwb3J0IGNhbWUgZnJvbSBh
biBJbWFnZURvY3VtZW50LgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6d2lsbENvbW1pdExheWVyVHJlZSk6CisKIDIw
MTYtMDEtMjIgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlZHVj
ZSB1c2Ugb2YgZXF1YWxJZ25vcmluZ0Nhc2UgdG8ganVzdCBpZ25vcmUgQVNDSUkgY2FzZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5jcHAKaW5kZXggMTExZDQyZWQ4N2UyMTgw
MzE1OGQ1MThjOTVhZDU1ZGVmOWE3YzQ4MS4uODFjZjc5ZDFhYWNmZmRlOGYxMGYwZjU0MzdmMjRm
MTgzMzJlYzY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVmlld3BvcnRBcmd1bWVudHMuY3BwCkBA
IC0zMDcsMjQgKzMwNywzMSBAQCBzdGF0aWMgZmxvYXQgbnVtZXJpY1ByZWZpeChjb25zdCBTdHJp
bmcmIGtleVN0cmluZywgY29uc3QgU3RyaW5nJiB2YWx1ZVN0cmluZywgRAogICAgIHJldHVybiB2
YWx1ZTsKIH0KIAotc3RhdGljIGZsb2F0IGZpbmRTaXplVmFsdWUoY29uc3QgU3RyaW5nJiBrZXlT
dHJpbmcsIGNvbnN0IFN0cmluZyYgdmFsdWVTdHJpbmcsIERvY3VtZW50KiBkb2N1bWVudCkKK3N0
YXRpYyBmbG9hdCBmaW5kU2l6ZVZhbHVlKGNvbnN0IFN0cmluZyYga2V5U3RyaW5nLCBjb25zdCBT
dHJpbmcmIHZhbHVlU3RyaW5nLCBEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wqIHZhbHVlV2FzRXhw
bGljaXQgPSBudWxscHRyKQogewogICAgIC8vIDEpIE5vbi1uZWdhdGl2ZSBudW1iZXIgdmFsdWVz
IGFyZSB0cmFuc2xhdGVkIHRvIHB4IGxlbmd0aHMuCiAgICAgLy8gMikgTmVnYXRpdmUgbnVtYmVy
IHZhbHVlcyBhcmUgdHJhbnNsYXRlZCB0byBhdXRvLgogICAgIC8vIDMpIGRldmljZS13aWR0aCBh
bmQgZGV2aWNlLWhlaWdodCBhcmUgdXNlZCBhcyBrZXl3b3Jkcy4KICAgICAvLyA0KSBPdGhlciBr
ZXl3b3JkcyBhbmQgdW5rbm93biB2YWx1ZXMgdHJhbnNsYXRlIHRvIDAuMC4KIAorICAgIGlmICh2
YWx1ZVdhc0V4cGxpY2l0KQorICAgICAgICAqdmFsdWVXYXNFeHBsaWNpdCA9IHRydWU7CisKICAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodmFsdWVTdHJpbmcsICJkZXZpY2Ut
d2lkdGgiKSkKICAgICAgICAgcmV0dXJuIFZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmljZVdp
ZHRoOworCiAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHZhbHVlU3RyaW5n
LCAiZGV2aWNlLWhlaWdodCIpKQogICAgICAgICByZXR1cm4gVmlld3BvcnRBcmd1bWVudHM6OlZh
bHVlRGV2aWNlSGVpZ2h0OwogCi0gICAgZmxvYXQgdmFsdWUgPSBudW1lcmljUHJlZml4KGtleVN0
cmluZywgdmFsdWVTdHJpbmcsIGRvY3VtZW50KTsKKyAgICBmbG9hdCBzaXplVmFsdWUgPSBudW1l
cmljUHJlZml4KGtleVN0cmluZywgdmFsdWVTdHJpbmcsIGRvY3VtZW50KTsKIAotICAgIGlmICh2
YWx1ZSA8IDApCisgICAgaWYgKHNpemVWYWx1ZSA8IDApIHsKKyAgICAgICAgaWYgKHZhbHVlV2Fz
RXhwbGljaXQpCisgICAgICAgICAgICAqdmFsdWVXYXNFeHBsaWNpdCA9IGZhbHNlOwogICAgICAg
ICByZXR1cm4gVmlld3BvcnRBcmd1bWVudHM6OlZhbHVlQXV0bzsKKyAgICB9CiAKLSAgICByZXR1
cm4gdmFsdWU7CisgICAgcmV0dXJuIHNpemVWYWx1ZTsKIH0KIAogc3RhdGljIGZsb2F0IGZpbmRT
Y2FsZVZhbHVlKGNvbnN0IFN0cmluZyYga2V5U3RyaW5nLCBjb25zdCBTdHJpbmcmIHZhbHVlU3Ry
aW5nLCBEb2N1bWVudCogZG9jdW1lbnQpCkBAIC0zODMsNyArMzkwLDcgQEAgdm9pZCBzZXRWaWV3
cG9ydEZlYXR1cmUoY29uc3QgU3RyaW5nJiBrZXlTdHJpbmcsIGNvbnN0IFN0cmluZyYgdmFsdWVT
dHJpbmcsIERvY3UKICAgICBWaWV3cG9ydEFyZ3VtZW50cyogYXJndW1lbnRzID0gc3RhdGljX2Nh
c3Q8Vmlld3BvcnRBcmd1bWVudHMqPihkYXRhKTsKIAogICAgIGlmIChrZXlTdHJpbmcgPT0gIndp
ZHRoIikKLSAgICAgICAgYXJndW1lbnRzLT53aWR0aCA9IGZpbmRTaXplVmFsdWUoa2V5U3RyaW5n
LCB2YWx1ZVN0cmluZywgZG9jdW1lbnQpOworICAgICAgICBhcmd1bWVudHMtPndpZHRoID0gZmlu
ZFNpemVWYWx1ZShrZXlTdHJpbmcsIHZhbHVlU3RyaW5nLCBkb2N1bWVudCwgJmFyZ3VtZW50cy0+
d2lkdGhXYXNFeHBsaWNpdCk7CiAgICAgZWxzZSBpZiAoa2V5U3RyaW5nID09ICJoZWlnaHQiKQog
ICAgICAgICBhcmd1bWVudHMtPmhlaWdodCA9IGZpbmRTaXplVmFsdWUoa2V5U3RyaW5nLCB2YWx1
ZVN0cmluZywgZG9jdW1lbnQpOwogICAgIGVsc2UgaWYgKGtleVN0cmluZyA9PSAiaW5pdGlhbC1z
Y2FsZSIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vVmlld3BvcnRBcmd1bWVudHMu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5oCmluZGV4IDRkZjUyZGQ2
ZTg0ODBjY2Q3ODlhMzE1ZWNjMTk4Y2Y2N2MyNWY1NjguLmVkZDlmODZlOWJjMjZmOWZhZDdlZDRi
OTZiMjNjNGM1Mzc3ZmJhODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9y
dEFyZ3VtZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5o
CkBAIC05NSw2ICs5NSw3IEBAIHN0cnVjdCBWaWV3cG9ydEFyZ3VtZW50cyB7CiAgICAgZmxvYXQg
dXNlclpvb20geyBWYWx1ZUF1dG8gfTsKICAgICBmbG9hdCBvcmllbnRhdGlvbiB7IFZhbHVlQXV0
byB9OwogICAgIGZsb2F0IHNocmlua1RvRml0IHsgVmFsdWVBdXRvIH07CisgICAgYm9vbCB3aWR0
aFdhc0V4cGxpY2l0IHsgZmFsc2UgfTsKIAogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBWaWV3
cG9ydEFyZ3VtZW50cyYgb3RoZXIpIGNvbnN0CiAgICAgewpAQCAtMTExLDcgKzExMiw4IEBAIHN0
cnVjdCBWaWV3cG9ydEFyZ3VtZW50cyB7CiAgICAgICAgICAgICAmJiBtYXhab29tID09IG90aGVy
Lm1heFpvb20KICAgICAgICAgICAgICYmIHVzZXJab29tID09IG90aGVyLnVzZXJab29tCiAgICAg
ICAgICAgICAmJiBvcmllbnRhdGlvbiA9PSBvdGhlci5vcmllbnRhdGlvbgotICAgICAgICAgICAg
JiYgc2hyaW5rVG9GaXQgPT0gb3RoZXIuc2hyaW5rVG9GaXQ7CisgICAgICAgICAgICAmJiBzaHJp
bmtUb0ZpdCA9PSBvdGhlci5zaHJpbmtUb0ZpdAorICAgICAgICAgICAgJiYgd2lkdGhXYXNFeHBs
aWNpdCA9PSBvdGhlci53aWR0aFdhc0V4cGxpY2l0OwogICAgIH0KIAogICAgIGJvb2wgb3BlcmF0
b3IhPShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgb3RoZXIpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLmggYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLmgKaW5k
ZXggZTY4ZTIwYmRjMzc4MmY4MzY3NDYxNmM3NzU4MGRlY2NjY2U2ODE5Yi4uNGU5OWFjZDI5OTdk
Yjc0NGYzNWM3NDFlNDUzZDMwMzI5NzBkZGI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24uaApAQCAtMjMwLDYgKzIz
MCwxMiBAQCBwdWJsaWM6CiAgICAgZG91YmxlIHZpZXdwb3J0TWV0YVRhZ1dpZHRoKCkgY29uc3Qg
eyByZXR1cm4gbV92aWV3cG9ydE1ldGFUYWdXaWR0aDsgfQogICAgIHZvaWQgc2V0Vmlld3BvcnRN
ZXRhVGFnV2lkdGgoZG91YmxlIHdpZHRoKSB7IG1fdmlld3BvcnRNZXRhVGFnV2lkdGggPSB3aWR0
aDsgfQogCisgICAgYm9vbCB2aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KCkgY29uc3Qg
eyByZXR1cm4gbV92aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0OyB9CisgICAgdm9pZCBz
ZXRWaWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0KGJvb2wgd2lkdGhXYXNFeHBsaWNpdCkg
eyBtX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQgPSB3aWR0aFdhc0V4cGxpY2l0OyB9
CisKKyAgICBib29sIHZpZXdwb3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCgpIGNvbnN0
IHsgcmV0dXJuIG1fdmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3VtZW50OyB9CisgICAg
dm9pZCBzZXRWaWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdlRG9jdW1lbnQoYm9vbCBjYW1lRnJv
bUltYWdlRG9jdW1lbnQpIHsgbV92aWV3cG9ydE1ldGFUYWdDYW1lRnJvbUltYWdlRG9jdW1lbnQg
PSBjYW1lRnJvbUltYWdlRG9jdW1lbnQ7IH0KKwogICAgIGJvb2wgYWxsb3dzVXNlclNjYWxpbmco
KSBjb25zdCB7IHJldHVybiBtX2FsbG93c1VzZXJTY2FsaW5nOyB9CiAgICAgdm9pZCBzZXRBbGxv
d3NVc2VyU2NhbGluZyhib29sIGFsbG93c1VzZXJTY2FsaW5nKSB7IG1fYWxsb3dzVXNlclNjYWxp
bmcgPSBhbGxvd3NVc2VyU2NhbGluZzsgfQogCkBAIC0yNzEsNiArMjc3LDggQEAgcHJpdmF0ZToK
ICAgICBXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmVzIG1fbmV3bHlSZWFjaGVkTGF5b3V0TWlsZXN0
b25lcyB7IDAgfTsKICAgICBib29sIG1fc2NhbGVXYXNTZXRCeVVJUHJvY2VzcyB7IGZhbHNlIH07
CiAgICAgYm9vbCBtX2FsbG93c1VzZXJTY2FsaW5nIHsgZmFsc2UgfTsKKyAgICBib29sIG1fdmll
d3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCB7IGZhbHNlIH07CisgICAgYm9vbCBtX3ZpZXdw
b3J0TWV0YVRhZ0NhbWVGcm9tSW1hZ2VEb2N1bWVudCB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVt
b3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1Jl
bW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uLm1tCmluZGV4IDdhOWY1MjllMzk4NTliYTU4YjNkNzY5
ZTZhMzViNWQyYmUxZTBkNTUuLjczZDczNGIxZTgxODE5ZDI3NzVhZDlmMzg5NGMwMWQ5ZjUxMmM0
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVl
VHJhbnNhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXll
clRyZWVUcmFuc2FjdGlvbi5tbQpAQCAtNTI4LDYgKzUyOCw5IEBAIHZvaWQgUmVtb3RlTGF5ZXJU
cmVlVHJhbnNhY3Rpb246OmVuY29kZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikgY29u
c3QKICAgICBlbmNvZGVyIDw8IG1fc2NhbGVXYXNTZXRCeVVJUHJvY2VzczsKICAgICBlbmNvZGVy
IDw8IG1fYWxsb3dzVXNlclNjYWxpbmc7CiAKKyAgICBlbmNvZGVyIDw8IG1fdmlld3BvcnRNZXRh
VGFnV2lkdGhXYXNFeHBsaWNpdDsKKyAgICBlbmNvZGVyIDw8IG1fdmlld3BvcnRNZXRhVGFnQ2Ft
ZUZyb21JbWFnZURvY3VtZW50OworCiAgICAgZW5jb2RlciA8PCBtX2NhbGxiYWNrSURzOwogfQog
CkBAIC02MjAsNiArNjIzLDEyIEBAIGJvb2wgUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OmRl
Y29kZShJUEM6OkFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgUmVtb3RlTGF5CiAgICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShyZXN1bHQubV9hbGxvd3NVc2VyU2NhbGluZykpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAorICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0Lm1fdmlld3BvcnRNZXRh
VGFnV2lkdGhXYXNFeHBsaWNpdCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGUocmVzdWx0Lm1fdmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3Vt
ZW50KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShy
ZXN1bHQubV9jYWxsYmFja0lEcykpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtODE5LDYg
KzgyOCw4IEBAIENTdHJpbmcgUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OmRlc2NyaXB0aW9u
KCkgY29uc3QKICAgICB0cy5kdW1wUHJvcGVydHkoIm1heGltdW1TY2FsZUZhY3RvciIsIG1fbWF4
aW11bVNjYWxlRmFjdG9yKTsKICAgICB0cy5kdW1wUHJvcGVydHkoImluaXRpYWxTY2FsZUZhY3Rv
ciIsIG1faW5pdGlhbFNjYWxlRmFjdG9yKTsKICAgICB0cy5kdW1wUHJvcGVydHkoInZpZXdwb3J0
TWV0YVRhZ1dpZHRoIiwgbV92aWV3cG9ydE1ldGFUYWdXaWR0aCk7CisgICAgdHMuZHVtcFByb3Bl
cnR5KCJ2aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0IiwgbV92aWV3cG9ydE1ldGFUYWdX
aWR0aFdhc0V4cGxpY2l0KTsKKyAgICB0cy5kdW1wUHJvcGVydHkoInZpZXdwb3J0TWV0YVRhZ0Nh
bWVGcm9tSW1hZ2VEb2N1bWVudCIsIG1fdmlld3BvcnRNZXRhVGFnQ2FtZUZyb21JbWFnZURvY3Vt
ZW50KTsKICAgICB0cy5kdW1wUHJvcGVydHkoInJlbmRlclRyZWVTaXplIiwgbV9yZW5kZXJUcmVl
U2l6ZSk7CiAKICAgICB0cyA8PCAicm9vdC1sYXllciAiIDw8IG1fcm9vdExheWVySUQgPDwgIiki
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZp
ZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpp
bmRleCA1OGJjOTkyYmQyZTVkOTZiMTViYTIyZGU1YTA5NjBhZTA5MTMxZTRlLi5mOTk5NjJhOTBl
NjI0OTdiMTk5YTBkMTc5MGE3MTk3OTI3NzllMTY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpAQCAtMjAxLDYgKzIwMSw4IEBAIFdLV2Vi
VmlldyogZnJvbVdlYlBhZ2VQcm94eShXZWJLaXQ6OldlYlBhZ2VQcm94eSYgcGFnZSkKICAgICBD
R1NpemUgX21heGltdW1Vbm9ic2N1cmVkU2l6ZU92ZXJyaWRlOwogICAgIENHUmVjdCBfaW5wdXRW
aWV3Qm91bmRzOwogICAgIENHRmxvYXQgX3ZpZXdwb3J0TWV0YVRhZ1dpZHRoOworICAgIEJPT0wg
X3ZpZXdwb3J0TWV0YVRhZ1dpZHRoV2FzRXhwbGljaXQ7CisgICAgQk9PTCBfdmlld3BvcnRNZXRh
VGFnQ2FtZUZyb21JbWFnZURvY3VtZW50OwogICAgIENHRmxvYXQgX2luaXRpYWxTY2FsZUZhY3Rv
cjsKICAgICBCT09MIF9mYXN0Q2xpY2tpbmdJc0Rpc2FibGVkOwogCkBAIC0xMTE4LDYgKzExMjAs
OCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgYXJlRXNzZW50aWFsbHlFcXVhbEFzRmxvYXQoZmxvYXQg
YSwgZmxvYXQgYikKICAgICAgICAgW19zY3JvbGxWaWV3IHNldFpvb21TY2FsZTpsYXllclRyZWVU
cmFuc2FjdGlvbi5wYWdlU2NhbGVGYWN0b3IoKV07CiAKICAgICBfdmlld3BvcnRNZXRhVGFnV2lk
dGggPSBsYXllclRyZWVUcmFuc2FjdGlvbi52aWV3cG9ydE1ldGFUYWdXaWR0aCgpOworICAgIF92
aWV3cG9ydE1ldGFUYWdXaWR0aFdhc0V4cGxpY2l0ID0gbGF5ZXJUcmVlVHJhbnNhY3Rpb24udmll
d3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCgpOworICAgIF92aWV3cG9ydE1ldGFUYWdDYW1l
RnJvbUltYWdlRG9jdW1lbnQgPSBsYXllclRyZWVUcmFuc2FjdGlvbi52aWV3cG9ydE1ldGFUYWdD
YW1lRnJvbUltYWdlRG9jdW1lbnQoKTsKICAgICBfaW5pdGlhbFNjYWxlRmFjdG9yID0gbGF5ZXJU
cmVlVHJhbnNhY3Rpb24uaW5pdGlhbFNjYWxlRmFjdG9yKCk7CiAgICAgaWYgKCFbX2NvbnRlbnRW
aWV3IF9tYXlEaXNhYmxlRG91YmxlVGFwR2VzdHVyZXNEdXJpbmdTaW5nbGVUYXBdKQogICAgICAg
ICBbX2NvbnRlbnRWaWV3IF9zZXREb3VibGVUYXBHZXN0dXJlc0VuYWJsZWQ6c2VsZi5fYWxsb3dz
RG91YmxlVGFwR2VzdHVyZXNdOwpAQCAtMTU5NSw2ICsxNTk5LDEwIEBAIHN0YXRpYyBXZWJDb3Jl
OjpGbG9hdFBvaW50IGNvbnN0cmFpbkNvbnRlbnRPZmZzZXQoV2ViQ29yZTo6RmxvYXRQb2ludCBj
b250ZW50T2ZmCiAgICAgaWYgKCFbX3Njcm9sbFZpZXcgaXNab29tRW5hYmxlZF0gfHwgW19zY3Jv
bGxWaWV3IG1pbmltdW1ab29tU2NhbGVdID49IFtfc2Nyb2xsVmlldyBtYXhpbXVtWm9vbVNjYWxl
XSkKICAgICAgICAgcmV0dXJuIE5POwogCisgICAgLy8gSWYgdGhlIHZpZXdwb3J0IHdpZHRoIHdh
cyBub3QgZXhwbGljaXQsIHdlIGFsbG93IGRvdWJsZSB0YXAgZ2VzdHVyZXMuCisgICAgaWYgKCFf
dmlld3BvcnRNZXRhVGFnV2lkdGhXYXNFeHBsaWNpdCB8fCBfdmlld3BvcnRNZXRhVGFnQ2FtZUZy
b21JbWFnZURvY3VtZW50KQorICAgICAgICByZXR1cm4gWUVTOworCiAgICAgLy8gRm9yIHNjYWxh
YmxlIHZpZXdwb3J0cywgb25seSBkaXNhYmxlIGRvdWJsZSB0YXAgZ2VzdHVyZXMgaWYgdGhlIHZp
ZXdwb3J0IHdpZHRoIGlzIGRldmljZSB3aWR0aC4KICAgICBpZiAoX3ZpZXdwb3J0TWV0YVRhZ1dp
ZHRoICE9IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzOjpWYWx1ZURldmljZVdpZHRoKQogICAg
ICAgICByZXR1cm4gWUVTOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCmluZGV4IGRiNDA0NmMxOTBhYjllMWI1N2JhMzdmZDZhN2MwMDU0OTQyYmQzNWMu
LmYwNzgxYTRiYzE3ZWUzMzc2NjE2ZWRjZTgxNWJlZWYxYzQwNGQ5M2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI5ODIsNiArMjk4Miw4
IEBAIHZvaWQgV2ViUGFnZTo6d2lsbENvbW1pdExheWVyVHJlZShSZW1vdGVMYXllclRyZWVUcmFu
c2FjdGlvbiYgbGF5ZXJUcmFuc2FjdGlvbikKICAgICBsYXllclRyYW5zYWN0aW9uLnNldE1heGlt
dW1TY2FsZUZhY3RvcihtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5tYXhpbXVtU2NhbGUoKSk7CiAg
ICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRJbml0aWFsU2NhbGVGYWN0b3IobV92aWV3cG9ydENvbmZp
Z3VyYXRpb24uaW5pdGlhbFNjYWxlKCkpOwogICAgIGxheWVyVHJhbnNhY3Rpb24uc2V0Vmlld3Bv
cnRNZXRhVGFnV2lkdGgobV92aWV3cG9ydENvbmZpZ3VyYXRpb24udmlld3BvcnRBcmd1bWVudHMo
KS53aWR0aCk7CisgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRWaWV3cG9ydE1ldGFUYWdXaWR0aFdh
c0V4cGxpY2l0KG1fdmlld3BvcnRDb25maWd1cmF0aW9uLnZpZXdwb3J0QXJndW1lbnRzKCkud2lk
dGhXYXNFeHBsaWNpdCk7CisgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRWaWV3cG9ydE1ldGFUYWdD
YW1lRnJvbUltYWdlRG9jdW1lbnQobV92aWV3cG9ydENvbmZpZ3VyYXRpb24udmlld3BvcnRBcmd1
bWVudHMoKS50eXBlID09IFZpZXdwb3J0QXJndW1lbnRzOjpJbWFnZURvY3VtZW50KTsKICAgICBs
YXllclRyYW5zYWN0aW9uLnNldEFsbG93c1VzZXJTY2FsaW5nKGFsbG93c1VzZXJTY2FsaW5nKCkp
OwogI2VuZGlmCiAjaWYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU5MzIwNTVkNTg5NDRjMzE5ZTU0
MzdlYzk3MmY2YzUwMzEyM2Y0NjMuLjZlNGFiY2Y2MDU3N2U2YTc0ZjQ3ODhlODEwNjZhY2Y0M2Qz
ZmI3ZDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNi0wMS0yNiAgRGVhbiBKYWNrc29uICA8
ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gRG9jdW1lbnRzIHdpdGhvdXQgYW4gZXhw
bGljaXQgd2lkdGggc2hvdWxkIG5vdCBnZXQgZmFzdCB0YXBwaW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM0NjUKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL2lvcy90aGluLWdy
YWRpZW50LmpwZzogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LW5v
LXdpZHRoLXZhbHVlLWFsbG93cy1kb3VibGUtdGFwLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LW5vLXdpZHRoLXZhbHVlLWFsbG93cy1kb3Vi
bGUtdGFwLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2lvcy1zaW11bGF0b3IvVGVz
dEV4cGVjdGF0aW9uczoKKwogMjAxNi0wMS0yMiAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hA
YXBwbGUuY29tPgogCiAgICAgICAgIEFYOiA8Y29kZT4gZ3JvdXAgYW5kIGZyaWVuZHMgc2hvdWxk
IGhhdmUgYSBjdXN0b20gc3Vicm9sZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVu
dHMvaW9zL3RoaW4tZ3JhZGllbnQuanBnIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL3Ro
aW4tZ3JhZGllbnQuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2YjcxZTFhNWE5OTM0MjNmYjljNDkzOTczMGZj
ZWEwMTZkZTU5ZjIKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI0NTM1CnpjbWVJYWR0OCZ7fDM1
d0BCe054T2hOLVozUyY9N0BRWHZeeldrcUY0aEs3a1NqZTJgUE1MWjIqYUhrfXdzZTc5Iwp6VEl3
PVZSTUpWTnNLX1F4UyZFM3JWSCRAcUN1ZDxCVzNZe1Rfa1Bkby1jYjh8ek1vJjtAOGtSTG0mYiRx
YTl5d0sKemIkR3NCdWpfUSpfbmRjfSl0cWxSe3I+bT1gYWs7ZmM9K2RULW9JWnopWitoUCNzQlZ3
dnpHRyZYTmE/ZDxNc0FlCnpAbjMkO2BSV3BmIXxDVXwjMk5hZT1Qa314OS1OX15lbmIyOUFLSzQo
clFhezhAPzw2QWc4aDQ5Zkpnczx7V3pYYQp6NHRpPkVLTXVxe1VXKT5jQ2s2fjtFMSUpP0A4e3Zz
fEIzenNKdzAmZnpxKCg0a0QqVSsyRTYhZTtNPW5YNHFOekEKeiFpTUt3LSs5UCRjPHd1NjNPXzU7
ejQ4MikjK08lWkdgJXU/YT5Weil7MnNnZEB8MVZ8YzRlS08+T0szYkhMQmI5CnpvX3NaSiZ7SEVg
YDFYaFEtdjlORiYmJWgkSG5MTjF6RVd8Jj4rN3xmYnt7QC13WCh0VD97KD5XaitgeTNZVX5hUQp6
aShEa20kanJgRFlucG4zS2JYNVhhcjU0ej1sO0NZWSNzYU5oaEhwTnpoJlJDXlZqYVMqdjN1IVh4
YEdLdHY/PlcKemFRJn1WYCV1XmVFZTh5TTROcEFqO2p0WHs0RTE8fFhncHZSRyM7MytWZHZ8SWEq
Zlh3bWcmYTRHeUpuSlNERF47CnpkR2hwKSZ3bjVCJH1oM01VLW4jbWQmPDNjKTRYVHoweS1tSmN5
O1B+Qm1LVHdHYmdBcz4kS3sldkVfUjZ3P0YqKQp6JEtPP2N8TU4jbXxCcEtWfEVUUXppfVNQeCsm
OHJVUD56c2U4elRFWXl5eDxSSWReaCRLUjExejh+TnBsZG5kMCgKelojfWEkZkIzcF9QTEFgfDt9
b3ZpZDhwNTBEZExBeSZONFNhLU05eUhlant1aTV4SDYxd2hqSnMoZnRFTD9RcmleCnpCV3s8aWVT
aCpGKFNPRnljJntlaWVObDswQHImQ2hxUGxGSnxJd203LXlJSjt7N2M5NWtATmlUMm1iUGgkWFJZ
MQp6QXAyaDBeQ3pvajxkO04yIXJPZi1jVUYqa3h2VCF2XyoxdzBEc2NeY1YmNC12RHtXa3JhR1l9
TmVKNGw0cFErbj8KemQrcChTOz9aTWZSQXB8ZG5Vd2x6PCE3YzQ9fj49JlRmbmUkZGZVdURGMyF9
YWJzaUsrKSV4QEkjN3xSVz9fWnAkCnpsUXZBbk5pU14oX3s5e0dGOHJhQlA4SXI7NjhoLSNZX3Ny
Sj9vck12K2x5LTlsITU7ZHVXKWpiPWctdW9iJClsSAp6Vis4WUFIPDNyWjIwbU1FRkpyaykrcygz
JEJoQG8pK284eHg8fT1OZm4lOU45SS00UXIrYTtkcytEUFRjO0olUVMKemlKTjJtb0VxRXM9YHh2
VXdfKmNoY2AjK1Z3MUwweiZXYTQpd1kwS2ooPXZHMXoxRSFkTDgwZmshMyEmYm5UUzZwCnpXXyty
KmVSNilsc1kpOzU0e2RMPUc/OHp5R0AtP1dCPVhPUj5DRmpyX0o1Kj1CKUEmRDwzVmJ7REVlRm5S
V0tlWgp6YCtMNVptdkUmZVZeI0lKZHUhXlZQVVA8cD8ociNKMFVSI3dzYTVsZUg8VEB9TmRSPmVw
JCRSTiY/Qnp1akNJOVYKekkpYitjZVAwY1RSeTU9eFFpUmlHSlNPclEoPX1tUWhMJV5uOV9zYiNa
Szc5QndlbHA/YDFgRDA3eCQ9K0NlVVpQCnpxUHp9V1N0Mj0kUTspaCtGQHNoMThmJD0hd1E5dT1B
VTgtR0JyTHVCYCNZNUx3a0BueyhHQWZMKVdzQGg4fS1eOAp6Y14yPXdaJG9edXhecSk+U0ZHKXc2
RGNFQFN5QT50YGYhZnVlZVUoKUB5I21SSjEyMn1DPXhaRjlANCg9X3JZZmQKekcpZiZ5VmxGJXtK
I2xRZ3VyNU5lT31OYE9VYV5mRE1+SUstZ1crTXFGdChCJHpaUkVDOCtLUEc7JVomcDJ4ZXskCnpP
SVdTcTYlUXZoYX1iPm9VNW9hbCZLQX45Q3NpVDR3ZUpnbTszMmpRKE9wbElkbkg3QUg0dExTWnUh
ciN3enNBJgp6JVM7JnxlRHhWYTdQckIzVThAMFFaYGJUJHcoKSo9R09sPzlIRSNVKFkpakFnQzxK
ei1hen0hYl44P1NiU0d8cjIKenJkfUlmWkRvRkFQeFc7Nl94YVJsO1NaeWFNSnVKUGc8eGAwdEw4
UWcqVWw5RjVFJX5fantoWn07I0VvO0xOMT9DCno/JS1adUtWR3E0XyhTI2dkRXttUTNGYXR1cG1M
bU5TbnBMNXoyaWE8cXpVeFZqdV5pTG0yRmxIbjxaSmgrMkVnNQp6ZmZHQGFPJWN5a3JqUS1OLVFM
I3s1MiQoOWNRbGFKTlROP25ZX21AaXgobmZUV1EpY1lydyRWQnApUHYpQzgjP3wKenlmOXlvQ2RE
a3pfKlkxfjJgb29lXjYhTX05IVQkX0M4NmdrPzJNdWl4eWg7IT9SRFIjLVV9cVB7N0FaUHpBYnZN
CnpGTktsUThScnVac0pJUFc9JDlfczYkKihYbTxWWDg7JDJfUThaYUZPPSVue2M5fXhyI3A/TnI+
Y2VeX0R5R30pVAp6Jmt+fCRCciZiSnVnOGRSblNCdmpyc1VHYzJ0WHVnMzFPNUExNlIrJih4dGct
NWImJkpsRlRpTCt5aVJDeEFiWDsKekNMdl5wK3hpJDJ2NVo/UkxqSXtjYjY5Tm5HeFpzcmJzckV8
Q2YrfldodF9yWkZyP1ZtZVBxSWI1QXpWZEljaDtSCnpvI1V1NTE7T1FUJFB+M18xN3M8Sm5LXzkr
IXVPSEhtLTZwZk18dTFMRCZGLT9fdX1CU217K1lqYGVAOW49anYocwp6OUBaemIwWnNpaEk2Tkd8
VCVaISVwIWM8dUZ3SXVMY0Zodnd4M2JWUzFzTUNpJnFBbCFRV0hxO0wjZXRtaj09aX4KekxIOE98
akozVEVmOzZfMmROcC0wRHV1NWBaYjFsX3MwQWlrelJQaXc4MEBtZjxAQG48LWI3MFIxZG8oTUJj
ZD82Cno0eC1WPjcyZ3E1PUNCYkhQaktjRXQ1JkFNSVdoIXF0eT1pNWxRVjgyKF9rZkc9eUhLT1kh
OHR9PyNOXnZrPlUwaQp6PnNWRzg+NnItOTw1TzVBail1Qio1aDg1Yyl4dUFOPEhMSmljXkNfUXtN
fko4SylqTXdqWVM8c3s0RllHX3JRUk0KejAhU2NpeHhLM2xUSG10dXMpY2l1NlAlb2NKO2M5a2dw
KGRMe3VTYjF3JlB7ey1IRF9sQ1k+JUQydHhLcU88LWZmCnopeTckNzQwemhIcDNaV3A1YldJUjVV
OFdjKDhYVEgrR2JqYWFiIWYySGJCYHhJQF5eU3thRiRnUFRxOXtPd0EtXwp6N01tYm1JYWU/dHhO
VkZkP2Y0TylkV21TbzF8NiVeUkBOYGppZCYzPitncnlgPStjc0NNb3N2PDdDe0wwaGFFdz4Kem1L
KEUySkk+U2o0bi02K3lGbDJqZVEwQTxFcWEwVmVlOHNwdSsrdUtwT2A0UndqNkdiQ1dhUVEwam1u
NWNDX09UCnplWDRgWE9OTFBhQnNWQlJEUmh3XkNUTH1MNjFkbnBoSGRIXnZ8TmVBN0FQQFIpbFhZ
KzdHX3FPeWhsNE1GIVRJRgp6ejFxbTIkTGpTR1FTTWM4Y3l4ODUmbVdLWlY0fTBpNmdIYXFSX08y
S0VVJDhfIzIpfTdGQS1JVVpXNyFUKSlUfnYKeiFHWVRrQ0s7YXhYSSFqd1gkaHNBOHE/WjA/Qms4
Ul9UI1JxaGN4VTNfWnUqPjR1KlE8ZzVSSTg8LVU+XjtyWGNpCnpkOUN4N0RTSUB0bGtlSTRaejh8
PkBnQCkze2BaVFNlZnElI25Dekp9cW5TKmxlfjdGLTloemBoeT5+UGE2TnB1dgp6SS08VE9yVjRz
bkxKY0deXkZibFpXRzRqUTVWSkBOVko1NVV2YHUtPSthfHt3X08oVilkczZNa2xIcXZ+eWd8ej0K
eilQO0ErQSE9PSlAcEVfU2ZkNShtR0w+IXNkYnYpWUh8JCVgZWttd05rdFRjR09gZSF8Vlh0LWtp
WCh6JnRCKi1ICnpvXjZmUV4lWHFEN1N2OSUmTCkxWT1uUT9zeyp6Skd7dntldGFjZ2p5YUg+SzlL
eDk+NzNrZDZuMSNNLX0+R0ZGQAp6WEp6TTFZUFBpZHhCcUV3VEo7YjBub2hxNyUmYGB4VG9TZmd5
LTU8YmlYNnoqVE9EKGFeMzVHRio0eCR7NGJyREAKekZ5T2NjMSpBQzlEQnA3V2VDJipTQSR1ayh7
N1B5SE9vdlMjQFVmUTk8T0dXel5qO05EU09QdnBuT0RTb1QmKClyCnoxKiZIRHRuTUxZZU4/Ui1i
ME1iKjUpUSUzUWE8ekI1fmxiZnRIfGR6e2JqfVleQThYNk8qK3dWMXIqcHl3QWs4Xwp6M1dlTzQ8
WCojMWpKIUowMz0wOyl6ZH1COSFZWDxvekE3ZmdVUE00dm1XeCshQUlJMCZ5MmxQZTMyMHNTJEl6
ZyMKemhEYnp6KFpweHVpSn1NTk5uT09me0RiYDBPd3B5aiZzazNyd2tJdXR5MEMzN201M2dPMjti
cVIxRW5+Qz1IV3FXCnpmeipqZ15jV2RAQ08yNXJSJFV8fUdIIy1ePSFMbz97UEZzYjNaZ3I0TDFm
WkYqdFdmcUZ4P2oybnZBQUZLTjAyTQp6Qzx1cCZNUF5yMUJBeDlzakRFKnRSaWVSO2doVkdOQ34y
PVR0SHs3b2JvNFBGWWRTITxORk5DanlpeEZSO3cpQXMKemRsfjZnaHchWElkeylgb1ROaGNmRkZR
RzNxYElaWFJ9QH5CXj5PR1N5MFU2K2F+YSRrT1ZzLXErN1ohd3dsMkZVCnp5TmB0WDZoRGN+eVVN
fSE0N2glLTJ3QGUtZ3UyO2tAaTd1KDloT2k0e3o2XjAwc3orJWc9SWRFLVJ6Vz1rVUlodAp6a3VE
fnp2KCl+dUY/PF58ekdjZTtAMmxWKXAlOHxGWk5Mc3p2KWIwIU9Odmx7eTgldGs4M1ApOU5DQT1W
NFl8XygKejVGMSE4QF9gRW0+Kz5IYEBpNm4rKlA3ZzlzUllNUUt+SW9aMTlfTEdAWStNJlZ1X3dk
cCEwIyZneyg4Wm8rQ15WCno2QDNhXkNoYUxUIWE8OFVTMkFKUzFoJHtWdXh1bXJ3dFRscWR5UjV2
dHB5Pn1DYW5NeyhYdE81Ul8xdTNyeUdEaQp6QD95LXFxRmI5UndvNlhWTWBNSl4xQG1FRVQlfiNn
SEEkTno/YXdUZk5CUnordWphRVEyNkMrZSR4eiQmWUQrP1cKemM7aVNNTUs/a290NCUlMEE4Z0NP
eWVreWliYEoqSV9uQyh2PFFUdioqNmp7a2VxfDU5ckdrPGFSc3dwWW1nTyN6CnpCemx7QEVHWl4x
OSFTc3wzTnJ+TTcxKmRIM34pOT8pRFNCJTYmdXlzK3RscD9EYnVPRlctJkFkZl41X0VrNW1SRwp6
YGIpfmFWJCNeRUZRe1dSQnJiKGEtdk5JXiUmbmxhJUd5ZzkyWX5UZ0pYY0YqO2lIQyMxczZ3eFBA
UDtzT2xHWlUKejxRNl9nNzJWbmt2VkJDWXpTZDVTXilCSCZ7U3dvZWBzSWNFJTBpY0I4TkB0OHFe
RkE/ZlZnQ1V6RzwjZnQ/dmAwCnp6MyZzTDNuQl9jbEZAXjAoamEkOD5SOSoqSStGfCRvPTtmfiZS
Zj5KKX40PGBtemV2aDNsVXZVIWFpdCROUTBWQgp6IWg2N1g3LTxqQyRDIU9ydSh7SjA5JlZUYzNv
RFF7aV9JMjx1UlR7NkV7JTdWUyRCaXxsMW9lX15WSzdXPjAlTiUKeldgOHl1R0ZqY0NBMytvZyVp
TkxVWlJZdjhSZSRJYz5oKXhWd3s8bmFDSFdHZ1BETy0zKitGMG1Xcnc8el4jZ2EtCnp2enspYmBL
KD1Udz14U3REdGxDeXEmTUw5cDJBQnFncnNqVT9ESHNhYVo+KzhTYjNZTFI2NUo4YjZPPipkKjli
bAp6KE1XN3A7dmpFU1krYCNeMXxwcF4qa1lnN3I7JFducSVSIUpiXnxOZnZ7YzApZSlRPU1sM2B2
SlZKWTIkc00wd3IKenRaeHdnNF8jdEBWLX5wTGImQE5qYCh6N054YiprIWBJYFg8NTUlU0w0UFpx
ND82VW5+Sm8mSTg8Y2Axdjd7MEFUCnppSX4ldW4xZ1E4Q3V4QGUpflYtVWIzWmwkR2hJUj9FfG04
OUpXMn5UU1ZIPTgwLTtIO1EqUkpIcjBMMFlSPylybwp6Xk53N2pASzsxWHh+eypjbHsrSTRhenRm
Pipgb35iQk93SmhnKkMhSTQ/UnF4dz1ZTmglbUdkZi1EeXxZOUF9TmYKenBWX3A5MDRCRHRtbkF1
fipCdE1UTVU2V3BBQ25RIyRnaDV3PG5UN0FZZis1fDB9fUkqOXE5IWslR18mMnBEbDlVCnpxVDct
Vis4aF4qJH45S1Q3NDQoazluZyoqKkMrIWwkV1NUIz4ySDB0bnxPclMpeUt2TXZCWG1KSioxbng9
eFAoeAp6KjlMUDxUNXNSeVBfOSVpdmJNV041bSRmZzsrO3h7Pk42fVBAdWEmOUpSUmRralNXRnBl
eX1rKiNPQGt4U1JBbFIKekx7fSNQRTB0MEIjZVdadSN9UUBgRDBGJE52OUhUU3BVOHErUWc8U3g5
KEBKckthZDlsRmUwKkRVb1I7WEk/TCZECnpERjVlNTx0TnJjYlElfmQ1QkFNMFItQ2tXPyFYfEdo
NklWZzI7diZTKTZ+QXRDODk2PSpAT2BWaUpgQGA8fGF2JQp6NWw5cz4jTE1gWUNVQXFDNzQoZ3ll
VTJMfG0yVzR5IyVVa3IhQGZXcj1OZ1k1Q1pQK3x6bH5uKGZKcm5XVzB4bm8KemVFS1JoeXxxJUko
Ui0zSy1HKldMdlNKY0QpKW1VaDk0ZHs0STszSm1VKiNKR1oofF5JKzRYb0VIbm0zeDUkdVlqCno0
Qj4/eC1XQndoK01AfVc3RFRzPmhXNmd6cEl6aXtAcSU9Nm9tSiVEbTtlaiZEfXZlaTczOTgyPFZ3
Q3xKQklINwp6NUVgdXhNazVtOT1VfShTU2tVdW1HLXFjKVdWbEM1KlBPP25LPDFobzVlYWZhYDwo
U0VUK2x9Ylc1JH1XJlpkNnsKenlYdXQla3N6VFJ4b0FhWm5hfkFqRkswT2h2S1d4SWVSSU0taitq
P0k1O0BWbkgja0JzTTc7aUhGNn1VSHMhNjxCCnpiSkp9aFd7byVXbWxjOFJULUkkaz5fSVZebDcy
Xn5sN1Y2JTFpNlRoZHpyNGZSLVQjQWghQ3BUPUFLZjY9TypQPAp6dnA3SVBDaUc7fCZSekByV31z
LVliWFpBXnFzVkt4Tm01Jl45VnNHciNAcDZ8RDtmK04zODdFfHcoSWp7M00+KjUKelNRZzx5RUR1
OGZWbC09MnNsaihZSE1BeGRpLSteRUFERGNLTX5hPmFgQV5aVkIzeS1TQ2J4Wis5fSlfN3hnbVhx
Cnp0VTFQPGtOd2NaTHBhSi1LfUcpcWsoO0JUSytHRjtXV3szMkJudUF6aFYyMDsxeHdhQz9eU319
K3R5OSZRZWBtVgp6PC1IMmxZfEd6aSFtKT9kQGtNTkMoKSojNjsyXmRBQnczTChZIyY0VF8+cTsw
P35DeiFDTGF0VXRtQn07aSk4V2cKejQlUkp2YXYqRCpvJWNkQWkke2lVNzlqLXBNRzZiWHR6WTM2
SVdpX0ZhJTktQm9iNyZGRHZOZCZ3ZCFZRiFHOTUmCnptQGJeVlpKS3VPYzQ5NHo5aEl7XlU+TE0y
IVczM1JYUUs1LWk0MUF8ZkFhcT9HWEpHX3F3JihqOXNlZnt7YjFCfgp6Z3dRVER7Vn54V097M04o
OVJBJns/M0xEZ1hRU3NZTmomaUFmQXF8Z2xNak43NyMxKUxrK1FSPz1NUCZPcDF6I0MKejhnLVJD
cVVuMUdmKzlKNXthRjNxPmQzPHNFUWtKfnpWYVhIdE54KjBeQUdqNnstTTUlLVUoIyNadkotUm9Q
NmxvCnpuZDg1JXl0PDZOT28ofWoxdClVemgzdyhLX2ckVmxrcl9Hc1VJMm1SUT4qWHBtVEdsX3Rn
YmZXPTdjSEpicXYpJAp6YG08S3dLa2xzVXo4WkRON2BtaihEbHo+cmNXSCp8cV5pYzY4aHJScCZl
NWR1Y3IkWUBYVSlzQWBAZCFRQj1eKkoKenFjNUQ8OGc7MVYofjc0S1Q7TDlDLX5LSj00K2sqPzB7
WExCP2dsNGs4WWF4IWVeSCZ3WlR7OGFOIXchPUUpITx9CnpiVUJrMmUqZWdnNF87Zyt8N2hnOEwj
QEtvejJ9JXVHbX58KT4pI3YxJX5NKG1tcmxGJilYLVZfYjRRJlZwe01Qdwp6b15+c3A4WUQjUjZt
cFN1JFdQVDxhUDhRcl9KUis1KXpaYGhmX0srI0Z3Rll2ZHVfXjNCUyN6IzRPQipObnRFYnsKelNH
JSY8dnZXaUtBSm4pfWBPKV5GWilHMURHQnRGQU4lJT4+bU5hdT9NO1Y+eyh1JSlFaihxVShmQGs3
UjJgWX5DCno5eX1NbSp0aEZvMSVKY2gjY31pTzNxR0F4X3NoPiExcH1yWT9xez87YUJeUHJqZkRK
PV4xckBzcHp4JFo7cER1bgp6e14tZWA/QzJlaSNuaVJ6Uk9MK0pePUYmbj13bCVZenRwc2tIMDk0
X2Y3RVpmbDZvcVp7eURpdiliTD9zVyZaU2MKektGJEFtIXVYMTFPVCF7Nks4PnMlKWIxaGF7Oz5W
Q0BYLUJocmlgLTMlM0JCaSFISnwrQmB9fGNJeXFBSGBMTHhrCnpZKzlWdihgUHA0S053aEZ6V1ZL
Z2UjaEdLeF9IKzs1NTNqPztUaj1TUTRTZU9YK0lLJmEmLWo+cCs2X3pQTSNeYwp6OEchaUpyMCgk
T1VNakJIZGFMVkI/PjBzK29FKDFNN0d9UVJUaFFTY2BBNisxYW5VX0JMJC03VChxKkYzPi1MQnAK
ektraytmPjdIX14lXkdSWittNEJrd2ghdG9JQTlrWFB8TylfR1dtJHI9SkI/QmhCRFJpP1AwNlY5
OFM4ZTNAfEBuCno3U3JENUNMSjg3ZG5kVH1uYjc5OTN+enItTzxxbjNSO1pMPXtse0tmUSZZWT1j
VHtgQ1M+Y2JOWk1JSkNSM3w1Rgp6PzRkJn5jT3E5Ki1fR3RgbmZnX2hgRjNZcSpWMlE+UT17Vnds
NVphdiRTZCpQTGVtLUomTUwjV1BxbSpkUWNlPHcKekk2MU9xKWF3enBQRUIqPWIzZUN+dWVqZ0E9
Y3NKSUN9bGgyeUhAUyRlczlSayVnVippZEAlVz4tY1ZARXMjRDdUCno7flNUTEZzblAyOG5SUnBY
Vm1ubyppfFdRYGdPZy0kQHZSQ1FZQ0YzI3BfKDZTJj9CcFZuTGtvK0UxSWdTNSRNRgp6aD5QV3xL
M2x1QWhvP1BkJmBUUmJ3bFotP0MjSmxrJW9ZNy1fPSZnZ1NkNnc8K21FZnZwSDd+JU9FKXJFZDNs
PSMKejNpcTFCOH1vfTVoZVVUREJwSj8zPEU+aUJFVHBEMThqa3VGX2lYS0VaY3ZqI0gwSjNBK0Ux
T0ZteG4mXjYhQ1VACnopfjE8Izw3fj5INnpzP1E+azlfZlkxNCYhZVZYWjhoUHk+N3h2Rk11Y2t7
SHslNXZUZlRlZGxNI1oqciE8NEVuYQp6X199WEQpIVYrMm1Vd2tEUyFhVVJ3N3E/NlVDVCRZSHQ3
XnZeT05ZKW5weTkwcyNwOShKeHZBWE9gKXI1ZEtUYUwKeihJR1MycEgkaHRXI1VTKDxQNWFETEZh
My1LVCY1YUtpJkpPaVBufW5JVkk9NUlKaUlBcWxQKUkqVzJXY15qfWxnCnpJQXE9VkRXMlR6REd8
MmNsayFfcjFWYkdIaXRpaXJCZU57ZTV+fSE5TlVmK3BjKmhGdy0mTCV6JVRtWGZZPm89Rwp6K0FK
ekxJTWNvX2ApKjcwKXBoaFZtUi0jPEMrOFkoR2NULXwkMTk8eE1uZUltZjQpcEpVeUBMI3tLK2g/
Q3wlbmcKei1EYkQxUlRsdzd5NERpamBDZlJiSE13Mjd5OzFwLXpkaDM/NnkhQHhDYzRhflA2QHgw
OGY8Tnx7WjBsWHRKTHgkCnp0Pjg3VD93dHhkTnxZc3tQYzs/aylqYU08Z0xIQFROQW5RSiRKRTNT
WmFrJFRmK3ZVa1cmZSpjV1N4QH1jcVlONQp6Rn49O19lI1gwPU1ENlBpd3prbGt6MDFEWChXWWFQ
Nkp6eVI9SUFSUypvU2QpeE4zPUhFJFNCRTx1LSZjcXhBWnQKem1GdkApVXhrXj9QN2N5QHZ9QVEx
PFJxTi1OdENKU0h0Q0xKIWQ4QXYrN09EYCgoSk5fWTZQX1BVWXgye0JMVTw9CnpnSUB7RkRBJEBz
MnElNUljNU5rPShoWmhqY2YpbHwlSVJKb1Q0anMzOWplbipnbT1vIUp1VEE0VllvQShBTilTYAp6
MFd9Ry07Iz5WfTtnbVZzcnMzVGZnTWdBQmx7RTtQQFdnYyE7em5GU1Q/PU84WmpebHM2SmUkRHE+
YkxAbT0pdigKemFUTCZhQGh8JiE7YTVsezliMihiSjQ8K2ROaGhNO09taUZpMUVMO3JoNFJgbS0p
VUdXYGRFaDEqPDJfZjRAd0U2CnpjbDlpd0ZFZXFOI2gyT012PFNgRlpLViVKc2l7fGx1TiNpaCUy
SmJCOW84NkRzRXUlUDFqPWZkeS0hQD4kakl4cQp6I19IdmIoLXFrYSl1aUcxMj18RkFMbHApIT8q
JCZ9OElkXjhxRT80RE11WG9HIThGM0U5KiVpWTgmUTNSRHBsfSYKenNNbWMrNiZEdkZ3TTN7PCVM
UXZNeVI1aV9ETjlwfU48NlYrd1okQHA1Z2x4QFlsSjdeNjZGcGFLYEQrX0hVXnJtCnpCaiZYY0JD
Zl90PWwweitJMT40KnEkVFVtcHhMWXBidHJ1UTZCUXZzdjkkcUI8SXVEcTMzYG92dFE/dUZzbkZP
Ywp6NWorfWNqIz0qYmd2encmXiM/NV4+RCtCZXdqVm9AYGxuNk9xN2J8KERwe1ozYFc/TCsqZDck
VFh+My0jbl8kJXoKelFEPDFxOH0+VjxpYHB4dEM3MzFpUFM1SiVVRDI4N2EkRWtnZEVBQ0o0ZWRD
VVNoc1gtJTxffjdDQ31gTDRtNCQmCnpRK3pCUkZ7UVA2dHc8NDNOZjB1R2Bkc2lqNkwoJWErYjZn
cFI9LX19TllYfmtSPEQweElMXktBQlA/eXZAPHg/Vgp6S340RkpWQCFDeEBVSjVScjA/UjgpfUop
ZVIhNUIwU3tHKzRJSHNNQTl3fkpNeGpDfV49TUpVSHhAfUNMVk85PT8KejUyTEl5RVEyIUJaYGY1
UCo9MzRZbHgzcnltVjZEWDcwM0NaN3BUNEpxT28rREwwbFIzams8XzZJWmI3QmF1Iz1+CnppKUl9
K2l6X3xUaUl5ZVcqfWZoZj5ZfkAmcWBrU09UX21iemA+Sj5eUCpiOSNFd2dreithekJ+T01INyRX
PUNYZQp6JjhENmEpQCMhVU5nX0FqYX5yJnNuS0Z5fEE/MSRzRG02OF43IVJVSyFKQz8rMiY2YnAm
ZVVYOztze14oSVooZ3AKellsUUpuT0k5aU9odzMxOTFsdkhSSUxhciV1Kj8/SG5ucSshbF5uM1Z0
Jj90eEcldmJIaVkmNEU7cT17M1JeZGxYCnp6TllVUXl6RDxlNyl6WUs9b2xfeG5eMUxENVF0dDVh
LWBoTE4pPk59eXM8UDl1TFgyQVJnT3tfT0lzSGVhbjFSKgp6IWFCb285QGgrMEghPl41YEs9anJ1
VTxjWnUxQWlSbylyWCNIRitxRylaTVlfZ2E/Sz1LSjg3VVdNPjdGLW0zRUkKelJ2Y1p0ajtBcklp
dzRwND12YVMzY2ZfYDs8WXc1STUhT05+N0A2PXM+SWJfO0pTfHpFLTAjejJLbEc+IU1ZNVktCnpK
eC0wOyQqRlhsd3I/X3Q4YTN2SCtRQEc4UlorPX5aYnNmTi02fTJWZDBzJi1XRkB4elJfMmExJDlC
cSkoO0lzYQp6e2VQezZpcX1aRER1MnBPNW1vYnNRJlQteU82NT1ETj1MM0s1fkduX2N+JnJ2U3Ir
MUloJXJvNU8qMFE5dnMyXkcKekRWP3xPXkFKP2k3SWlpMGcqTyY4TU8oc156JnIlLTNVQTdxdzc4
ejh0QE59PiVfSTA8ckhabzxOK0hZaCFkbkFQCnpLZVVDMXJGXjxQd152ITNxfUs7RGcob1lINHIp
JV96XnFYaGprbEdmQm0zRSZEcihZOHc8ISs8LVBjcU8yJkpqZwp6WVZKMUsmN1Y1c1RocihrQ1Nf
JmZwTEJ+TXVKeGNjbyVlJDlLendUIVVCcmRKYE9DdkhZPnd2O21uWTJGTSl9NE8KelJWX1RpOW5R
PmthKUxiK0N4Qy07enFxbk1jPzQhOVhnfXxVcWJvXzdtcHpZSXgqU0NTP2BCOVZvUikpZUQybXxu
CnpXfV9RMTYqd0B8NGlLJnNLUVFEWl5ZVCN9OUt2VylxVkRNTFd0JEpLdTs9QXpNTE5LS2xXYXIy
MnpUKnpQI0BNIQp6cUlRKipndFZwfjckfSR8RHB7ZGxUKm8we1FtIX5FVk17XzxHY0ooYEM+UEJa
YzxARjlHIzs9X0tkWjh7TWJ4OUIKemBhcCEpNjc2RkohcUpGfUFIfGoyWjxyYyM2JGVIc1lWSX5+
YkdXbTdtXy0hLXB0TTxFTUN+O0FYeTxnKD13c0M0CnokYHRzUG9ScDw+a3preSkhIUZNJmJMX1J8
PTx7MEBjZFclWSlvR2pQMVEkYFJzfGpkdHZiMEM1PDVqJWo1XitsOAp6Tmd6YTtYcSVXaTduYCQh
KlJmfEB2QiZZTEg1SjNQe2JmQGN5XiZjayNTKSV7Zm1CRig2cU8+VS1BYktOZlU/flkKekBtRF5y
eXQmc31ZKWVObUA+Q0gqQSk/fERJZz5QJUw1dkB7RmRSPSNVVzE/KS0zWVNHUjdeSEAhX2NvJTdz
YClFCno8a181QHZ3YFNpR0V5UiVkRiMqeEUhNTdqRkx7dFVtbz1pfHVmNWlAaWNreGQpdmNsa1Vy
KENaIy0hMD1ZYiVzRQp6IXVKd1BWLV9scF80Mnl1KWN1aypnZHh8WG9DTnBSKiFmZHJLTDkqPUE3
ZlVhKzlXJVpNOUhNe0MyUFB4TExTQFkKejxlYjZDd152LUQ/c1NBS2h3LW03M3dyV2YoPUgqRkZg
Tm94OFJ+dE9gfDsoc0ZiMD1Od0BHaElwNVR6JEZpS3tkCnp6M2g5OUxVQWA0RmxSV2NJQGxQVClA
MENaYiNnfWZ6Q3AzXl9rdWhwSWk4XnxBeG4yNCVxVXM2amBjPnRzWUMpZgp6aUF7WncxQGt7eUUy
OHhVQFBLUmEoNXRjbHR8aDA3MzhxPjREVkYkVWxHKWFxJikxRDxXYGZ4IUAkcj1vTFchcWYKelVD
UFJKRXEwOGdqJUpoU28/YWFmUGlFTSpOIz5ZcChOOX1iJDlRaFZqI09uejI0PkIxK152Y2J4UUwt
YmpqUlI9Cnp0PUx2aDNQcDJCelc2QVFUZEV0UmdvcT9hYHZPK211JCMpOXYraHtZSGZmRTdQPH51
Rzxib2IlclRXfERyTXdwZQp6QTxrUXRiNyNBbVFsMEVWLUZTTGQ7IVVKYkgqNUhEKG80YTk+VSR+
JTBhbXhkZSU2NT9ucXhZRWVvTilKJFg+eGoKenFWZHg1YyRGMzgrbVdpdEpoS2duNHJQOW1nckcx
Qmh+IWlvOEheSWd1LTlzZE1TZHpLVktnZl5NeUhzZERtc2Q4CnpPe0dJdz5iVTUqM140ckFVXzxM
VT5tUTBLdE5pV0N5ZlArdmpydUJ7cX4mbj9vcG98ezIqelNwJiQzWTBYPTJmagp6Xnp+N2UhYTcx
PXhGdWx7QSU+YEVaYjNpcmYtO0I4SEhUc3hBN3tOUCYqMylrK0xyfklCSj55bj1Qb35HN3MmMTwK
enVyQUIhbDslVE1uO2VfTUlabj41cDU8c2ZzPkZHX01fc0FUWG9DLWclT3NLMykhPnw+Q3wheW5H
RG5ZclQ3T3hZCnoxQmUlfjlYTDdCMmhSfkpZbkdFOTlDb05OP1VVKFFVUm8kaDVrKkJXNmpmdT5v
QTtKbXtTbn1XOXVHZFV6JXw1Nwp6SF9BJj5nLXolZHQpPFIjYCZlUjtWfTAqP19rPTNYWkpOcmBi
aXFzM2xWcEgrJHkod2Q8QT56bTcoU1JxdXAoZnEKel9FM0E7NzEzfnZNSm42QCs+MyFHQDJsfnhq
NVlfSSZQJiE0V0YmRXpQJHNUeSFJLWpOQH1COExaaFg2UnZ0b1AhCnpIKHVxclN2dVRWVlVLRH5Q
STA4SkBBYlBVeWN8IU1taCo7NkpfbXU+RzF2T3R5fVZ9Uk1sWlJfenR5ZFZ5dCltPgp6SG40YjJv
UHt0SD87c2o+aDJ8MHxoYU0wRyNFMCQpTUNFRVFpQT9mUHVfcz91Mldjc1BjWmFzQU19Tj1uRCo2
bGkKemNFWj9IZFBnKnI7cW9KczFhfUAyQGVQP0JWMCFlOVZ5eVUzZG9AaTw1P0lkZGpKQSF7Vk4o
YnREfElwVlBgUz5XCnpac195QU9DNHBZUXFQKm5pXnNxbk4wZk15QDJTJjZjKShWfV5sQkRBdGIz
fkw9Wk99QCFXYz1JYiVINlhEXnl2awp6VElMSnZsNlh4RGZgZnklJmB1elhFOS1WNzUpSTJCZWB1
WjVDTnA9ZHdAYnAzMWxsSGh1Wnlqe214cTx1ZHRqNUkKempOITUlY0FzTH56P3lebnhPK2ooRFpH
aU41O3ZQZlBLfnsteGhFVUA5OyVrb0RuKmNXcS1rMTZuSj0mVW8/eHk/Cnp6UzswQFYhWFhnLXgr
TGB5PCRxOCpfRU1mUGIwIVlzJF9SeztyLTZ+UEJIbTNPWih9fD43SFBnK15adEhufGVFSwp6bnwk
KygwXlkpS3UzbmRNI1V9c0dFZEdUYldKQCVKZHp9TkItZ344fD1fRWc7P1ZkUWx0WG9VPjJ0UUN1
PzxAU1MKekRjPzw4bXB4Tms/bTUhQkp4UVNJVXtvMWJNQlhMTlRmSVlEbEdob2xnPiE/b14rOHZ9
aHMmMkdZT2FXWDxxS35UCnpldWYhbWduMn1qbU5uSnZpSVVsKnFaMmpUPiFmKSk9fTdDMnVDcHg7
ck9KMVQ5ISYhRWZHelZCa1dqTDtmWmNlNgp6QTZJMFVhWjtQZUF7aXI4UyNSbCE2bDB1YXoybzFP
PCV8d0Q0KkklY2dsU150cj9GU2dNIXprNl9VX3QmUX4lb3EKemVANmIlejxXe3RLZFpNYXlPNT9E
NipaQk5We15OQT8wbTszZGdgMFZOWiEhc2BHU2Amb1U/OWkpISFTUkJpKCVSCno8YlMjNEZHWT1I
Y2Nwc1UrREs9ND9+QyZ0ZD1vZEJlaip8Iz9hSThoRTNNZkRPRGZlQEwpJkphNnBTNUQ0dSpNYQp6
NkhNViN2TGt1Vl5fLVk/JlUlPkNjYzk4fFR6UVc0eVQoN2paPSVweShmaClEI3tgcThlJXlpaWt+
eUZyTzZXLTIKeiZydU43Y2t2a15DdjAtU249c2hRNzZfZXt5K2h8YU14Kl55Y2wrVjRfQTMoITw7
MDF1Q09vJEVGeGRhQ2RSKTEpCnpzJn4rUSN+YCRTJEtDIXBjTjQqRGVYPk9gZih2PXxaemxFQ18z
OyUxdHR4a0ZkaSV9cXR1OFc5OD5SdD47K1pHPQp6P1NsP1F0PFg/VThmWGEhRk9WWF9hUyFCdD9K
N2BfWVd+O1ImUmgxTGBNdXYyUTUlK21VP1omQ19CXlFLKGF2KyoKekFGVnBtI1ZVOEJRNj5LaUh0
TTMjcl49bVdfViF7eXV9UGd3NH5hT3goNDxaKEtmaSFJI19EJWl2UkEyVy1+Nz1yCnoqTHR0Jkty
d0gkXyhhR2FMOWsoLWMhRElNanVmezZ0NFpZRVNOTE9qUERZWEVAcDkqRnlLY1V7U1dSdGNnO0oh
TQp6NGBpIUpvMyY4P2Y0Vyh2UiojP0FBbD5sP0kqKVJAWDErYU1PPkc8cDRtNHJHRF9LJkxZaWVO
YHh2XzlETHVwJEwKejBxZ18tQmljK1dLTSUhbyFxTlgwJiRufW5zRXRlNHUxb35Ec0RYbFJIOVYh
QT9rbnkjbW1MamhZNyZsdzF1LVM5Cno9dTlAYyghJTE8VXpAMG4kSGZ4XyFmUWtZREM0O1VFJXZ2
fll7KCErUUlwKjVwP2IkJHtAUUY5VnJJKWZodSR8bgp6TCF7Vkc3bCNJIXtSKWBEJDcqdXYoalRG
clo1TSUkYEtxVkdlZmtsYy1lfXk0PExrLTk7MlNfMW5gJF82Wnx0bWAKejRCQUJ7JiN9aVBISyYt
Uj1qRFVaKFBiQmgxbyR2ZHg3M19VPjtAa3ctO2lNKjM+Mmt9P3BzelZRbDc+dE1iS0htCnpCRmRH
e0FhcnJ6aEBxY352RTh9WE9yPDQzZD8wQm1CdTJSfG5UMFQkekQjdE1QUlUrWFh4bF8kMHRZb0tz
Z2NpVwp6SjI3T0JhUEtAIU1lTiYpVSEkdV5qcTVLJSooSGg1I2tgVT10cnp7Rm0qXkZwY21uVW83
O2lLYCV3OEpxcWU5eDQKenhke1NwOH1zKUZOdX1DNjE1SyZQN3lYLWQoc3V7cjlVbFl+UnM1IyVo
VmIkYkI4N205TmF+YVNKT0s7aFU4WEA5CnpaWD0zVkFGLX1zXkBxdGFNQWhuSXpMUjYtOG92VmA9
MFN2b1p5Wm8pbCg1WitDN3lxP3J3PE0kXzk3aE41LXJAQAp6QGZ2flErajJ4JFkleEM+ezR4b1gm
c25icDUhWCRAVmZ+MzlzTTVjRHs7QVlPQn0pYEBgKjU3XjJKPTVhbkU0dE4KeiY9TkxRKzlRa2tn
VSFEMk1qMjV+ITBINzxjc0lPfGdsZkZMTEh6I1o5I1RUb1dvX21YIWBVbjBVSz1qcTB6a2FpCnpY
SiVWQ3FBc2podW1HejhkUitQV2d8enl8YSFEPlp2VkpeKlZfTXhHVERaR3gkO3I3dyo2RGJyNGpK
M1M5LXs7ZQp6dl8kI0l4bjVaJU9BdkEpI2UoVDBlfEI7UCZuSz9pJGE/TDApe1clYVorM3NTV0g5
bW07czg3PXdFY3xBR2BDTl4KemlLbE98UEpXdldqUjg2ZUBpKHpwQEdgQlUwfXpgQ0chYEpxRE9N
WVQ2IyM/K0VLVjkyMk1adGg3MWZ8ek5LOVorCnpFVktJKjM7TlU3M3s/NkA7dDlmaTcqLShNa0h6
ayo5ezcrOHpsN2A9Nkc0STtgR3pBSng8ZnQyaVgwPXM/I2ZVWgp6OHxAZngqYStrbjN4bDFVJHMl
MWd2N3lZczh1MmJgO1YtUURUVW89JHZ4ZHV3O2pVdDcodGo8X3MmbXQwdWRUPCkKem5MdUJydVo0
PHEzaXp+U0o9Xm04WTN5bSYlXnFVeDg7dll8SUxpblk1ZWZnYyF3VFUod3g0MF5HaGllXl5vOSpo
Cno3WjN9YTYrUCsrXmRTLWUpNmxRZVMxbHdxXzk9Mk08MXNJYHlGa3J0ajZaSjcmczE9NGR8cE5U
OUNyZVpsbDhXcgp6ez9mcTZYfWZNQiZhezA+JCkrR0BoNVB2SmghSTN8cVIzZzxsUUR0KmhXP1l2
STdyZ2c8PFM2UXgrfWQmNUt4bUAKenBGaG0qTGJpQGdedjVuJCpndzcpO0g+SGluP1QzVitWeFpo
THBWLTlBUmpFcnJFQXk1Sld0ZTtQdG5DXkRwLUJ5CnpwQmZWUnFjTStZPVZqNXc/SExvPGN5Vkg8
Kzhrd097U3AmTEsjRHNqQUI8cXElIXFtMzdIZm40U1UyYH5QTjFqSgp6KSR9fDYlX31DaDw8fHRu
NTsyU2E/PTBAdUE1djBOUUlLWVNrNDI2a0x+RExEVms0PHIkKXxfV3dlOWdIQDVAQGcKekBGKEo7
I1BAJFE3bDZpP3k1YSh1LUo3eHE/a1ZMcWpYeX4kMmNBQ2gwUjVZXnV7JFRtZCRybU9icllGbzx9
KjRtCnpVJTF+ZGp4QWZYeU12SDROaT5fVnpAenZ+R1dCSyR3WilndlhJJXUkXj5qMCRhUHtUMlMl
a0dgNmFUVT98RGY9SQp6a0IkfU9pRXVlNi0wJC1kUDk3KVJnJntFSkFvciUlVlVURWZIK05WZGtQ
N2lWM31AYyVfVHd9MDB+TDFWbUQwaUkKekBva3EqYEAwY09fSWFmblBLfTNwTElLQzZ0Ryp5ezlA
TSgxKmAkbVpEKSU5ZXxLYC09WjNRYVNtI2BEY01qT2BaCnokZzRMXj5MZz54TDJsX18oeW04cyo2
KUBORjhHKWRnaVg5YCNBYE58Pj5PRn5yUz5JWjNxSkhMVjgtJTtsQ29jKwp6YXxNbnpsY2ByWUx6
aURFPFYhbSorSUdkXlFmLT9UUyElTk9xIWk8KD1TdWU8dHM1R3c5aWt6MWErXzY4JUw2ajIKenQ9
ODBSbUg0PTFtRlQqO3pudDE/VTEzPXp5bmVmWHBAWCE/KVl4M2pZZ3BwRCRrWT4lWmlwUHp6ODtz
Pi1ifEdeCno9YlA/aGpmMGVHZWZ8VCZQWFZmNzd0aSpqM1ZuJFYwXzZQbyhxRTZKQC10UEd2JTwy
MThYc0BePzA8Uzt5eihGRgp6dE54KjBeQUdqNnstTTY/QUw/KWFMdyklXyljLSZHfDhNPWptYjs7
fVZYMkNxdit+YjFEPjc4MDJJK1EzRlJTRWsKenhWJHk9PHtATEAhbzt0VnJsQzBJMXU7MWQocSpu
YkQmZnt7fDhgflp4eDZkWihhWmNjaFchVnhKQiU4dkBeN0B0CnpvP2FJNGchS0tSNjBmTzRSc0wo
MVIwdX09bUgxVUZAOUMqS2hTZ3h1KHNXWjVWSVFUMEdTUW5+cG5wd1dwajNOegp6QHxXaEFZNzly
Y0QlenMrPkR+ejVqcHdLX1NHTVFaRURPdVh1byl1b3lsKDcrI087XnBsb083M2xNfW5EP1NfeDMK
ek51UHpoI1AyP2BYKjFHaiNXYGw3TjNReStiezRPXnhmX3JFeWx0YWIja1k8KiVuJExjJjh5aSlo
PCo5cis/NX5RCnpwO0JxSFhJODRzMUVgKClzRGFFY0FzWTxVYzFWMmYhRz88RWN6ISlaUXhWb25n
X21qWmpMPGZFd2cyPH5TfnV8RQp6T0wjOFZJQmB0d3JJc35AcXRiS0tmZHUtcFhZN3N+I1ZgMnFh
Jk10NkpAJDljbTYkWDEkU1lmSk1QT2V4UFBqYHIKemw9KjtxKj5tQ25PTTteSTchIS1GSm12UjNj
cDVOTXlINDtEXkhJU34/MUklfGs4emdtbklZd2hsT2JGNl9ye2lhCnotMXM3e1JqKUdlbiZ3TUJR
fHtkVSNTbS0qKE4wZEQ9VnNacEg3Q0dLbXZKQGhlJU5YPip3Qi14enhQXk16dVp3Rgp6WG81WWNA
d1REMipoXzNRS1EoamZseHh+WjUzLUBWUGtyVUJ2VkxYU05NMTNOKnkpKnQzR3NfJEFIPXF3YEc1
fHkKeiY3fThzaD0xa19YdnVyQGVAQFFxM2VDciFPKChWP3UrMX5uN0ZlVkduSUM4eFcoJXlDKCMr
Km5OO2daZGNeeSl8CnpsfU1lRExNZ0F0Zn5PXyM0akdtRGpadTlpe0p3ZzEwb1JOeChZNXdRMTg4
Smo8YSRGe1Q/UklfbkRBQHo+RDljVQp6OSUwY3UlJTNCZ2xOV1c0emI3bktIY1Rybzs0WHZzPnxM
KDIlemVpRig8bll0JDEzQzluWDtxfmR0fVRrN3JVOX4KekooR05+azdTJENZP3V5fFBfXkIhIzhu
cUB0dTZ6JCVMdnlhNl4zYEllYXYzZHVTLTAhK18hSU4/dFBraENzXkFrCno/b18tajU5NXd4PTM7
fEh5YDM4MDhEQ2FkcX09MSptN29gMEtoeGExUCVrUEw3MVQqams7KUVuNzlQZUxxJDhPKgp6JUNL
dEJrPF8/KFRgQjNsbFQjemxjX3MtYkJ4KlZmWUhGTTcoWm9BeCU3YVBQJkNfT2RwbnRaWFhsXnB1
QEUldyYKendPamxQVlZzIzFZfDg0cVRET0QwZ3c4M3o0b2NAcTJuPWhPZiRNVHhCeD5haShSanc3
KyUzKWAobSl1OFZtfXBaCnpkPlloO3VeJmE7M1oxTzlIKWlSVGtmNEpFekg7fC1oQTxLXk19U2hx
SEtAck9pWjVqflN1fnokIVZ9bGk5WHZkcgp6K0FPO2N6bTFsPm4+c3RGeHREQnRxZV9JJEVkdTct
SEhMU3ctYEZze2ZFejJfdG8pKFZ6YmdnJWVWc3BiVmhmUCQKenEmNHZPemxiT1FUUEo3WGlCJVEk
eUlZYk1uVG1eO0NzT0QzZ3h0b3lJWlRuUkUobGwjVzgoZGlWKCEyaypMfDVTCnpefmBCayNwKVd2
NEQyRyZ4Z0Z3UENEPCR+X0hCQmNRcXV7U09WZVJARUs0eyFeXjNhOVQ9alAwcDN0azxxOExqPQp6
by1TZ0JyJCR8PyVSQ0Rse3xsZTImWjU9PkV5PU0oR1F3REokOEBhUkJfT0wpZWcwdkt0YWlXKXJP
Tn4oOUA4PGwKem1lbzxpUVVkNmAjMj8+YmNXaFM2QkdaOCk9MmhxLUpxeSpNU29jNyZ2OzN1Tlpn
JUN1M2ZLPn5Pbj8oJG58djE+CnpUNHF9V2BOOEd2M0NecTR2Rj0+dHZpMVAkVy1MKkEqQXRVQTYp
ezBCNmJUcFlWV01CdUg5M292YXUtMzQxKlUrQQp6dmJraFV5I0VrTG1SIVVGNUAoQmwpIWAhbCMz
a3dDU0BCYEd1U2w2MFQ4aG9HTGtPQXBBfHtOUDlZUjgxeFpDRkAKeit6aWkhVTlIPH1iUWg0SW9i
Qz0jUkVuLT1CI3B1VDl6S2wzTXF7OHB5ZGk5TERqfitGKyZ7N3JKaVRCamJePnZHCnpwanJBZk9y
S1NRRjJCNTI0ZEF7Z1ZqYElAPmg9SilNTS1taz16JGd9dmo8QVMjPW49dFpVNV92TjlBK0hXVjZq
Zwp6RnE+WSlFQ3hzfUZWdjFEPVF0YlhqeXJpKSEzMmFNayhreGwlT1dQKyk1IWBJUEhmMGAjYlI3
RGZwOVgzcjlCOXgKensxfnVVT3JMa0Q3VldIYjNgbU4oT1YzRDk5Xnw/OGpzQ2xvLWRZbEIlMW9C
ZTZ4dG09aiVaZ1lfJUt2Q1V9TUU7CnpJKz5YV201Nk5kVkhoNCRhSTtJWDRQTW1+cV5jWlQwNCZf
QjItNHdXO3dCZl5NX3BpeHsjTXtnQkhgeVh0US1EYgp6THZ+Kk9NdjgqKkhXSzglQio/Pjd2bzJ6
MGlgQGxabDBuJXFmPmAqTE5qVzBiNitlc1ZKVH4wPUdCfUltQmY+N2MKejtVYiQ+JH5+YnMkJGMy
UEN0MnByQkZ2VkZpVncyNm9iN0pJXzZFY1l0OVpeXmp1KGxmNVI+diVlMEEkV1FTMXMoCnpXKDhw
PURuOD52dHV2bFlDNFgwUnlQPDEka3lnN1heS1Q+Yzl1aUNkQV9peGZXMUpsVnJZMHotR1ZeX1J4
TzhVUwp6QlE0JUIrcntqaFlrI15KMio9enBXcHtSVFdzc2dHIVFDYVh2ZFl7YylNdno3PD9HJGk8
Qj4oOHJwelhHLWdkbF4Kel5hVU41cGNybHd2bXNzVTRydz9SNW1KbmhpZ3JhNWY9fmw3RU1UUnAq
XnFwIU1KNXt4KFJEa0NJVTtBZEJQMSNICnpFPE00ZG17SEhsbHlMbyQ1PXtaJFh0U30pSnxycGlq
IUN9Wno5SE9xaXFXVH5IfTtDY3FkPHNveEZqYWtVUkBAPQp6czkmODdOcjEqSUtIPXojakNgNTEh
WkRwZF5JRjExWlVhcXYxTDtVJTBOWjteVzwtWnNOeGFPcW5KeHdvdiMxaDAKelR2U3ROUn5KLW5W
PnxDQUc8U29xVkVyRTZLcCFDYk5JN2RxRFVtZkYxRHI3bDdrZTY1U1RlPWc/YjJ1WXAwTEReCnpz
UU41YSZBa1V6TnNzVjI4Mil8NWkoTHMqakBtQGltYGhsU0owazE9aEw7ZHI9VFgyPCsqT31udUhH
VVVhLWM7fAp6RnlNfntUOy19T1FyN3dwamJyTiRAOz9BVmBZVz0yeEZuVUpoV3l9NiRqYHRmO3l4
O0FKdzRKQyFYM2E7dT4xeFYKekBYOz0rJWI0SS0kbTszZVd4Nks8ZiR1QkU9JDNrTjMzTy1GK2dO
X3kjNHtUOysrfURaa3MtYnArU2srRzM4NnQ3CnoleCl2bSpkP0ZrJml4NlJYUj9nOSFCX1hmemt3
clBWYno0PGtFc2JTMlcrXkg8U2NWNlVmRXEqRldYfF55TSY+Xgp6JVpkS0Z2QEw/Yz1hTHVSMylA
dVZxdzspSzs9TkxKTVMtNzF4RlJMU2Q8YjFoWXojKCQ+b0R4eGZfb3kqXk44OU4KemdkZXJWIVcm
ZEckdSNEJmAwMiE1eCopS3lQOSg3dnUoNHhBOyFkNXszTFg0cV8xRUVtcElPKTxjKXI5NHtKZDlv
Cno8TT04T0VFKXRrOX5oUy1WQW0za3YwSigrJnViNkNBI183JGNrblB7ZFJGcEdobGY+dld5N34y
PCFvX0QtQ259JQp6OEswSkkwRTZlNWx2PGxgUHhPU2x3I0U9JXRAVjkqbn0zJSY5Ums4dSRMdiph
X3ZCek08dyNtdFQwZGg7azhEcykKejsyQzRCM2RrS0doWUxhRV8jPjxGQ3FeUC1CM3NVdUBCPzs5
MGBHLT8rdTtsMkhzU1hQcDAkMyRUSCVLdnI0bVooCnpyKXF6WjFnJEtAcUl9MHgjaSg8N1QlP1pA
NFhSbD0mJD5kdFU3cD8lezEtMExIN2ZEdz1UWDEjalBaYmFseFJwegp6REJeZVVkNHkkfXNrSHRq
P0dka19nZCMkO1Q9TXV1OE93SVc8SGRxZT1WQktkWXIld0RQP0s9UnM2ciZCSHlOTEYKek9uPHhM
PmYmajhQazRVJGh0Smp9Y1lhQ0Jvd3NpNnk0UVl3QGNEdFE8O1MrKFQ4YipmU2VwR2p7bHJSUE1C
KW0zCnomPT0hTEtHO2gpJSNPV3VhUjQ/U3kzYHZJZU9qNGRWfU01aUtLazJHY2hZTT56NCY7Ym82
d15gZ209LXxhe2t+Owp6aEtRIUZyfE5Zdm8oUXZ+cSpefGVQVzdNOXR2YmxOUitwIzUrfjtHLTxp
ekRrVEIhfFJETV9YfVJeWmJwTmw7UzMKenZeREl4KCFpdldsNDtALVJYPD1Ncm9vNDNEPVpocVdO
UVBqR3ZZNGdybGtQeWJLM0R+P3g9IXolRklqVzU3eTtaCnpePUooJmdGMSg+d0F5IW92OV51SlF+
UHFITGxCK3VfQVVjTWBKYm5gaVNjKTBoODBraG5Za2dFVm0jMjZqUVBCNgp6ZjhzRjB6e3o8LW5s
MnF3ciZRd0VhaUJDXkZ8MSZyVVlhZiZSRn03NnR+RX0jS0JPdn07JVQoSkFyaWtxTDxLd30KekFJ
Yk1pYSZucj9CVHpyM2pteSZ6ZFMlcF42eV4yPVcwQHxmRSFwQVpHJHQ0fG1ucD5iUzRuaj9kYm0t
ejFTV3lPCnpqcVk5KFlRJUJfRD1aJExYe3AyfjQ2Sn04clpARkJzSGs4bU9IWVdeRGtPKGVWVEdV
Jk87NE1keShlb2l5c1MzVAp6SUA2TmxZS0hmR1F0dUYmRCl+eGJEYyspeGV+V34jYUxpMz1RcSVN
cyk7RW8rb31qZSpoV1M+I0V+X3hLQiZtcnYKekxAPWwkVUx5IyQjP0BtJk9VT2JeIzxGXmh4Sl8h
PCVKYWlIJipwJU10fTxGcEI+SjdOJVlfYjQ8WDU1UDVAWSE0CnptfFBSP0orQ1J9PnZpJlA9Qzl5
TlpGb29TcWU7Jn5leCtsRUJVV29rXj9qMmJWLTQzSDlJVkxnTllkKjlIWDQ0egp6WW0ySXxqb1Ba
dndzSHUyVVhjcH4yV2FRXkZoYWJmSSFOTjMjUTE0aDMrP0xpWUNeJX0rSDtMTj4oNXY9TldZYW0K
ems+QUVeVnY/Nmp6Zn14WW9ROUt1XzBJYklIZVdhZVohdTBXO3pKdlVBU0c2N1U9RW5Ba3d6S2Je
JSlAbEV0dl9uCnpxQzJ4bEJAKjwmWk4xUj1UZj1WJWhJbE9yMGY/cylqRzMza1JZME8jN2VkKEdI
TWctc2E/N2MjMkk0UDhaYXN3Kwp6Jn05KntISGQoZUZOekZ+Szt5M1p5dFpCbFNadEliM0g9PzV3
N3RUY2B7PkR1O1ZyfnFRWilsQTNhcVlFWiFjV0kKelIqKH5iX19HamFPO3QqRmktemttdEIoTkEq
N2pNTmw1MGV0VXpLOVFzV1Rxal9eJWt9Ki1IeTFmaCNzXjlsVnNVCno1KmNCOGxoTGRiV35jVDgx
dDRKLTBuK0NjendfNUlkcUVkdUlxMmxiZDRxZ0NmRjAyNnJ+U2ZMKmk7UH4meTtAYAp6O0Eybj5Z
Z0opODFrWU41ODkpbTcjJjlDcExHJXUzNlpBcnhhJWtnMCZGZGo9PTxOWlNtJVJrSVVDS3U0YjVq
LS0KenRoUm9LKkghfXREMVFVLWU5Nm0rNkhednhkNG1MbEg8Yzx0SnJVNEFfK1pmJko/aEtoZlRq
eiM2N1J0fl49OT91CnpoKXZvcjxpdEh1X1I/cjE4O2IhQCFLRGVITClEJSg9JmJOaXs2UiFnU2Im
JTxyfWdiaj5ZTWJaaTd6XnEoZFdjZgp6KGsrLUxQbW54a14qRkRNNWA8RXYqNFgtUVF8Q3t5b1Ro
NyFycG9xSXN0WT9ZJE4wJSFXLXtvYzhAKD9MTm0tMkMKej8/dXZ7PFBESll0STx8VCY2S1E3PiQh
MWd5O3F+K2p9TDN9JjxvV0Q4c0N4aHQzNkZjMn1fdDFOdVdgKCh9dDx1CnppRDkyT0A/K35hODls
YV9uSFhNcDhSNikyKHwqQGYtUH0mMjRLcUthP2Q5XitpWjx6ezR+LWFuJTZtXih2WTE1ewp6JEQ4
IUwjREU3dTRZZHxJd1cxKXdJMTIjQnorVlJHTWlfWDhTJktJflc5I0xwS2k7RCohfmxPSFN6bipr
KjxzZngKejFXeiYxVDZqUjd5NE8wRSZSM2k8Z2pYYU9Cakdzb0ZyeXtVQkBSaTZ2Iyp0UiRKUz9H
aVlIN1BzZFR8cHtERF9wCnpPfGoleldSWGpsKlpGPzw1KnYtVzlubENXYTs0VlZwKXxTN2JycmF9
Sm1PYEl2T0FWVUx0anVOail0UnJFVjVLPgp6UT5XV0crQ0RGdFQzOWNnYVpHYl40aUo4ZVlhXmdG
PTFQXmxLQ3N0cFBnLU87VSQ0d1Y2clFRZUF9X240Ynw3PWMKenB3eEZJWWRra2ZgKVRKSGcjbClw
ekZ6KX5abXEkfTtIQWQjMVI+OTZ4eV88MzYhbnZ6Tk4oPzFQUWNvdlFQeG5VCnpPTGZLdzVUdndl
dn49bW16RTI3THdGSGgqJVlNbWw8NENCRnhCUzNOVGIwLUxrdD9oelMtNzYpaVFSYHZncHAxdwp6
bD0yMlIkXnF6RU5wZm5pXikrMU84OUk5JGI2SiRuTzJXZDtDdDIqSGRmSTE2SCVnMjFFSn0kbG9G
UEJhK2J5QEsKej5haHJiPWFLQk1rd2A0djN+SDxfUExRPGVPPzJ+UENePkhjRFljSDQ0NSN5e3NH
ZFQyUyZRZTctKz4kUl9DQGNXCnpKU15fKWNiSjczcDd5Qj0kQ0hXajJgNldfYmZZcX1eUCFLdUtv
UEl6NFp0cjVpTDJDUj1zTztaamcpeCRIP1VSaQp6UXNnbV88d1FxWU5Md20tSElCcWdsJj1zTU03
V2Y8O3Y0ezc0QDlqdjJlRjE9OSo+VXVtUigzKE04OURoV2ZWMSEKekF6QCoxMXk+TDI0Zz99QldT
IXg3NzxJXjFmUXpiZjxkQTFkb1ZKN2IydGk2dE4pbyNBWiFgfVh4JXN1PVJpenBBCnpMVDZkZXBa
UzZ9PkFpXm9VR0p9SGNmX0J4NjBBaD9kJE1pSk1hZ3FTYVh+TnYzeXhXdElOcjk3SVYrKH52blpa
Uwp6V2Bye1p7byNVPkpSVzhYZmY8KVgjcmJXRXUyOGJ0dl9jVzxBPHxNNUJeYzk4YFoqU1E4QmEr
cnZ7ajRAdWlIelcKek9PM2B1cVU8VSloT2RqdnRjJWB1MFlVSUFLYjF6P15Xck0+NGFDNEttdFU0
aW98UiM3bno5VT9FIzhIT1MzKmx0Cno7PGRFSGpzVX56I2dlUG5WKUtsK1NHZiFSUlRxWEtpKnNv
JGFmMFpZSG1WSnxLPjJIa0pabFFeK2lHKz1QUkAxbwp6c0plMlY9UVhsWUlAenlSQjxKO2B7Rjd5
UHBhZFV1Y2I3S0E3Z0MzMWkyT3Z9MTdgUlUhQmNFbkJDX0J9Y28xcEQKeiFhb3BFWXRWSkVvVyZ7
ZUg1NkNudmV3YmwoZ2k/eS0hcjEoTUphSmQoQSgobzNyRVB9KHxVJXx4VWc5I042LUZtCnpASjEp
MUg5KTBoRTs7OU1zUjUrJENpTyQ9SFk3aDs0MFp7dE5+UHJ3UVhlcSRDRW9UbV97bH1Ze1lNN0ZO
N1RWUAp6QnA/eG9mOGleJjdKP0ZSV0RKQGZnYVk2PXQkPWhMQGtoWFlPO3N0VFA3Jngmd047TG1w
MCNXTzwhe218c1RFRisKelRQQF8hMGslSGB6QUMqSDg2XlJ9JFRJand1S1ZrcEpOZ3EkKnJLZ3Jr
d15UeylEYn57JHsjXnBgOUspdWs8P0AhCnpRbT9GX05iaTVnZ3FJdCk1e0VHPk5HNiN2ST1WN1Y+
WFl2WCNgUCthQzc5JHxVIW5ZP0VmPlZxNHRiQF40RTFKTwp6akpQSC01VTxyWGp7dmI0KEV2P1Vh
MClYJnpiI2hYI0t5JTwkVDRZfjJ7SDA4XzV8eyF2akomMW5IQFhfaUhoK2YKejM8dHIpQik0czJ7
IU0kXmtGa0FESFFudiVPZip8Q0RJcCFab3NRQXM9YnNga0E9I3g7NWZ8VTxKWjFIcmlFZDRBCnp6
Y2BSZmEmQj9GUXFRYmF2MXVybCpRQ3puNlZKKiRAPUVEJGJrSDcrbnlSeUg0IW5kMWtCX296Nj4y
VHJtZDF3Vwp6M0FeSkMyMjleaTlMc2pkKEVBUnh0O0Q7QUwzWFdqcnQpclFYYGB4O2BZanc7Nn1C
OXFBcGxQM1hXIyRmcX5KKnIKekNrbHhyNDlNbmdsPVVOe0V6ITE5ZV9sSUpBWEZiP2R3P2p4V1pK
VkVLRjQwZTJebFhOS2NzOyFuP2dGfj5GRyZ7CnpGWSs/ST5+fGxtYlV8MmtoVitGaHEmWCRNNFFv
Myl5Y2d2WGN2cTVzJC17RD9NO1A4IytUPmtHb2lHJWFCZ2BLTgp6X1BoRUFiZD5eISR2RGZsNHlE
eWxoaCNwNkNJamdOXjRwXkR1QyhCUTNyZV5OVmBNNWlsXiFBNmU8dExVZWhvMisKejQ4cnU0Ym8q
IWREUXVyZng9UXBnYy1JI0JGZStEWEtlZz9aX3hDSEVXJEJLazF4Xm1uWSR8UDliZVdQJWB5YTN6
Cno3c0lMU2ZUQjJ+cTFaUF8kKXFaZE9tSDRNQSQwUnhxb2FZJFolQ2luKlBYZyZTJFkralZ2XjJO
I24hTFlkWGhRTQp6OEZ1Ujl5eGt4SXh8cjRwNDtsdEJTMSFXd1IodD88a35fJVBhfkl8ZmtAMksr
bFc8PkVvVCo9bDhTZn1lN19gRmYKelE7OG9LTkJjd1AoITJzVGpeZiY0ZEwhakY1QD9yfSl2aDV1
KjQpRFNwQkpwVyZ7TGd+Mmo2KSM4Y3o3MCFUaClaCnooPEI4YXVJK3RVVHdjN3txfCo2YUArdFhG
UFdmaUExMnRmTHBRSklLUWszZz5eTCNfYCpgRTBZdDRGPV5ac2ElNwp6N0NBPHJNan48TDEkQU0+
MkR4aTJhRTs5ZHhaNT9jQXR4QCsrXiktVDRJNitHRHprJShtRj1QQSlJbGRGZk1+KVoKejtXe3hY
RX04YGRkTHszUHRqLTIhZztganxDNXo1fnJ3KzEpY2M7fjdxJTY/dTF7a0wrYStPcWZad2dzVzF6
Rk16CnpqPWgreiYkRDF3SSNTfTc1KTFRaDdVWXRwU3J1MHk3PWN9Y0hjenM9YGpfRTE5K2t5PUle
YkkkT1BVXnlYNEdlcAp6MXIoX21FdCNadkdRUTFJanB+ZyZ7T0RSRko2RntUcFFRYkk9YTk3cXJT
NDZAV1BSbSVjNSVVO3NoajcoMThhZFUKemB4Mn5idT5JOEwlaFppPGxgKGYqWFN7a34rbUZlIXpy
OXFjJTxJPGN7TWZkYmM0aWltaU5FeSZhRjxhfXFaZ2lNCnp8ST89azZZTjNRKilsRHZPMk5hV3Yj
QkZ0eHJQWUFWO0xRcGNNRjQzN0ZqNW4jMjAlcF9NMm9QcDBlbnFsWEh0WQp6bFl3Y3RtZXNwPUMx
TkJSXkNoZzBFVjZ7fmdDTyh3N0ItMTBeJS1RekwjRktIMWd1cXZOWX47RVlmbiM3STxKUSgKenc9
YU8zQGd8Q3FzdFI9PSgoYlB8ZDg/PiVUJiRKXjA8eEFvVzA3TCVqM3E9bVRJY0dSUjF7KnRPeSk9
VXp5WFZNCnolaG56JkQ5T3FMTVB2fiYoWHFoRyQ9Tk99SiZFPEZ6Z0BpKSVRaF5PTFN+YXl1Q3s4
ZG1SJnd6djFoXnVweylEbAp6XyplPCtYOGh0O2R0MHg7eTZCIVAtTnspYzc/IUh3Vmk4WVA/IyFC
TUU/TWJRKUgyX1opPSNrUFVJQFIoWXBTaT8KeiVzRD5VQXxVIWA7QTZpZUU0MkMlb2t3WVdkXlRJ
YWtvWERGYlItYzQzP2xjIVU1XiNARm5wUHItIT9VTWw2NGB8CnpPI2pPO0FEXlJHVnxBTzFYJDcm
O2JubllVPn1zX3FJVlkqUD59YHs9MmN5ZUUkLWd3ZVFLZH4lUFdaUHpaTV5zXwp6dCNTd0FANXp1
VntJdDwhRk4/SXkpd3FlMEskby1fdGlUOEJKZDtYRERIbVR+P3JLWXhEZTJ4T3tVWEA4NG0lejMK
ejZtfkVhcWhiYCRfZi1jKWpiQEZrZ1cqPFVyJnUwQ0UqRyNTdm9GN3N0JVQrenZZdEIja1V2UnN1
cDE5YihJc3w/Cno5N1RHRGJYM2Y9OzlIfCt2YWI8V2g0fkAqPHNDQEdOMHNyZGB7e017UktBbGxy
MCRzTmw0Njg3JDZRRXVZOWNibwp6SGN6JUUrMEwwc2M1RXR4Nlo9fmkpKlZ4UzZPaXVIeCp2TlZh
aDFXdzBZKzhvRzE0SUI3PUdQSkczdl8qWjI4M0YKeiRIbF9pbEFIOFNqKSRYeD4+ajIySl4/PUhQ
MGFSJGBtbDhFMn0zI2RlRXphciM3fnJeOD1fIXNQIWc7UkZ4dnhCCnpaSFU1OzdKKGtXVHM4IXw3
OEBqITN7bVZCNWd1NH50MmcqIUE4RDBmdUZIZjxUVlUlcGRVSEtoZkwqWEdITkdgXgp6eFVtKTRB
bms3cXNVKlc1KiRKRGEkNXhBYk9BSWdBdXl4cHNTVlRDdFpjN3xgaVR0UW1wVlhzfWBaXkcqdkpK
YkAKemJVKSlzcyheVz5WLWU3ZDtnNyVVZ1AmbVd7eClRdk97V3smY2VBci0qSlluU149fkltS2Zn
Y21vIzUlYDRfYnJZCnpGPXBXUlMycFJxOG1VdEpndX5eRnteV3ZBSyZ6NFdTS2omcitzX1l3NEVe
R3FKMmBYN1o9THUzK0Q2e2l7RmJYQwplcShhe2hzJFhQKDRMdVAqdEJ4TzVDdkBhRElXVXwjQEJW
KXwjd3tsUgoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LW5vLXdpZHRoLXZhbHVlLWFsbG93cy1kb3VibGUtdGFw
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1uby13
aWR0aC12YWx1ZS1hbGxvd3MtZG91YmxlLXRhcC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTdj
NzBkNmVmMWUzOTAyMTQ3MTY5MzdlYzMzMGMwMmNkZDczN2Q4MQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1uby13aWR0aC12YWx1ZS1hbGxv
d3MtZG91YmxlLXRhcC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBACitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0RvdWJsZSB0YXBwaW5nIG9uIHRo
ZSBpbWFnZSBzaG91bGQgc2Nyb2xsLgorCitUaGlzIHRlc3QgaXMgYmVzdCBydW4gaW4gV2ViS2l0
VGVzdFJ1bm5lci4gSWYgeW91IGFyZSBydW5uaW5nIHRoaXMgdGVzdCBtYW51YWxseSwgdmVyaWZ5
IHRoYXQgZG91YmxlIHRhcHBpbmcgb24gdGhlIGJvdHRvbSBvZiB0aGUgdmlld3BvcnQgY2F1c2Vk
IGEgc2Nyb2xsLgorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92
aWV3cG9ydC1uby13aWR0aC12YWx1ZS1hbGxvd3MtZG91YmxlLXRhcC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LW5vLXdpZHRoLXZhbHVlLWFsbG93cy1kb3VibGUt
dGFwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjMyNzJlODBiNDNiMjE3NjEyYTU4M2E2MGQxNmRmN2E2ZmZi
ZTIzMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92aWV3
cG9ydC1uby13aWR0aC12YWx1ZS1hbGxvd3MtZG91YmxlLXRhcC5odG1sCkBAIC0wLDAgKzEsNTAg
QEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIHVzZUZsZXhpYmxl
Vmlld3BvcnQ9dHJ1ZSBdIC0tPgorCis8aHRtbD4KKzxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250
ZW50PSJpbml0aWFsLXNjYWxlPTEuMCI+CisKKzxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgaWQ9
InVpLXNjcmlwdCIgdHlwZT0idGV4dC9wbGFpbiI+CisgICAgICAgIChmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50KDE1LCA0MDAsIGZ1bmN0aW9u
KCkge30pOworICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsKKyAg
ICAgICAgfSkoKTsKKyAgICA8L3NjcmlwdD4KKworICAgIDxzY3JpcHQ+CisgICAgdmFyIHNjcmlw
dENvbXBsZXRlZCA9IGZhbHNlOworICAgIHZhciBjbGlja0NvdW50ID0gMDsKKyAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworCisg
ICAgZnVuY3Rpb24gZ2V0VUlTY3JpcHQoKSB7CisgICAgICAgIHJldHVybiBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidWktc2NyaXB0IikudGV4dDsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBydW5U
ZXN0KCkgeworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIiwgc2Nyb2xs
ZWQsIGZhbHNlKTsKKyAgICAgICAgaWYgKHRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAg
ICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGdldFVJU2NyaXB0KCkpOworICAgIH0KKyAgICBm
dW5jdGlvbiBzY3JvbGxlZCgpIHsKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfQorICAgIDwvc2NyaXB0Pgor
CisgICAgPHN0eWxlPgorICAgIGJvZHkgeworICAgICAgICBtYXJnaW46IDA7CisgICAgfQorICAg
IDwvc3R5bGU+Cis8L2hlYWQ+CisKKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKyAgICA8cD5E
b3VibGUgdGFwcGluZyBvbiB0aGUgaW1hZ2Ugc2hvdWxkIHNjcm9sbC48L3A+CisgICAgPHA+VGhp
cyB0ZXN0IGlzIGJlc3QgcnVuIGluIFdlYktpdFRlc3RSdW5uZXIuIElmIHlvdSBhcmUgcnVubmlu
ZyB0aGlzIHRlc3QgbWFudWFsbHksIHZlcmlmeSB0aGF0IGRvdWJsZSB0YXBwaW5nIG9uIHRoZSBi
b3R0b20gb2YgdGhlIHZpZXdwb3J0IGNhdXNlZCBhIHNjcm9sbC48L3A+CisgICAgPGltZyBzcmM9
InRoaW4tZ3JhZGllbnQuanBnIj4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+CisKKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1zaW11bGF0b3IvVGVzdEV4cGVjdGF0aW9ucyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1zaW11bGF0b3IvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCA1NzNiZWM1OTcyMWMwMGE3YjNlZWM5YmNhZmMzMzA2Y2I0OGJkZmY0Li5lODI2NmFiZjAzNzcx
MWZjMTMzMWRmZWIyZjQ0NzhiZDJhNDQ5ZDlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zLXNpbXVsYXRvci9UZXN0RXhwZWN0YXRpb25zCkBAIC0yODM4LDYgKzI4MzgsNyBA
QCB3ZWJraXQub3JnL2IvMTUyMTM0IGZhc3QvZXZlbnRzL2lvcy9rZXlib2FyZC1zaG91bGQtbm90
LXRyaWdnZXItcmVzaXplLmh0bWwgWyBQYQogd2Via2l0Lm9yZy9iLzE1MjEzNCBmYXN0L2V2ZW50
cy9pb3Mvc2luZ2xlLXRhcC1nZW5lcmF0ZXMtY2xpY2suaHRtbCBbIFBhc3MgVGltZW91dCBdCiB3
ZWJraXQub3JnL2IvMTUyMTM0IGZhc3QvZXZlbnRzL2lvcy91bnNjYWxhYmxlLXZpZXdwb3J0LWNs
aWNrcy1vbi1kb3VibGV0YXAuaHRtbCBbIFBhc3MgVGltZW91dCBdCiB3ZWJraXQub3JnL2IvMTUy
MTM0IGZhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1kZXZpY2Utd2lkdGgtYXQtaW5pdGlhbC1zY2Fs
ZS1mYXN0LWNsaWNrcy5odG1sICBbIFBhc3MgVGltZW91dCBdCit3ZWJraXQub3JnL2IvMTUyMTM0
IGZhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1uby13aWR0aC12YWx1ZS1hbGxvd3MtZG91YmxlLXRh
cC5odG1sICBbIFBhc3MgVGltZW91dCBdCiAKICMgRmFpbGluZyB0ZXN0cyByZWxhdGVkIHRvIHBp
Y3R1cmUgZWxlbWVudAogd2Via2l0Lm9yZy9iLzE1MjE0MSBmYXN0L3BpY3R1cmUvaW1hZ2UtcGlj
dHVyZS0xeC5odG1sIFsgU2tpcCBdCg==
</data>
<flag name="review"
          id="294774"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>