<?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>80136</bug_id>
          
          <creation_ts>2012-03-02 02:52:22 -0800</creation_ts>
          <short_desc>[EFL][DRT] Implement LayoutTestController&apos;s methods related with editing</short_desc>
          <delta_ts>2012-03-23 00:25:48 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</component>
          <version>528+ (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>0</everconfirmed>
          <reporter name="Grzegorz Czajkowski">g.czajkowski</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>569482</commentid>
    <comment_count>0</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-02 02:52:22 -0800</bug_when>
    <thetext>Implements EFL&apos;s LayoutTestController methods:
 - setSmartInsertDeleteEnabled,
 - setSelectTrailingWhitespaceEnabled
 - hasSpellingMarker.

I am working on this implementation, patch will be uploaded soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570655</commentid>
    <comment_count>1</comment_count>
      <attachid>130122</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-05 07:00:42 -0800</bug_when>
    <thetext>Created attachment 130122
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570719</commentid>
    <comment_count>2</comment_count>
      <attachid>130122</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-03-05 08:18:39 -0800</bug_when>
    <thetext>Comment on attachment 130122
proposed patch

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

I&apos;d rather avoid doing what the Qt port does/used to do and make WebCoreSupport aware of DRT; the current code was written with that in mind, and I think we can keep doing so. Isn&apos;t it possible to make DRTSupportEefl::setSelectTrailingWhitespaceEnabled set some flag in EditClient itself or in ewk_view?

&gt; LayoutTests/platform/efl/Skipped:67
&gt; +editing/selection/doubleclick-inline-first-last-contenteditable.html

Please keep the list alphabetically sorted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572668</commentid>
    <comment_count>3</comment_count>
      <attachid>130563</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-07 00:58:13 -0800</bug_when>
    <thetext>Created attachment 130563
updated patch according to Kubo&apos;s review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572672</commentid>
    <comment_count>4</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-07 01:00:14 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 130122 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=130122&amp;action=review
&gt; 
&gt; I&apos;d rather avoid doing what the Qt port does/used to do and make WebCoreSupport aware of DRT; the current code was written with that in mind, and I think we can keep doing so. Isn&apos;t it possible to make DRTSupportEefl::setSelectTrailingWhitespaceEnabled set some flag in EditClient itself or in ewk_view?

Ok, I added flag to EditorClinetEfl to set/get selectTrailingWhitespaceEnabled (similar to smartInsertDeleteEnabled).

&gt; 
&gt; &gt; LayoutTests/platform/efl/Skipped:67
&gt; &gt; +editing/selection/doubleclick-inline-first-last-contenteditable.html
&gt; 
&gt; Please keep the list alphabetically sorted.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572694</commentid>
    <comment_count>5</comment_count>
      <attachid>130568</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-07 01:37:02 -0800</bug_when>
    <thetext>Created attachment 130568
rebased patch to HEAD</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572771</commentid>
    <comment_count>6</comment_count>
      <attachid>130568</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-03-07 03:56:55 -0800</bug_when>
    <thetext>Comment on attachment 130568
rebased patch to HEAD

Looks fine to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573675</commentid>
    <comment_count>7</comment_count>
      <attachid>130568</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-03-08 00:06:24 -0800</bug_when>
    <thetext>Comment on attachment 130568
rebased patch to HEAD

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

&gt; Source/WebKit/efl/WebCoreSupport/EditorClientEfl.cpp:235
&gt; +    m_smartInsertDeleteEnabled = enabled;

You also need to set m_selectTrailingWhitespaceEnabled false if enabled was true here.

&gt; Source/WebKit/efl/WebCoreSupport/EditorClientEfl.cpp:245
&gt; +    m_selectTrailingWhitespaceEnabled = enabled;

You need to set m_smartInsertDeleteEnabled false if enabled was true here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585235</commentid>
    <comment_count>8</comment_count>
      <attachid>133254</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-03-22 07:16:42 -0700</bug_when>
    <thetext>Created attachment 133254
updated patch

Added Ryosuke&apos;s suggestions.
Removed hasSpellingMarker implementation from current patch - hasSpellingMarker should be used through Internals interface https://bugs.webkit.org/show_bug.cgi?id=81300.

Patch for landing :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586145</commentid>
    <comment_count>9</comment_count>
      <attachid>133254</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-23 00:25:43 -0700</bug_when>
    <thetext>Comment on attachment 133254
updated patch

Clearing flags on attachment: 133254

Committed r111835: &lt;http://trac.webkit.org/changeset/111835&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586146</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-23 00:25:48 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130122</attachid>
            <date>2012-03-05 07:00:42 -0800</date>
            <delta_ts>2012-03-07 00:58:13 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>drt_editing_implementation.patch</filename>
            <type>text/plain</type>
            <size>15008</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2N2YzNmI4Li45MTVmMDg5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDMt
MDUgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAg
ICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2Rz
IHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBFbmFibGVzIHRlc3RzIGNvbm5lY3RlZCB3aXRoIHNldFNlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQsIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAg
ICAgVGVzdHMgcmVsYXRlZCB3aXRoIHNwZWxsaW5nIGNhbiBub3QgYmUgZW5hYmxlZCBpbiB0aGlz
IHBhdGNoIGJlY2F1c2UgV2ViS2l0LUVmbCBkb2Vzbid0CisgICAgICAgIHN1cHBvcnQgc3BlbGwg
Y2hlY2tpbmcgKG1pc3NpbmcgVGV4dENoZWNrZXJDbGllbnQgaW1wbGVtZW50YXRpb24pLgorCisg
ICAgICAgICogcGxhdGZvcm0vZWZsL1NraXBwZWQ6CisKIDIwMTItMDMtMDIgIEFsZXhhbmRlciBQ
YXZsb3YgIDxhcGF2bG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBb
U3R5bGVzXSBbQ1JBU0hdIEhhbmRsZSBydWxlIGFkZGl0aW9uIGFuZCBpbmxpbmUgc3R5bGUgZWRp
dGluZyBmYWlsdXJlIGR1ZSB0byBDb250ZW50LVNlY3VyaXR5LVBvbGljeSBpbiB0aGUgcGFnZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAppbmRleCA3NWIxM2VkLi5lMDE2MDc0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9lZmwvU2tpcHBlZApAQCAtNjEsOSArNjEsMTAgQEAgc3ZnL1czQy1TVkctMS4xLVNFCiBz
dmcvem9vbS9wYWdlL3JlbGF0aXZlLXNpemVkLWRvY3VtZW50LXNjcm9sbGJhcnMuc3ZnCiBzdmcv
em9vbS9wYWdlL3pvb20tem9vbS1jb29yZHMueGh0bWwKIAotIyBFRkwncyBFdmVudFNlbmRlciBu
ZWVkcyB0byBlbWl0IGRvdWJsZSBjbGlja3MKKyMgRUZMJ3MgRXZlbnRTZW5kZXIgbmVlZHMgdG8g
ZW1pdCBkb3VibGUgY2xpY2tzIChlLmcuIHRvIHNlbGVjdCB0ZXh0KQogZmFzdC9ldmVudHMvZGJs
Y2xpY2stYWRkRXZlbnRMaXN0ZW5lci5odG1sCiBmYXN0L2Zvcm1zL3Bhc3N3b3JkLWRvdWJsZWNs
aWNrLXNlbGVjdGlvbi5odG1sCitlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1pbmxpbmUt
Zmlyc3QtbGFzdC1jb250ZW50ZWRpdGFibGUuaHRtbAogCiAjIEVGTCdzIEV2ZW50U2VuZGVyIGRv
ZXMgbm90IGltcGxlbWVudCBiZWdpbkRyYWdXaXRoRmlsZXMgeWV0CiBmYXN0L2RvbS9XaW5kb3cv
d2luZG93LXBvc3RtZXNzYWdlLWNsb25lLWZyYW1lcy5odG1sCkBAIC01MTUsMTMgKzUxNiw2IEBA
IGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQu
aHRtbAogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVyLW9uZm9jdXMuaHRtbAog
cGx1Z2lucy9uZXRzY2FwZS1wbHVnaW4tc2V0d2luZG93LXNpemUtMi5odG1sCiAKLSMgRUZMJ3Mg
TGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZAotZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwK
LWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLWJlc2lkZS1jci1zcGFuLmh0bWwKLWVkaXRp
bmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbAotZWRpdGluZy9z
ZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAotZWRpdGluZy9z
ZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCi0KICMgRUZMJ3MgTGF5b3V0VGVz
dENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlw
Ym9hcmQKIGVkaXRpbmcvZXhlY0NvbW1hbmQvY2xpcGJvYXJkLWFjY2Vzcy5odG1sCiAKQEAgLTU0
NywxMyArNTQxLDYgQEAgaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMtd2l0aC1pbWFnZXMt
ZGlzYWJsZWQuaHRtbAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBs
ZW1lbnQgc2V0SmF2YVNjcmlwdFByb2ZpbGluZ0VuYWJsZWQKIGZhc3QvcHJvZmlsZXIKIAotIyBF
RkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0U2VsZWN0VHJh
aWxpbmdXaGl0ZXNwYWNlRW5hYmxlZAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVz
aWRlLWNyLXNwYW4uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2staW5saW5lLWZp
cnN0LWxhc3QtY29udGVudGVkaXRhYmxlLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNs
aWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2st
d2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2st
d2hpdGVzcGFjZS5odG1sCi0KICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3Qg
aW1wbGVtZW50IHNldFBvcHVwQmxvY2tpbmdFbmFibGVkCiBmYXN0L2V2ZW50cy9vcGVuLXdpbmRv
dy1mcm9tLWFub3RoZXItZnJhbWUuaHRtbAogZmFzdC9ldmVudHMvcG9wdXAtYWxsb3dlZC1mcm9t
LWdlc3R1cmUtaW5pdGlhdGVkLWV2ZW50Lmh0bWwKQEAgLTgzNCw3ICs4MjEsNyBAQCBmYXN0L2V2
ZW50cy9iYWNrc3BhY2UtbmF2aWdhdGVzLWJhY2suaHRtbAogZmFzdC9ldmVudHMvc2hvdy1tb2Rh
bC1kaWFsb2ctb25ibHVyLW9uZm9jdXMuaHRtbAogZmFzdC9oYXJuZXNzL3Nob3ctbW9kYWwtZGlh
bG9nLmh0bWwKIAotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1l
bnQgaGFzU3BlbGxpbmdNYXJrZXIKKyMgTWlzc2luZyBUZXh0Q2hlY2tlckNsaWVudCBpbXBsZW1l
bnRhdGlvbiAoRWZsJ3MgcG9ydCBkb2VzIG5vdCBzdXBwb3J0IHNwZWxsIGNoZWNraW5nLCBHdGsg
cG9ydCB1c2VzIEVuY2hhbnQgbGlicmFyeSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NjE3ODcpCiBlZGl0aW5nL3NwZWxsaW5nL2Rlc2lnbi1tb2RlLXNwZWxsY2hlY2st
b2ZmLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxjaGVjay1hdHRyaWJ1dGUuaHRtbAogZWRp
dGluZy9zcGVsbGluZy9zcGVsbGNoZWNrLXBhc3RlLmh0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCAy
NTEyOTM0Li45N2Y0ZTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTIt
MDMtMDUgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRo
b2RzIHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbCdzIG1l
dGhvZHMgcmVsYXRlZCB3aXRoIGVkaXRpbmcuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9E
dW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsOjpzZXREdW1wUmVuZGVyVHJlZU1vZGVFbmFibGVkKTogTmV3IGZ1bmN0aW9uIHRvIGVu
YWJsZSBEUlQgbW9kZS4KKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6ZHVtcFJl
bmRlclRyZWVNb2RlRW5hYmxlZCk6IE5ldyBmdW5jaW9uIHRvIGdldCBEUlQgbW9kZS4KKyAgICAg
ICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNl
RW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVm
bDo6c2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAg
ICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2VsZWN0aW9uSGFzU3BlbGxpbmdNYXJrZXIp
OiBOZXcgZnVuY3Rpb24uCisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaDoKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9FZGl0b3JDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50
RWZsOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBOZXcgZnVuY3Rpb24uCisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudEVmbDo6c21hcnRJbnNl
cnREZWxldGVFbmFibGVkKTogQWRkIEltcGxlbWVudGF0aW9uIHJlbGF0ZWQgd2l0aCBEUlQuCisg
ICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OmlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNw
YWNlRW5hYmxlZCk6IGFkZCBpbml0aWFsaXphdG9uIG9mIG5ld2x5IGFkZGVkIEVkaXRvckNsaWVu
dEVmbCdzIG1lbWJlcgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZsOjpFZGl0b3JD
bGllbnRFZmwpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5oOgor
ICAgICAgICAoRWRpdG9yQ2xpZW50RWZsKToKKwogMjAxMi0wMy0wMiAgR3J6ZWdvcnogQ3phamtv
d3NraSAgPGcuY3phamtvd3NraUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBFbmFibGlu
ZyAnSW5zcGVjdCBFbGVtZW50JyBpbiBFd2tfQ29udGV4dF9NZW51X0FjdGlvbi4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9y
dEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJl
ZVN1cHBvcnRFZmwuY3BwCmluZGV4IGZkM2Q2YjUuLjk2YWIyMGUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsLmNwcApAQCAtMjYsNiArMjYsNyBAQAogCiAjaW5jbHVkZSA8QW5pbWF0aW9uQ29udHJv
bGxlci5oPgogI2luY2x1ZGUgPERvY3VtZW50TG9hZGVyLmg+CisjaW5jbHVkZSA8RWRpdG9yQ2xp
ZW50RWZsLmg+CiAjaW5jbHVkZSA8RWluYS5oPgogI2luY2x1ZGUgPEV2YXMuaD4KICNpbmNsdWRl
IDxGaW5kT3B0aW9ucy5oPgpAQCAtNDMsNiArNDQsMjkgQEAKICNpbmNsdWRlIDx3dGYvT3duQXJy
YXlQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KIAorYm9vbCBEdW1w
UmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNfZHJ0TW9kZSA9IGZhbHNlOworYm9vbCBEdW1wUmVuZGVy
VHJlZVN1cHBvcnRFZmw6OnNfc2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCA9IGZhbHNl
OworCit2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0RHVtcFJlbmRlclRyZWVNb2Rl
RW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgc19kcnRNb2RlID0gZW5hYmxlZDsKK30KKwor
Ym9vbCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OmR1bXBSZW5kZXJUcmVlTW9kZUVuYWJsZWQo
KQoreworICAgIHJldHVybiBzX2RydE1vZGU7Cit9CisKK3ZvaWQgRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGJvb2wgZW5hYmxlZCkK
K3sKKyAgICBzX3NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQgPSBlbmFibGVkOworfQor
Citib29sIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNl
RW5hYmxlZCgpCit7CisgICAgcmV0dXJuIHNfc2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxl
ZDsKK30KKwogdW5zaWduZWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjphY3RpdmVBbmltYXRp
b25zQ291bnQoY29uc3QgRXZhc19PYmplY3QqIGV3a0ZyYW1lKQogewogICAgIFdlYkNvcmU6OkZy
YW1lKiBmcmFtZSA9IEVXS1ByaXZhdGU6OmNvcmVGcmFtZShld2tGcmFtZSk7CkBAIC0yNDcsNiAr
MjcxLDE1IEBAIFdlYkNvcmU6OkludFJlY3QgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZWxl
Y3Rpb25SZWN0YW5nbGUoY29uc3QgRXZhc19PYmplY3QqCiAgICAgcmV0dXJuIGVuY2xvc2luZ0lu
dFJlY3QoZnJhbWUtPnNlbGVjdGlvbigpLT5ib3VuZHMoKSk7CiB9CiAKK2Jvb2wgRHVtcFJlbmRl
clRyZWVTdXBwb3J0RWZsOjpzZWxlY3Rpb25IYXNTcGVsbGluZ01hcmtlcihjb25zdCBFdmFzX09i
amVjdCogZXdrRnJhbWUsIGludCBmcm9tLCBpbnQgbGVuZ3RoKQoreworICAgIFdlYkNvcmU6OkZy
YW1lKiBmcmFtZSA9IEVXS1ByaXZhdGU6OmNvcmVGcmFtZShld2tGcmFtZSk7CisgICAgaWYgKCFm
cmFtZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIGZyYW1lLT5lZGl0b3Io
KS0+c2VsZWN0aW9uU3RhcnRIYXNNYXJrZXJGb3IoV2ViQ29yZTo6RG9jdW1lbnRNYXJrZXI6OlNw
ZWxsaW5nLCBmcm9tLCBsZW5ndGgpOworfQorCiAvLyBDb21wYXJlIHdpdGggIldlYktpdC9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0KIFN0cmluZyBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRFZmw6OnN1aXRhYmxlRFJURnJhbWVOYW1lKGNvbnN0IEV2YXNfT2JqZWN0
KiBld2tGcmFtZSkKIHsKQEAgLTMxMSw2ICszNDQsMTkgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRFZmw6OnNldEF1dG9maWxsZWQoSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTVmFsdWVSZWYg
bm8KICAgICBpbnB1dEVsZW1lbnQtPnNldEF1dG9maWxsZWQoYXV0b2ZpbGxlZCk7CiB9CiAKK3Zv
aWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
RXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICBXZWJDb3JlOjpQYWdl
KiBwYWdlID0gRVdLUHJpdmF0ZTo6Y29yZVBhZ2UoZXdrVmlldyk7CisgICAgaWYgKCFwYWdlKQor
ICAgICAgICByZXR1cm47CisKKyAgICBXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmwqIGVkaXRvckNs
aWVudCA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OkVkaXRvckNsaWVudEVmbCo+KHBhZ2UtPmVkaXRv
ckNsaWVudCgpKTsKKyAgICBpZiAoIWVkaXRvckNsaWVudCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgZWRpdG9yQ2xpZW50LT5zZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZW5hYmxlZCk7Cit9
CisKIGJvb2wgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpmaW5kU3RyaW5nKGNvbnN0IEV2YXNf
T2JqZWN0KiBld2tWaWV3LCBjb25zdCBjaGFyKiB0ZXh0LCBXZWJDb3JlOjpGaW5kT3B0aW9ucyBv
cHRpb25zKQogewogICAgIFdlYkNvcmU6OlBhZ2UqIHBhZ2UgPSBFV0tQcml2YXRlOjpjb3JlUGFn
ZShld2tWaWV3KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0
L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1
cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKaW5kZXggOTUwYTc4ZC4uY2YzY2IwZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0RWZsLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVt
cFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKQEAgLTQ0LDYgKzQ0LDEyIEBAIHB1YmxpYzoKIAogICAg
IH5EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwoKSB7IH0KIAorICAgIHN0YXRpYyB2b2lkIHNldER1
bXBSZW5kZXJUcmVlTW9kZUVuYWJsZWQoYm9vbCk7CisgICAgc3RhdGljIGJvb2wgZHVtcFJlbmRl
clRyZWVNb2RlRW5hYmxlZCgpOworCisgICAgc3RhdGljIHZvaWQgc2V0U2VsZWN0VHJhaWxpbmdX
aGl0ZXNwYWNlRW5hYmxlZChib29sKTsKKyAgICBzdGF0aWMgYm9vbCBzZWxlY3RUcmFpbGluZ1do
aXRlc3BhY2VFbmFibGVkKCk7CisKICAgICBzdGF0aWMgdW5zaWduZWQgYWN0aXZlQW5pbWF0aW9u
c0NvdW50KGNvbnN0IEV2YXNfT2JqZWN0KiBld2tGcmFtZSk7CiAgICAgc3RhdGljIHZvaWQgY2xl
YXJGcmFtZU5hbWUoRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKICAgICBzdGF0aWMgdm9pZCBjbGVh
ck9wZW5lcihFdmFzX09iamVjdCogZXdrRnJhbWUpOwpAQCAtNjAsOCArNjYsMTAgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBTdHJpbmcgcmVzcG9uc2VNaW1lVHlwZShjb25zdCBFdmFzX09iamVjdCog
ZXdrRnJhbWUpOwogICAgIHN0YXRpYyB2b2lkIHJlc3VtZUFuaW1hdGlvbnMoRXZhc19PYmplY3Qq
IGV3a0ZyYW1lKTsKICAgICBzdGF0aWMgV2ViQ29yZTo6SW50UmVjdCBzZWxlY3Rpb25SZWN0YW5n
bGUoY29uc3QgRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKKyAgICBzdGF0aWMgYm9vbCBzZWxlY3Rp
b25IYXNTcGVsbGluZ01hcmtlcihjb25zdCBFdmFzX09iamVjdCogZXdrRnJhbWUsIGludCBmcm9t
LCBpbnQgbGVuZ3RoKTsKICAgICBzdGF0aWMgU3RyaW5nIHN1aXRhYmxlRFJURnJhbWVOYW1lKGNv
bnN0IEV2YXNfT2JqZWN0KiBld2tGcmFtZSk7CiAgICAgc3RhdGljIHZvaWQgc3VzcGVuZEFuaW1h
dGlvbnMoRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKKyAgICBzdGF0aWMgdm9pZCBzZXRTbWFydElu
c2VydERlbGV0ZUVuYWJsZWQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAg
ICAgc3RhdGljIHZvaWQgc2V0VmFsdWVGb3JVc2VyKEpTQ29udGV4dFJlZiwgSlNWYWx1ZVJlZiBu
b2RlT2JqZWN0LCBKU1N0cmluZ1JlZiB2YWx1ZSk7CiAgICAgc3RhdGljIHZvaWQgc2V0QXV0b2Zp
bGxlZChKU0NvbnRleHRSZWYsIEpTVmFsdWVSZWYgbm9kZU9iamVjdCwgYm9vbCBhdXRvZmlsbGVk
KTsKIApAQCAtNzksNiArODcsMTAgQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lkIHNldE1vY2tT
Y3JvbGxiYXJzRW5hYmxlZChib29sKTsKIAogICAgIHN0YXRpYyB2b2lkIGR1bXBDb25maWd1cmF0
aW9uRm9yVmlld3BvcnQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGludCBkZXZpY2VEUEksIGNvbnN0
IFdlYkNvcmU6OkludFNpemUmIGRldmljZVNpemUsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGF2
YWlsYWJsZVNpemUpOworCitwcml2YXRlOgorICAgIHN0YXRpYyBib29sIHNfZHJ0TW9kZTsKKyAg
ICBzdGF0aWMgYm9vbCBzX3NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQ7CiB9OwogCiAj
ZW5kaWYgLy8gRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuY3BwCmluZGV4IDgyMjQxNTUu
LjQ4Yjk0OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Vk
aXRvckNsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQv
RWRpdG9yQ2xpZW50RWZsLmNwcApAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkVkaXRvckNsaWVudEVmbC5oIgogCisjaW5jbHVkZSAiRHVtcFJlbmRlclRy
ZWVTdXBwb3J0RWZsLmgiCiAjaW5jbHVkZSAiRWRpdG9yLmgiCiAjaW5jbHVkZSAiRXZlbnROYW1l
cy5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpAQCAtMjI5LDE1ICsyMzAsMjAgQEAg
dm9pZCBFZGl0b3JDbGllbnRFZmw6OnBhZ2VEZXN0cm95ZWQoKQogICAgIGRlbGV0ZSB0aGlzOwog
fQogCit2b2lkIEVkaXRvckNsaWVudEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJv
b2wgZW5hYmxlZCkKK3sKKyAgICBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGVuYWJsZWQ7
Cit9CisKIGJvb2wgRWRpdG9yQ2xpZW50RWZsOjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQoKQog
ewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBt
X3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKIH0KIAogYm9vbCBFZGl0b3JDbGllbnRFZmw6Omlz
U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQo
KTsKKyAgICBpZiAoRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpkdW1wUmVuZGVyVHJlZU1vZGVF
bmFibGVkKCkpCisgICAgICAgIHJldHVybiBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNlbGVj
dFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAg
LTQzNyw2ICs0NDMsNyBAQCB2b2lkIEVkaXRvckNsaWVudEVmbDo6aGFuZGxlSW5wdXRNZXRob2RL
ZXlkb3duKEtleWJvYXJkRXZlbnQqIGV2ZW50KQogRWRpdG9yQ2xpZW50RWZsOjpFZGl0b3JDbGll
bnRFZmwoRXZhc19PYmplY3QqIHZpZXcpCiAgICAgOiBtX2lzSW5SZWRvKGZhbHNlKQogICAgICwg
bV92aWV3KHZpZXcpCisgICAgLCBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChmYWxzZSkKIHsK
ICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJD
b3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuaAppbmRleCAyYjUyZTlkLi4zOGNkMWU2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwu
aApAQCAtNjAsNiArNjAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNob3VsZERlbGV0
ZVJhbmdlKFJhbmdlKik7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFNob3dEZWxldGVJbnRlcmZh
Y2UoSFRNTEVsZW1lbnQqKTsKICAgICB2aXJ0dWFsIGJvb2wgc21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKCk7CisgICAgdm9pZCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCk7CiAgICAg
dmlydHVhbCBib29sIGlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgpOwogICAgIHZp
cnR1YWwgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCgpOwogICAgIHZpcnR1
YWwgdm9pZCB0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpOwpAQCAtMTI1LDYgKzEyNiw3
IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBFdmFzX09iamVjdCAqbV92aWV3OworICAgIGJv
b2wgbV9zbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CiB9OwogfQogCmRpZmYgLS1naXQgYS9Ub29s
cy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOGFlZDU3Ny4uM2FhMWMxZSAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIwIEBACisyMDEyLTAzLTA1ICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFqa293c2tpQHNh
bXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdW0RSVF0gSW1wbGVtZW50IExheW91dFRlc3RDb250
cm9sbGVyJ3MgbWV0aG9kcyByZWxhdGVkIHdpdGggZWRpdGluZy4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMTM2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50cyBFRkwncyBMYXlvdXRUZXN0
Q29udHJvbGxlciBtZXRob2RzIGUuaS4gc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkLAorICAg
ICAgICBzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkLCBoYXNTcGVsbGluZ01hcmtl
ci4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5j
cHA6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZUNocm9tZTo6aW5pdGlhbGl6ZSk6IEVuYWJsZXMg
J2R1bXBSZW5kZXJUcmVlTW9kZScgaW4gaW5pdGlhbGl6YXRpb24gb2YgRFJULgorICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHA6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAg
ICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VF
bmFibGVkKToKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpoYXNTcGVsbGluZ01hcmtl
cik6CisKIDIwMTItMDMtMDUgIEFsZXhhbmRlciBGw6Zyw7h5ICA8YWxleGFuZGVyLmZhZXJveUBu
b2tpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gQWRkIG15c2VsZiB0byBjb21taXR0ZXIg
bGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJl
ZUNocm9tZS5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJv
bWUuY3BwCmluZGV4IGNlN2EwMGQuLmM2YzZiZjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcApAQCAtMTEwLDYgKzExMCw3IEBAIHZv
aWQgRHVtcFJlbmRlclRyZWVDaHJvbWU6OnJlbW92ZVdpbmRvdyhFdmFzX09iamVjdCogdmlldykK
IGJvb2wgRHVtcFJlbmRlclRyZWVDaHJvbWU6OmluaXRpYWxpemUoKQogewogICAgIER1bXBSZW5k
ZXJUcmVlU3VwcG9ydEVmbDo6c2V0TW9ja1Njcm9sbGJhcnNFbmFibGVkKHRydWUpOworICAgIER1
bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0RHVtcFJlbmRlclRyZWVNb2RlRW5hYmxlZCh0cnVl
KTsKIAogICAgIG1fbWFpblZpZXcgPSBjcmVhdGVWaWV3KCk7CiAgICAgaWYgKCFtX21haW5WaWV3
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9s
bGVyRWZsLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxl
ckVmbC5jcHAKaW5kZXggZGEwYzdjYS4uOWQ2YjE3MCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAorKysgYi9Ub29scy9EdW1w
UmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCkBAIC0yNzEsOSArMjcx
LDkgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0V2luZG93SXNLZXkoYm9vbCkKICAg
ICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCkKK3ZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6
OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGZsYWcpCiB7Ci0gICAgbm90SW1wbGVt
ZW50ZWQoKTsKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZChicm93c2VyLT5tYWluVmlldygpLCBmbGFnKTsKIH0KIAogc3RhdGljIEVpbmFf
Qm9vbCB3YWl0VG9EdW1wV2F0Y2hkb2dGaXJlZCh2b2lkKikKQEAgLTQzMSw5ICs0MzEsOSBAQCB2
b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRKYXZhU2NyaXB0UHJvZmlsaW5nRW5hYmxlZChi
b29sKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xs
ZXI6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYm9vbCkKK3ZvaWQgTGF5b3V0
VGVzdENvbnRyb2xsZXI6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYm9vbCBm
bGFnKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgRHVtcFJlbmRlclRyZWVTdXBwb3J0
RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGZsYWcpOwogfQogCiB2b2lk
IExheW91dFRlc3RDb250cm9sbGVyOjpzZXRQb3B1cEJsb2NraW5nRW5hYmxlZChib29sKQpAQCAt
NzI0LDEwICs3MjQsOSBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjphYm9ydE1vZGFsKCkK
ICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi1ib29sIExheW91dFRlc3RDb250cm9sbGVyOjpo
YXNTcGVsbGluZ01hcmtlcihpbnQsIGludCkKK2Jvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6Omhh
c1NwZWxsaW5nTWFya2VyKGludCBmcm9tLCBpbnQgbGVuZ3RoKQogewotICAgIG5vdEltcGxlbWVu
dGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBEdW1wUmVuZGVyVHJlZVN1cHBv
cnRFZmw6OnNlbGVjdGlvbkhhc1NwZWxsaW5nTWFya2VyKGJyb3dzZXItPm1haW5GcmFtZSgpLCBm
cm9tLCBsZW5ndGgpOwogfQogCiBib29sIExheW91dFRlc3RDb250cm9sbGVyOjpoYXNHcmFtbWFy
TWFya2VyKGludCwgaW50KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130563</attachid>
            <date>2012-03-07 00:58:13 -0800</date>
            <delta_ts>2012-03-07 01:37:02 -0800</delta_ts>
            <desc>updated patch according to Kubo&apos;s review</desc>
            <filename>drt_editing_implementation.patch</filename>
            <type>text/plain</type>
            <size>13171</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZGZiZTA5Li41NTk2NDI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDMt
MDcgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAg
ICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2Rz
IHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBFbmFibGVzIHRlc3RzIGNvbm5lY3RlZCB3aXRoIHNldFNlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQsIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAg
ICAgVGVzdHMgcmVsYXRlZCB3aXRoIHNwZWxsaW5nIGNhbiBub3QgYmUgZW5hYmxlZCBpbiB0aGlz
IHBhdGNoIGJlY2F1c2UgV2ViS2l0LUVmbCBkb2Vzbid0CisgICAgICAgIHN1cHBvcnQgc3BlbGwg
Y2hlY2tpbmcgKG1pc3NpbmcgVGV4dENoZWNrZXJDbGllbnQgaW1wbGVtZW50YXRpb24pLgorCisg
ICAgICAgICogcGxhdGZvcm0vZWZsL1NraXBwZWQ6CisKIDIwMTItMDMtMDYgIEhhbnMgTXVsbGVy
ICA8aG11bGxlckBhZG9iZS5jb20+CiAKICAgICAgICAgU1ZHIHRyYW5zZm9ybS1vcmlnaW4gcHJl
c2VudGF0aW9uIGF0dHJpYnV0ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZs
L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAppbmRleCA3NWIxM2Vk
Li5lMjQ3NzhiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZApAQCAtNjEsNyArNjEsOCBAQCBz
dmcvVzNDLVNWRy0xLjEtU0UKIHN2Zy96b29tL3BhZ2UvcmVsYXRpdmUtc2l6ZWQtZG9jdW1lbnQt
c2Nyb2xsYmFycy5zdmcKIHN2Zy96b29tL3BhZ2Uvem9vbS16b29tLWNvb3Jkcy54aHRtbAogCi0j
IEVGTCdzIEV2ZW50U2VuZGVyIG5lZWRzIHRvIGVtaXQgZG91YmxlIGNsaWNrcworIyBFRkwncyBF
dmVudFNlbmRlciBuZWVkcyB0byBlbWl0IGRvdWJsZSBjbGlja3MgKGUuZy4gdG8gc2VsZWN0IHRl
eHQpCitlZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay1pbmxpbmUtZmlyc3QtbGFzdC1jb250
ZW50ZWRpdGFibGUuaHRtbAogZmFzdC9ldmVudHMvZGJsY2xpY2stYWRkRXZlbnRMaXN0ZW5lci5o
dG1sCiBmYXN0L2Zvcm1zL3Bhc3N3b3JkLWRvdWJsZWNsaWNrLXNlbGVjdGlvbi5odG1sCiAKQEAg
LTUxNSwxMyArNTE2LDYgQEAgZmFzdC9ldmVudHMvYmx1ci1mb2N1cy13aW5kb3ctc2hvdWxkLWJs
dXItZm9jdXMtZWxlbWVudC5odG1sCiBmYXN0L2V2ZW50cy9zaG93LW1vZGFsLWRpYWxvZy1vbmJs
dXItb25mb2N1cy5odG1sCiBwbHVnaW5zL25ldHNjYXBlLXBsdWdpbi1zZXR3aW5kb3ctc2l6ZS0y
Lmh0bWwKIAotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkCi1lZGl0aW5nL2RlbGV0aW5nL3NtYXJ0LWVkaXRp
bmctZGlzYWJsZWQuaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRlLWNy
LXNwYW4uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFz
aC5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFz
aC5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKLQog
IyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0SmF2YVNj
cmlwdENhbkFjY2Vzc0NsaXBib2FyZAogZWRpdGluZy9leGVjQ29tbWFuZC9jbGlwYm9hcmQtYWNj
ZXNzLmh0bWwKIApAQCAtNTQ3LDEzICs1NDEsNiBAQCBodHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1s
b2Fkcy13aXRoLWltYWdlcy1kaXNhYmxlZC5odG1sCiAjIEVGTCdzIExheW91dFRlc3RDb250cm9s
bGVyIGRvZXMgbm90IGltcGxlbWVudCBzZXRKYXZhU2NyaXB0UHJvZmlsaW5nRW5hYmxlZAogZmFz
dC9wcm9maWxlcgogCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IGltcGxl
bWVudCBzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkCi1lZGl0aW5nL3NlbGVjdGlv
bi9kb3VibGVjbGljay1iZXNpZGUtY3Itc3Bhbi5odG1sCi1lZGl0aW5nL3NlbGVjdGlvbi9kb3Vi
bGVjbGljay1pbmxpbmUtZmlyc3QtbGFzdC1jb250ZW50ZWRpdGFibGUuaHRtbAotZWRpdGluZy9z
ZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1jcmFzaC5odG1sCi1lZGl0aW5nL3NlbGVj
dGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLWltZy1jcmFzaC5odG1sCi1lZGl0aW5nL3NlbGVj
dGlvbi9kb3VibGVjbGljay13aGl0ZXNwYWNlLmh0bWwKLQogIyBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0UG9wdXBCbG9ja2luZ0VuYWJsZWQKIGZhc3Qv
ZXZlbnRzL29wZW4td2luZG93LWZyb20tYW5vdGhlci1mcmFtZS5odG1sCiBmYXN0L2V2ZW50cy9w
b3B1cC1hbGxvd2VkLWZyb20tZ2VzdHVyZS1pbml0aWF0ZWQtZXZlbnQuaHRtbApAQCAtODM0LDcg
KzgyMSw3IEBAIGZhc3QvZXZlbnRzL2JhY2tzcGFjZS1uYXZpZ2F0ZXMtYmFjay5odG1sCiBmYXN0
L2V2ZW50cy9zaG93LW1vZGFsLWRpYWxvZy1vbmJsdXItb25mb2N1cy5odG1sCiBmYXN0L2hhcm5l
c3Mvc2hvdy1tb2RhbC1kaWFsb2cuaHRtbAogCi0jIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVy
IGRvZXMgbm90IGltcGxlbWVudCBoYXNTcGVsbGluZ01hcmtlcgorIyBNaXNzaW5nIFRleHRDaGVj
a2VyQ2xpZW50IGltcGxlbWVudGF0aW9uIChFZmwncyBwb3J0IGRvZXMgbm90IHN1cHBvcnQgc3Bl
bGwgY2hlY2tpbmcsIEd0ayBwb3J0IHVzZXMgRW5jaGFudCBsaWJyYXJ5IGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MTc4NykKIGVkaXRpbmcvc3BlbGxpbmcvZGVzaWdu
LW1vZGUtc3BlbGxjaGVjay1vZmYuaHRtbAogZWRpdGluZy9zcGVsbGluZy9zcGVsbGNoZWNrLWF0
dHJpYnV0ZS5odG1sCiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsY2hlY2stcGFzdGUuaHRtbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9lZmwv
Q2hhbmdlTG9nCmluZGV4IDI1MTI5MzQuLjk5MWJlZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxMi0wMy0wNyAgR3J6ZWdvcnogQ3phamtvd3NraSAgPGcuY3phamtvd3Nr
aUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtEUlRdIEltcGxlbWVudCBMYXlvdXRUZXN0
Q29udHJvbGxlcidzIG1ldGhvZHMgcmVsYXRlZCB3aXRoIGVkaXRpbmcuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDEzNgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgRHVtcFJlbmRlclRy
ZWVTdXBwb3J0RWZsJ3MgYW5kIEVkaXRvckNsaWVudEVmbCdzIG1ldGhvZHMgcmVsYXRlZCB3aXRo
IGVkaXRpbmcuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBv
cnRFZmwuY3BwOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZWxlY3Rpb25I
YXNTcGVsbGluZ01hcmtlcik6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKER1bXBSZW5kZXJUcmVl
U3VwcG9ydEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogTmV3IGZ1bmN0aW9uLgor
ICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRl
c3BhY2VFbmFibGVkKTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1
bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0VkaXRv
ckNsaWVudEVmbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OnNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKFdlYkNvcmUp
OgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZsOjpzbWFydEluc2VydERlbGV0ZUVu
YWJsZWQpOiBBZGQgaW1wbGVtZW50YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGll
bnRFZmw6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQpOiBOZXcgZnVuY3Rpb24u
CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OmlzU2VsZWN0VHJhaWxpbmdXaGl0
ZXNwYWNlRW5hYmxlZCk6IEFkZCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkVk
aXRvckNsaWVudEVmbDo6RWRpdG9yQ2xpZW50RWZsKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9FZGl0b3JDbGllbnRFZmwuaDoKKyAgICAgICAgKEVkaXRvckNsaWVudEVmbCk6CisKIDIwMTIt
MDMtMDIgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CiAK
ICAgICAgICAgW0VGTF0gRW5hYmxpbmcgJ0luc3BlY3QgRWxlbWVudCcgaW4gRXdrX0NvbnRleHRf
TWVudV9BY3Rpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9y
dC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29y
ZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcAppbmRleCBmZDNkNmI1Li45NGMy
YTcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVu
ZGVyVHJlZVN1cHBvcnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBw
b3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKIAogI2lu
Y2x1ZGUgPEFuaW1hdGlvbkNvbnRyb2xsZXIuaD4KICNpbmNsdWRlIDxEb2N1bWVudExvYWRlci5o
PgorI2luY2x1ZGUgPEVkaXRvckNsaWVudEVmbC5oPgogI2luY2x1ZGUgPEVpbmEuaD4KICNpbmNs
dWRlIDxFdmFzLmg+CiAjaW5jbHVkZSA8RmluZE9wdGlvbnMuaD4KQEAgLTI0Nyw2ICsyNDgsMTUg
QEAgV2ViQ29yZTo6SW50UmVjdCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNlbGVjdGlvblJl
Y3RhbmdsZShjb25zdCBFdmFzX09iamVjdCoKICAgICByZXR1cm4gZW5jbG9zaW5nSW50UmVjdChm
cmFtZS0+c2VsZWN0aW9uKCktPmJvdW5kcygpKTsKIH0KIAorYm9vbCBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRFZmw6OnNlbGVjdGlvbkhhc1NwZWxsaW5nTWFya2VyKGNvbnN0IEV2YXNfT2JqZWN0KiBl
d2tGcmFtZSwgaW50IGZyb20sIGludCBsZW5ndGgpCit7CisgICAgV2ViQ29yZTo6RnJhbWUqIGZy
YW1lID0gRVdLUHJpdmF0ZTo6Y29yZUZyYW1lKGV3a0ZyYW1lKTsKKyAgICBpZiAoIWZyYW1lKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gZnJhbWUtPmVkaXRvcigpLT5zZWxl
Y3Rpb25TdGFydEhhc01hcmtlckZvcihXZWJDb3JlOjpEb2N1bWVudE1hcmtlcjo6U3BlbGxpbmcs
IGZyb20sIGxlbmd0aCk7Cit9CisKIC8vIENvbXBhcmUgd2l0aCAiV2ViS2l0L1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL21hYy9GcmFtZUxvYWREZWxlZ2F0ZS5tbQogU3RyaW5nIER1bXBSZW5kZXJUcmVl
U3VwcG9ydEVmbDo6c3VpdGFibGVEUlRGcmFtZU5hbWUoY29uc3QgRXZhc19PYmplY3QqIGV3a0Zy
YW1lKQogewpAQCAtMzIxLDYgKzMzMSwzMiBAQCBib29sIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVm
bDo6ZmluZFN0cmluZyhjb25zdCBFdmFzX09iamVjdCogZXdrVmlldywgY29uc3QgY2hhcgogICAg
IHJldHVybiBwYWdlLT5maW5kU3RyaW5nKFN0cmluZzo6ZnJvbVVURjgodGV4dCksIG9wdGlvbnMp
OwogfQogCit2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGVuYWJsZWQpCit7CisgICAgV2Vi
Q29yZTo6UGFnZSogcGFnZSA9IEVXS1ByaXZhdGU6OmNvcmVQYWdlKGV3a1ZpZXcpOworICAgIGlm
ICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZs
KiBlZGl0b3JDbGllbnQgPSBzdGF0aWNfY2FzdDxXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmwqPihw
YWdlLT5lZGl0b3JDbGllbnQoKSk7CisgICAgaWYgKCFlZGl0b3JDbGllbnQpCisgICAgICAgIHJl
dHVybjsKKworICAgIGVkaXRvckNsaWVudC0+c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVu
YWJsZWQpOworfQorCit2b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2VsZWN0VHJh
aWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChFdmFzX09iamVjdCogZXdrVmlldywgYm9vbCBlbmFibGVk
KQoreworICAgIFdlYkNvcmU6OlBhZ2UqIHBhZ2UgPSBFV0tQcml2YXRlOjpjb3JlUGFnZShld2tW
aWV3KTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIFdlYkNvcmU6OkVk
aXRvckNsaWVudEVmbCogZWRpdG9yQ2xpZW50ID0gc3RhdGljX2Nhc3Q8V2ViQ29yZTo6RWRpdG9y
Q2xpZW50RWZsKj4ocGFnZS0+ZWRpdG9yQ2xpZW50KCkpOworICAgIGlmICghZWRpdG9yQ2xpZW50
KQorICAgICAgICByZXR1cm47CisKKyAgICBlZGl0b3JDbGllbnQtPnNldFNlbGVjdFRyYWlsaW5n
V2hpdGVzcGFjZUVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBw
b3J0RWZsOjpnYXJiYWdlQ29sbGVjdG9yQ29sbGVjdCgpCiB7CiAgICAgV2ViQ29yZTo6Z2NDb250
cm9sbGVyKCkuZ2FyYmFnZUNvbGxlY3ROb3coKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
ZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oIGIvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKaW5kZXgg
OTUwYTc4ZC4uZDVlYTdlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1
cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKQEAgLTYwLDEyICs2MCwx
NSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFN0cmluZyByZXNwb25zZU1pbWVUeXBlKGNvbnN0IEV2
YXNfT2JqZWN0KiBld2tGcmFtZSk7CiAgICAgc3RhdGljIHZvaWQgcmVzdW1lQW5pbWF0aW9ucyhF
dmFzX09iamVjdCogZXdrRnJhbWUpOwogICAgIHN0YXRpYyBXZWJDb3JlOjpJbnRSZWN0IHNlbGVj
dGlvblJlY3RhbmdsZShjb25zdCBFdmFzX09iamVjdCogZXdrRnJhbWUpOworICAgIHN0YXRpYyBi
b29sIHNlbGVjdGlvbkhhc1NwZWxsaW5nTWFya2VyKGNvbnN0IEV2YXNfT2JqZWN0KiBld2tGcmFt
ZSwgaW50IGZyb20sIGludCBsZW5ndGgpOwogICAgIHN0YXRpYyBTdHJpbmcgc3VpdGFibGVEUlRG
cmFtZU5hbWUoY29uc3QgRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKICAgICBzdGF0aWMgdm9pZCBz
dXNwZW5kQW5pbWF0aW9ucyhFdmFzX09iamVjdCogZXdrRnJhbWUpOwogICAgIHN0YXRpYyB2b2lk
IHNldFZhbHVlRm9yVXNlcihKU0NvbnRleHRSZWYsIEpTVmFsdWVSZWYgbm9kZU9iamVjdCwgSlNT
dHJpbmdSZWYgdmFsdWUpOwogICAgIHN0YXRpYyB2b2lkIHNldEF1dG9maWxsZWQoSlNDb250ZXh0
UmVmLCBKU1ZhbHVlUmVmIG5vZGVPYmplY3QsIGJvb2wgYXV0b2ZpbGxlZCk7CiAKICAgICBzdGF0
aWMgYm9vbCBmaW5kU3RyaW5nKGNvbnN0IEV2YXNfT2JqZWN0KiBld2tWaWV3LCBjb25zdCBjaGFy
KiB0ZXh0LCBXZWJDb3JlOjpGaW5kT3B0aW9ucyk7CisgICAgc3RhdGljIHZvaWQgc2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGVuYWJsZWQpOwor
ICAgIHN0YXRpYyB2b2lkIHNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoRXZhc19P
YmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAKICAgICBzdGF0aWMgdm9pZCBnYXJiYWdl
Q29sbGVjdG9yQ29sbGVjdCgpOwogICAgIHN0YXRpYyB2b2lkIGdhcmJhZ2VDb2xsZWN0b3JDb2xs
ZWN0T25BbHRlcm5hdGVUaHJlYWQoYm9vbCB3YWl0VW50aWxEb25lKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuY3BwCmluZGV4IDgy
MjQxNTUuLjg3ZWEwMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBw
b3J0L0VkaXRvckNsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1
cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmNwcApAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIkVkaXRvckNsaWVudEVmbC5oIgogCisjaW5jbHVkZSAiRHVtcFJl
bmRlclRyZWVTdXBwb3J0RWZsLmgiCiAjaW5jbHVkZSAiRWRpdG9yLmgiCiAjaW5jbHVkZSAiRXZl
bnROYW1lcy5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpAQCAtMjI5LDE2ICsyMzAs
MjQgQEAgdm9pZCBFZGl0b3JDbGllbnRFZmw6OnBhZ2VEZXN0cm95ZWQoKQogICAgIGRlbGV0ZSB0
aGlzOwogfQogCit2b2lkIEVkaXRvckNsaWVudEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGVu
YWJsZWQ7Cit9CisKIGJvb2wgRWRpdG9yQ2xpZW50RWZsOjpzbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQoKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJl
dHVybiBtX3NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZDsKK30KKwordm9pZCBFZGl0b3JDbGllbnRF
Zmw6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYm9vbCBlbmFibGVkKQorewor
ICAgIG1fc2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCA9IGVuYWJsZWQ7CiB9CiAKIGJv
b2wgRWRpdG9yQ2xpZW50RWZsOjppc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKQog
ewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBt
X3NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQ7CiB9CiAKIHZvaWQgRWRpdG9yQ2xpZW50
RWZsOjp0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpCkBAIC00MzcsNiArNDQ2LDggQEAg
dm9pZCBFZGl0b3JDbGllbnRFZmw6OmhhbmRsZUlucHV0TWV0aG9kS2V5ZG93bihLZXlib2FyZEV2
ZW50KiBldmVudCkKIEVkaXRvckNsaWVudEVmbDo6RWRpdG9yQ2xpZW50RWZsKEV2YXNfT2JqZWN0
KiB2aWV3KQogICAgIDogbV9pc0luUmVkbyhmYWxzZSkKICAgICAsIG1fdmlldyh2aWV3KQorICAg
ICwgbV9zZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGZhbHNlKQorICAgICwgbV9zbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVu
dEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZs
LmgKaW5kZXggMmI1MmU5ZC4uMGM0YjIzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmgKQEAgLTYwLDcgKzYwLDkgQEAgcHVibGlj
OgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGREZWxldGVSYW5nZShSYW5nZSopOwogICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxFbGVtZW50Kik7CiAgICAgdmly
dHVhbCBib29sIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCgpOworICAgIHZvaWQgc2V0U21hcnRJ
bnNlcnREZWxldGVFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgYm9vbCBpc1NlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQoKTsKKyAgICB2b2lkIHNldFNlbGVjdFRyYWlsaW5nV2hpdGVz
cGFjZUVuYWJsZWQoYm9vbCk7CiAgICAgdmlydHVhbCBib29sIGlzQ29udGludW91c1NwZWxsQ2hl
Y2tpbmdFbmFibGVkKCk7CiAgICAgdmlydHVhbCB2b2lkIHRvZ2dsZUNvbnRpbnVvdXNTcGVsbENo
ZWNraW5nKCk7CiAgICAgdmlydHVhbCBib29sIGlzR3JhbW1hckNoZWNraW5nRW5hYmxlZCgpOwpA
QCAtMTI1LDYgKzEyNyw4IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBFdmFzX09iamVjdCAq
bV92aWV3OworICAgIGJvb2wgbV9zZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkOworICAg
IGJvb2wgbV9zbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CiB9OwogfQogCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMjY1NDg3Zi4uOTMzNDVlZCAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE4IEBACisyMDEyLTAzLTA3ICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFqa293c2tp
QHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdW0RSVF0gSW1wbGVtZW50IExheW91dFRlc3RD
b250cm9sbGVyJ3MgbWV0aG9kcyByZWxhdGVkIHdpdGggZWRpdGluZy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMTM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50cyBFRkwncyBMYXlvdXRU
ZXN0Q29udHJvbGxlciBtZXRob2RzIGUuaS4gc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkLAor
ICAgICAgICBzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkLCBoYXNTcGVsbGluZ01h
cmtlci4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxl
ckVmbC5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkKToKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzZXRTZWxlY3RU
cmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKToKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVy
OjpoYXNTcGVsbGluZ01hcmtlcik6CisKIDIwMTItMDMtMDYgIFRvciBBcm5lIFZlc3Riw7ggIDx0
b3IuYXJuZS52ZXN0Ym9Abm9raWEuY29tPgogCiAgICAgICAgIFtRdF0gUmV2ZXJ0IHIxMDk5MDAs
IGl0IHdhcyBjb21wbGV0bHkgYnVzdGVkCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
ZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAppbmRleCBkYTBjN2NhLi5hYWQ5NWZmIDEw
MDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJF
ZmwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxl
ckVmbC5jcHAKQEAgLTI3MSw5ICsyNzEsOSBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpz
ZXRXaW5kb3dJc0tleShib29sKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgTGF5
b3V0VGVzdENvbnRyb2xsZXI6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sKQordm9p
ZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wg
ZmxhZykKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIER1bXBSZW5kZXJUcmVlU3VwcG9y
dEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJyb3dzZXItPm1haW5WaWV3KCksIGZs
YWcpOwogfQogCiBzdGF0aWMgRWluYV9Cb29sIHdhaXRUb0R1bXBXYXRjaGRvZ0ZpcmVkKHZvaWQq
KQpAQCAtNDMxLDkgKzQzMSw5IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldEphdmFT
Y3JpcHRQcm9maWxpbmdFbmFibGVkKGJvb2wpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAot
dm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5h
YmxlZChib29sKQordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U2VsZWN0VHJhaWxpbmdX
aGl0ZXNwYWNlRW5hYmxlZChib29sIGZsYWcpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAg
ICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVu
YWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgZmxhZyk7CiB9CiAKIHZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnNldFBvcHVwQmxvY2tpbmdFbmFibGVkKGJvb2wpCkBAIC03MjQsMTAgKzcyNCw5
IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmFib3J0TW9kYWwoKQogICAgIG5vdEltcGxl
bWVudGVkKCk7CiB9CiAKLWJvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6Omhhc1NwZWxsaW5nTWFy
a2VyKGludCwgaW50KQorYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6aGFzU3BlbGxpbmdNYXJr
ZXIoaW50IGZyb20sIGludCBsZW5ndGgpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICBy
ZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2VsZWN0
aW9uSGFzU3BlbGxpbmdNYXJrZXIoYnJvd3Nlci0+bWFpbkZyYW1lKCksIGZyb20sIGxlbmd0aCk7
CiB9CiAKIGJvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6Omhhc0dyYW1tYXJNYXJrZXIoaW50LCBp
bnQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130568</attachid>
            <date>2012-03-07 01:37:02 -0800</date>
            <delta_ts>2012-03-22 07:16:42 -0700</delta_ts>
            <desc>rebased patch to HEAD</desc>
            <filename>drt_editing_implementation.patch</filename>
            <type>text/plain</type>
            <size>13137</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxMmIwZDU0Li5kNTBjNTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDMt
MDcgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAg
ICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2Rz
IHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBFbmFibGVzIHRlc3RzIGNvbm5lY3RlZCB3aXRoIHNldFNlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQsIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAgICAg
ICAgVGVzdHMgcmVsYXRlZCB3aXRoIHNwZWxsaW5nIGNhbiBub3QgYmUgZW5hYmxlZCBpbiB0aGlz
IHBhdGNoIGJlY2F1c2UgV2ViS2l0LUVmbCBkb2Vzbid0CisgICAgICAgIHN1cHBvcnQgc3BlbGwg
Y2hlY2tpbmcgKG1pc3NpbmcgVGV4dENoZWNrZXJDbGllbnQgaW1wbGVtZW50YXRpb24pLgorCisg
ICAgICAgICogcGxhdGZvcm0vZWZsL1NraXBwZWQ6CisKIDIwMTItMDMtMDcgIEthbmdpbCBIYW4g
IDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtEUlRdIFJlbW92ZSBQbGFpblRl
eHRDb250cm9sbGVyIGltcGxlbWVudGF0aW9ucy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5k
ZXggOTFlMmFmZC4uZTFhYmYxMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZs
L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKQEAgLTYxLDcg
KzYxLDggQEAgc3ZnL1czQy1TVkctMS4xLVNFCiBzdmcvem9vbS9wYWdlL3JlbGF0aXZlLXNpemVk
LWRvY3VtZW50LXNjcm9sbGJhcnMuc3ZnCiBzdmcvem9vbS9wYWdlL3pvb20tem9vbS1jb29yZHMu
eGh0bWwKIAotIyBFRkwncyBFdmVudFNlbmRlciBuZWVkcyB0byBlbWl0IGRvdWJsZSBjbGlja3MK
KyMgRUZMJ3MgRXZlbnRTZW5kZXIgbmVlZHMgdG8gZW1pdCBkb3VibGUgY2xpY2tzIChlLmcuIHRv
IHNlbGVjdCB0ZXh0KQorZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2staW5saW5lLWZpcnN0
LWxhc3QtY29udGVudGVkaXRhYmxlLmh0bWwKIGZhc3QvZXZlbnRzL2RibGNsaWNrLWFkZEV2ZW50
TGlzdGVuZXIuaHRtbAogZmFzdC9mb3Jtcy9wYXNzd29yZC1kb3VibGVjbGljay1zZWxlY3Rpb24u
aHRtbAogCkBAIC01MTUsMTMgKzUxNiw2IEBAIGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93
LXNob3VsZC1ibHVyLWZvY3VzLWVsZW1lbnQuaHRtbAogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1k
aWFsb2ctb25ibHVyLW9uZm9jdXMuaHRtbAogcGx1Z2lucy9uZXRzY2FwZS1wbHVnaW4tc2V0d2lu
ZG93LXNpemUtMi5odG1sCiAKLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3Qg
aW1wbGVtZW50IHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAotZWRpdGluZy9kZWxldGluZy9z
bWFydC1lZGl0aW5nLWRpc2FibGVkLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNr
LWJlc2lkZS1jci1zcGFuLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRl
c3BhY2UtY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFj
ZS1pbWctY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFj
ZS5odG1sCi0KICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50
IHNldEphdmFTY3JpcHRDYW5BY2Nlc3NDbGlwYm9hcmQKIGVkaXRpbmcvZXhlY0NvbW1hbmQvY2xp
cGJvYXJkLWFjY2Vzcy5odG1sCiAKQEAgLTU0NywxMyArNTQxLDYgQEAgaHR0cC90ZXN0cy9taXNj
L2Zhdmljb24tbG9hZHMtd2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbAogIyBFRkwncyBMYXlvdXRU
ZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0SmF2YVNjcmlwdFByb2ZpbGluZ0Vu
YWJsZWQKIGZhc3QvcHJvZmlsZXIKIAotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2Vz
IG5vdCBpbXBsZW1lbnQgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZAotZWRpdGlu
Zy9zZWxlY3Rpb24vZG91YmxlY2xpY2stYmVzaWRlLWNyLXNwYW4uaHRtbAotZWRpdGluZy9zZWxl
Y3Rpb24vZG91YmxlY2xpY2staW5saW5lLWZpcnN0LWxhc3QtY29udGVudGVkaXRhYmxlLmh0bWwK
LWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbAotZWRp
dGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAotZWRp
dGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCi0KICMgRUZMJ3MgTGF5
b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IGVsZW1lbnREb2VzQXV0b0NvbXBs
ZXRlRm9yRWxlbWVudFdpdGhJZAogc2VjdXJpdHkvc2V0LWZvcm0tYXV0b2NvbXBsZXRlLWF0dHJp
YnV0ZS5odG1sCiAKQEAgLTgxNSw3ICs4MDIsNyBAQCBmYXN0L2V2ZW50cy9iYWNrc3BhY2UtbmF2
aWdhdGVzLWJhY2suaHRtbAogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVyLW9u
Zm9jdXMuaHRtbAogZmFzdC9oYXJuZXNzL3Nob3ctbW9kYWwtZGlhbG9nLmh0bWwKIAotIyBFRkwn
cyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgaGFzU3BlbGxpbmdNYXJr
ZXIKKyMgTWlzc2luZyBUZXh0Q2hlY2tlckNsaWVudCBpbXBsZW1lbnRhdGlvbiAoRWZsJ3MgcG9y
dCBkb2VzIG5vdCBzdXBwb3J0IHNwZWxsIGNoZWNraW5nLCBHdGsgcG9ydCB1c2VzIEVuY2hhbnQg
bGlicmFyeSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjE3ODcpCiBl
ZGl0aW5nL3NwZWxsaW5nL2Rlc2lnbi1tb2RlLXNwZWxsY2hlY2stb2ZmLmh0bWwKIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxjaGVjay1hdHRyaWJ1dGUuaHRtbAogZWRpdGluZy9zcGVsbGluZy9zcGVs
bGNoZWNrLXBhc3RlLmh0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCAyNTEyOTM0Li45OTFiZWZkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTItMDMtMDcgIEdyemVnb3J6IEN6
YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF1bRFJU
XSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2RzIHJlbGF0ZWQgd2l0aCBl
ZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
bXBsZW1lbnRzIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbCdzIGFuZCBFZGl0b3JDbGllbnRFZmwn
cyBtZXRob2RzIHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVl
U3VwcG9ydEVmbDo6c2VsZWN0aW9uSGFzU3BlbGxpbmdNYXJrZXIpOiBOZXcgZnVuY3Rpb24uCisg
ICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6
c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuaDoKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RWRpdG9yQ2xpZW50RWZsOjpzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBOZXcgZnVuY3Rp
b24uCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudEVm
bDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogQWRkIGltcGxlbWVudGF0aW9uLgorICAgICAg
ICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VF
bmFibGVkKTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZs
Ojppc1NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQpOiBBZGQgaW1wbGVtZW50YXRpb24u
CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OkVkaXRvckNsaWVudEVmbCk6Cisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmg6CisgICAgICAgIChFZGl0
b3JDbGllbnRFZmwpOgorCiAyMDEyLTAzLTAyICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFq
a293c2tpQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIEVuYWJsaW5nICdJbnNwZWN0IEVs
ZW1lbnQnIGluIEV3a19Db250ZXh0X01lbnVfQWN0aW9uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5j
cHAKaW5kZXggZmQzZDZiNS4uOTRjMmE3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwv
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwCkBA
IC0yNiw2ICsyNiw3IEBACiAKICNpbmNsdWRlIDxBbmltYXRpb25Db250cm9sbGVyLmg+CiAjaW5j
bHVkZSA8RG9jdW1lbnRMb2FkZXIuaD4KKyNpbmNsdWRlIDxFZGl0b3JDbGllbnRFZmwuaD4KICNp
bmNsdWRlIDxFaW5hLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgogI2luY2x1ZGUgPEZpbmRPcHRpb25z
Lmg+CkBAIC0yNDcsNiArMjQ4LDE1IEBAIFdlYkNvcmU6OkludFJlY3QgRHVtcFJlbmRlclRyZWVT
dXBwb3J0RWZsOjpzZWxlY3Rpb25SZWN0YW5nbGUoY29uc3QgRXZhc19PYmplY3QqCiAgICAgcmV0
dXJuIGVuY2xvc2luZ0ludFJlY3QoZnJhbWUtPnNlbGVjdGlvbigpLT5ib3VuZHMoKSk7CiB9CiAK
K2Jvb2wgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpzZWxlY3Rpb25IYXNTcGVsbGluZ01hcmtl
cihjb25zdCBFdmFzX09iamVjdCogZXdrRnJhbWUsIGludCBmcm9tLCBpbnQgbGVuZ3RoKQorewor
ICAgIFdlYkNvcmU6OkZyYW1lKiBmcmFtZSA9IEVXS1ByaXZhdGU6OmNvcmVGcmFtZShld2tGcmFt
ZSk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJu
IGZyYW1lLT5lZGl0b3IoKS0+c2VsZWN0aW9uU3RhcnRIYXNNYXJrZXJGb3IoV2ViQ29yZTo6RG9j
dW1lbnRNYXJrZXI6OlNwZWxsaW5nLCBmcm9tLCBsZW5ndGgpOworfQorCiAvLyBDb21wYXJlIHdp
dGggIldlYktpdC9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0K
IFN0cmluZyBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnN1aXRhYmxlRFJURnJhbWVOYW1lKGNv
bnN0IEV2YXNfT2JqZWN0KiBld2tGcmFtZSkKIHsKQEAgLTMyMSw2ICszMzEsMzIgQEAgYm9vbCBE
dW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OmZpbmRTdHJpbmcoY29uc3QgRXZhc19PYmplY3QqIGV3
a1ZpZXcsIGNvbnN0IGNoYXIKICAgICByZXR1cm4gcGFnZS0+ZmluZFN0cmluZyhTdHJpbmc6OmZy
b21VVEY4KHRleHQpLCBvcHRpb25zKTsKIH0KIAordm9pZCBEdW1wUmVuZGVyVHJlZVN1cHBvcnRF
Zmw6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChFdmFzX09iamVjdCogZXdrVmlldywgYm9v
bCBlbmFibGVkKQoreworICAgIFdlYkNvcmU6OlBhZ2UqIHBhZ2UgPSBFV0tQcml2YXRlOjpjb3Jl
UGFnZShld2tWaWV3KTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIFdl
YkNvcmU6OkVkaXRvckNsaWVudEVmbCogZWRpdG9yQ2xpZW50ID0gc3RhdGljX2Nhc3Q8V2ViQ29y
ZTo6RWRpdG9yQ2xpZW50RWZsKj4ocGFnZS0+ZWRpdG9yQ2xpZW50KCkpOworICAgIGlmICghZWRp
dG9yQ2xpZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBlZGl0b3JDbGllbnQtPnNldFNtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZChlbmFibGVkKTsKK30KKwordm9pZCBEdW1wUmVuZGVyVHJlZVN1
cHBvcnRFZmw6OnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoRXZhc19PYmplY3Qq
IGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCkKK3sKKyAgICBXZWJDb3JlOjpQYWdlKiBwYWdlID0gRVdL
UHJpdmF0ZTo6Y29yZVBhZ2UoZXdrVmlldyk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm47CisKKyAgICBXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmwqIGVkaXRvckNsaWVudCA9IHN0YXRp
Y19jYXN0PFdlYkNvcmU6OkVkaXRvckNsaWVudEVmbCo+KHBhZ2UtPmVkaXRvckNsaWVudCgpKTsK
KyAgICBpZiAoIWVkaXRvckNsaWVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZWRpdG9yQ2xp
ZW50LT5zZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGVuYWJsZWQpOworfQorCiB2
b2lkIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6Z2FyYmFnZUNvbGxlY3RvckNvbGxlY3QoKQog
ewogICAgIFdlYkNvcmU6OmdjQ29udHJvbGxlcigpLmdhcmJhZ2VDb2xsZWN0Tm93KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1
cHBvcnRFZmwuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJU
cmVlU3VwcG9ydEVmbC5oCmluZGV4IDk1MGE3OGQuLmQ1ZWE3ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9y
dEVmbC5oCkBAIC02MCwxMiArNjAsMTUgQEAgcHVibGljOgogICAgIHN0YXRpYyBTdHJpbmcgcmVz
cG9uc2VNaW1lVHlwZShjb25zdCBFdmFzX09iamVjdCogZXdrRnJhbWUpOwogICAgIHN0YXRpYyB2
b2lkIHJlc3VtZUFuaW1hdGlvbnMoRXZhc19PYmplY3QqIGV3a0ZyYW1lKTsKICAgICBzdGF0aWMg
V2ViQ29yZTo6SW50UmVjdCBzZWxlY3Rpb25SZWN0YW5nbGUoY29uc3QgRXZhc19PYmplY3QqIGV3
a0ZyYW1lKTsKKyAgICBzdGF0aWMgYm9vbCBzZWxlY3Rpb25IYXNTcGVsbGluZ01hcmtlcihjb25z
dCBFdmFzX09iamVjdCogZXdrRnJhbWUsIGludCBmcm9tLCBpbnQgbGVuZ3RoKTsKICAgICBzdGF0
aWMgU3RyaW5nIHN1aXRhYmxlRFJURnJhbWVOYW1lKGNvbnN0IEV2YXNfT2JqZWN0KiBld2tGcmFt
ZSk7CiAgICAgc3RhdGljIHZvaWQgc3VzcGVuZEFuaW1hdGlvbnMoRXZhc19PYmplY3QqIGV3a0Zy
YW1lKTsKICAgICBzdGF0aWMgdm9pZCBzZXRWYWx1ZUZvclVzZXIoSlNDb250ZXh0UmVmLCBKU1Zh
bHVlUmVmIG5vZGVPYmplY3QsIEpTU3RyaW5nUmVmIHZhbHVlKTsKICAgICBzdGF0aWMgdm9pZCBz
ZXRBdXRvZmlsbGVkKEpTQ29udGV4dFJlZiwgSlNWYWx1ZVJlZiBub2RlT2JqZWN0LCBib29sIGF1
dG9maWxsZWQpOwogCiAgICAgc3RhdGljIGJvb2wgZmluZFN0cmluZyhjb25zdCBFdmFzX09iamVj
dCogZXdrVmlldywgY29uc3QgY2hhciogdGV4dCwgV2ViQ29yZTo6RmluZE9wdGlvbnMpOworICAg
IHN0YXRpYyB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChFdmFzX09iamVjdCogZXdr
VmlldywgYm9vbCBlbmFibGVkKTsKKyAgICBzdGF0aWMgdm9pZCBzZXRTZWxlY3RUcmFpbGluZ1do
aXRlc3BhY2VFbmFibGVkKEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGVuYWJsZWQpOwogCiAg
ICAgc3RhdGljIHZvaWQgZ2FyYmFnZUNvbGxlY3RvckNvbGxlY3QoKTsKICAgICBzdGF0aWMgdm9p
ZCBnYXJiYWdlQ29sbGVjdG9yQ29sbGVjdE9uQWx0ZXJuYXRlVGhyZWFkKGJvb2wgd2FpdFVudGls
RG9uZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0
b3JDbGllbnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRWRpdG9y
Q2xpZW50RWZsLmNwcAppbmRleCA4MjI0MTU1Li41ZTQ2ZDZmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5jcHAKQEAgLTIzLDYg
KzIzLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJFZGl0b3JDbGllbnRFZmwu
aCIKIAorI2luY2x1ZGUgIkR1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5oIgogI2luY2x1ZGUgIkVk
aXRvci5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJGb2N1c0NvbnRyb2xs
ZXIuaCIKQEAgLTIyOSwxNiArMjMwLDI0IEBAIHZvaWQgRWRpdG9yQ2xpZW50RWZsOjpwYWdlRGVz
dHJveWVkKCkKICAgICBkZWxldGUgdGhpczsKIH0KIAordm9pZCBFZGl0b3JDbGllbnRFZmw6OnNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9zbWFydElu
c2VydERlbGV0ZUVuYWJsZWQgPSBlbmFibGVkOworfQorCiBib29sIEVkaXRvckNsaWVudEVmbDo6
c21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAg
IHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gbV9zbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7Cit9
CisKK3ZvaWQgRWRpdG9yQ2xpZW50RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFi
bGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJs
ZWQgPSBlbmFibGVkOwogfQogCiBib29sIEVkaXRvckNsaWVudEVmbDo6aXNTZWxlY3RUcmFpbGlu
Z1doaXRlc3BhY2VFbmFibGVkKCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVy
biBmYWxzZTsKKyAgICByZXR1cm4gbV9zZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkOwog
fQogCiB2b2lkIEVkaXRvckNsaWVudEVmbDo6dG9nZ2xlQ29udGludW91c1NwZWxsQ2hlY2tpbmco
KQpAQCAtNDM3LDYgKzQ0Niw4IEBAIHZvaWQgRWRpdG9yQ2xpZW50RWZsOjpoYW5kbGVJbnB1dE1l
dGhvZEtleWRvd24oS2V5Ym9hcmRFdmVudCogZXZlbnQpCiBFZGl0b3JDbGllbnRFZmw6OkVkaXRv
ckNsaWVudEVmbChFdmFzX09iamVjdCogdmlldykKICAgICA6IG1faXNJblJlZG8oZmFsc2UpCiAg
ICAgLCBtX3ZpZXcodmlldykKKyAgICAsIG1fc2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxl
ZChmYWxzZSkKKyAgICAsIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkKGZhbHNlKQogewogICAg
IG5vdEltcGxlbWVudGVkKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJD
b3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVT
dXBwb3J0L0VkaXRvckNsaWVudEVmbC5oCmluZGV4IDJiNTJlOWQuLjQwN2UyNDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5oCkBA
IC02MCw3ICs2MCw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRGVsZXRlUmFu
Z2UoUmFuZ2UqKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkU2hvd0RlbGV0ZUludGVyZmFjZShI
VE1MRWxlbWVudCopOwogICAgIHZpcnR1YWwgYm9vbCBzbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
KTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZChib29sKTsKICAgICB2aXJ0
dWFsIGJvb2wgaXNTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKCk7CisgICAgdm9pZCBz
ZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgYm9v
bCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCgpOwogICAgIHZpcnR1YWwgdm9pZCB0
b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpOwogICAgIHZpcnR1YWwgYm9vbCBpc0dyYW1t
YXJDaGVja2luZ0VuYWJsZWQoKTsKQEAgLTEyNSw2ICsxMjcsOCBAQCBwdWJsaWM6CiAKIHByaXZh
dGU6CiAgICAgRXZhc19PYmplY3QgKm1fdmlldzsKKyAgICBib29sIG1fc2VsZWN0VHJhaWxpbmdX
aGl0ZXNwYWNlRW5hYmxlZDsKKyAgICBib29sIG1fc21hcnRJbnNlcnREZWxldGVFbmFibGVkOwog
fTsKIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IGEwMGIwZTkuLmE3NTUyZjIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wMy0wNyAgR3J6ZWdvcnogQ3ph
amtvd3NraSAgPGcuY3phamtvd3NraUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtEUlRd
IEltcGxlbWVudCBMYXlvdXRUZXN0Q29udHJvbGxlcidzIG1ldGhvZHMgcmVsYXRlZCB3aXRoIGVk
aXRpbmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04
MDEzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElt
cGxlbWVudHMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgbWV0aG9kcyBlLmkuIHNldFNtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZCwKKyAgICAgICAgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNl
RW5hYmxlZCwgaGFzU3BlbGxpbmdNYXJrZXIuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9l
ZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRy
b2xsZXI6OnNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCk6CisgICAgICAgIChMYXlvdXRUZXN0
Q29udHJvbGxlcjo6c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCk6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6aGFzU3BlbGxpbmdNYXJrZXIpOgorCiAyMDEyLTAzLTA3
ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRFJUXSBS
ZW1vdmUgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRhdGlvbnMuCmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNwcAppbmRleCBl
YjRhMjkzLi45ZDM3NTJjIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5
b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9M
YXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKQEAgLTI3MSw5ICsyNzEsOSBAQCB2b2lkIExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRXaW5kb3dJc0tleShib29sKQogICAgIG5vdEltcGxlbWVudGVk
KCk7CiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZChib29sKQordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U21hcnRJbnNlcnRE
ZWxldGVFbmFibGVkKGJvb2wgZmxhZykKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIER1
bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJyb3dz
ZXItPm1haW5WaWV3KCksIGZsYWcpOwogfQogCiBzdGF0aWMgRWluYV9Cb29sIHdhaXRUb0R1bXBX
YXRjaGRvZ0ZpcmVkKHZvaWQqKQpAQCAtNDMxLDkgKzQzMSw5IEBAIHZvaWQgTGF5b3V0VGVzdENv
bnRyb2xsZXI6OnNldEphdmFTY3JpcHRQcm9maWxpbmdFbmFibGVkKGJvb2wpCiAgICAgbm90SW1w
bGVtZW50ZWQoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U2VsZWN0VHJh
aWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29sKQordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29sIGZsYWcpCiB7Ci0gICAgbm90
SW1wbGVtZW50ZWQoKTsKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldFNlbGVjdFRy
YWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgZmxhZyk7CiB9CiAK
IHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFBvcHVwQmxvY2tpbmdFbmFibGVkKGJvb2wg
ZmxhZykKQEAgLTcyNCwxMCArNzI0LDkgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6YWJv
cnRNb2RhbCgpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotYm9vbCBMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6aGFzU3BlbGxpbmdNYXJrZXIoaW50LCBpbnQpCitib29sIExheW91dFRlc3RDb250
cm9sbGVyOjpoYXNTcGVsbGluZ01hcmtlcihpbnQgZnJvbSwgaW50IGxlbmd0aCkKIHsKLSAgICBu
b3RJbXBsZW1lbnRlZCgpOwotICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gRHVtcFJlbmRl
clRyZWVTdXBwb3J0RWZsOjpzZWxlY3Rpb25IYXNTcGVsbGluZ01hcmtlcihicm93c2VyLT5tYWlu
RnJhbWUoKSwgZnJvbSwgbGVuZ3RoKTsKIH0KIAogYm9vbCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6
aGFzR3JhbW1hck1hcmtlcihpbnQsIGludCkK
</data>
<flag name="review"
          id="133607"
          type_id="1"
          status="-"
          setter="rniwa"
    />
    <flag name="commit-queue"
          id="133882"
          type_id="3"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133254</attachid>
            <date>2012-03-22 07:16:42 -0700</date>
            <delta_ts>2012-03-23 00:25:42 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>drt_editing_implementation.patch</filename>
            <type>text/plain</type>
            <size>11472</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyMzkzZGM0Li44YjM5ZDY2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTItMDMt
MjIgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAg
ICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2Rz
IHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBFbmFibGVzIHRlc3RzIGNvbm5lY3RlZCB3aXRoIHNldFNlbGVjdFRyYWls
aW5nV2hpdGVzcGFjZUVuYWJsZWQgYW5kIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZC4KKyAg
ICAgICAgVGVzdHMgcmVsYXRlZCB3aXRoIHNwZWxsaW5nIGNhbiBub3QgYmUgZW5hYmxlZCBpbiB0
aGlzIHBhdGNoIGJlY2F1c2UgV2ViS2l0LUVmbCBkb2Vzbid0CisgICAgICAgIHN1cHBvcnQgc3Bl
bGwgY2hlY2tpbmcgKG1pc3NpbmcgVGV4dENoZWNrZXJDbGllbnQgaW1wbGVtZW50YXRpb24pLgor
CisgICAgICAgICogcGxhdGZvcm0vZWZsL1NraXBwZWQ6CisKIDIwMTItMDMtMjIgIEtlaXNoaSBI
YXR0b3JpICA8a2Vpc2hpQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBVbnJldmll
d2VkIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lw
cGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5kZXggNDljMzY0Mi4uNWNl
OGYzYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKQEAgLTYxLDcgKzYxLDggQEAgc3ZnL1cz
Qy1TVkctMS4xLVNFCiBzdmcvem9vbS9wYWdlL3JlbGF0aXZlLXNpemVkLWRvY3VtZW50LXNjcm9s
bGJhcnMuc3ZnCiBzdmcvem9vbS9wYWdlL3pvb20tem9vbS1jb29yZHMueGh0bWwKIAotIyBFRkwn
cyBFdmVudFNlbmRlciBuZWVkcyB0byBlbWl0IGRvdWJsZSBjbGlja3MKKyMgRUZMJ3MgRXZlbnRT
ZW5kZXIgbmVlZHMgdG8gZW1pdCBkb3VibGUgY2xpY2tzIChlLmcuIHRvIHNlbGVjdCB0ZXh0KQor
ZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2staW5saW5lLWZpcnN0LWxhc3QtY29udGVudGVk
aXRhYmxlLmh0bWwKIGZhc3QvZXZlbnRzL2RibGNsaWNrLWFkZEV2ZW50TGlzdGVuZXIuaHRtbAog
ZmFzdC9mb3Jtcy9wYXNzd29yZC1kb3VibGVjbGljay1zZWxlY3Rpb24uaHRtbAogCkBAIC00NDgs
MTMgKzQ0OSw2IEBAIGZhc3QvZXZlbnRzL2JsdXItZm9jdXMtd2luZG93LXNob3VsZC1ibHVyLWZv
Y3VzLWVsZW1lbnQuaHRtbAogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVyLW9u
Zm9jdXMuaHRtbAogcGx1Z2lucy9uZXRzY2FwZS1wbHVnaW4tc2V0d2luZG93LXNpemUtMi5odG1s
CiAKLSMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldFNt
YXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZAotZWRpdGluZy9kZWxldGluZy9zbWFydC1lZGl0aW5nLWRp
c2FibGVkLmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLWJlc2lkZS1jci1zcGFu
Lmh0bWwKLWVkaXRpbmcvc2VsZWN0aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRt
bAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRt
bAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCi0KICMgRUZM
J3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3QgaW1wbGVtZW50IHNldEphdmFTY3JpcHRD
YW5BY2Nlc3NDbGlwYm9hcmQKIGVkaXRpbmcvZXhlY0NvbW1hbmQvY2xpcGJvYXJkLWFjY2Vzcy5o
dG1sCiAKQEAgLTQ4MCwxMyArNDc0LDYgQEAgaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMt
d2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbAogIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBk
b2VzIG5vdCBpbXBsZW1lbnQgc2V0SmF2YVNjcmlwdFByb2ZpbGluZ0VuYWJsZWQKIGZhc3QvcHJv
ZmlsZXIKIAotIyBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQg
c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZAotZWRpdGluZy9zZWxlY3Rpb24vZG91
YmxlY2xpY2stYmVzaWRlLWNyLXNwYW4uaHRtbAotZWRpdGluZy9zZWxlY3Rpb24vZG91YmxlY2xp
Y2staW5saW5lLWZpcnN0LWxhc3QtY29udGVudGVkaXRhYmxlLmh0bWwKLWVkaXRpbmcvc2VsZWN0
aW9uL2RvdWJsZWNsaWNrLXdoaXRlc3BhY2UtY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24v
ZG91YmxlY2xpY2std2hpdGVzcGFjZS1pbWctY3Jhc2guaHRtbAotZWRpdGluZy9zZWxlY3Rpb24v
ZG91YmxlY2xpY2std2hpdGVzcGFjZS5odG1sCi0KICMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xs
ZXIgZG9lcyBub3QgaW1wbGVtZW50IGVsZW1lbnREb2VzQXV0b0NvbXBsZXRlRm9yRWxlbWVudFdp
dGhJZAogc2VjdXJpdHkvc2V0LWZvcm0tYXV0b2NvbXBsZXRlLWF0dHJpYnV0ZS5odG1sCiAKQEAg
LTc0NSw3ICs3MzIsNyBAQCBmYXN0L2V2ZW50cy9iYWNrc3BhY2UtbmF2aWdhdGVzLWJhY2suaHRt
bAogZmFzdC9ldmVudHMvc2hvdy1tb2RhbC1kaWFsb2ctb25ibHVyLW9uZm9jdXMuaHRtbAogZmFz
dC9oYXJuZXNzL3Nob3ctbW9kYWwtZGlhbG9nLmh0bWwKIAotIyBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgaGFzU3BlbGxpbmdNYXJrZXIKKyMgTWlzc2luZyBU
ZXh0Q2hlY2tlckNsaWVudCBpbXBsZW1lbnRhdGlvbiAoRWZsJ3MgcG9ydCBkb2VzIG5vdCBzdXBw
b3J0IHNwZWxsIGNoZWNraW5nLCBHdGsgcG9ydCB1c2VzIEVuY2hhbnQgbGlicmFyeSBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjE3ODcpCiBlZGl0aW5nL3NwZWxsaW5n
L2Rlc2lnbi1tb2RlLXNwZWxsY2hlY2stb2ZmLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxj
aGVjay1hdHRyaWJ1dGUuaHRtbAogZWRpdGluZy9zcGVsbGluZy9zcGVsbGNoZWNrLXBhc3RlLmh0
bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvZWZsL0NoYW5nZUxvZwppbmRleCA1NDAzNzA5Li4yZDBlNzlhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDMtMjIgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6
YWprb3dza2lAc2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgTGF5
b3V0VGVzdENvbnRyb2xsZXIncyBtZXRob2RzIHJlbGF0ZWQgd2l0aCBlZGl0aW5nLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAxMzYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIER1bXBS
ZW5kZXJUcmVlU3VwcG9ydEVmbCdzIGFuZCBFZGl0b3JDbGllbnRFZmwncyBtZXRob2RzIHJlbGF0
ZWQgd2l0aCBlZGl0aW5nLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0RWZsLmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0
U21hcnRJbnNlcnREZWxldGVFbmFibGVkKTogTmV3IGZ1bmN0aW9uLgorICAgICAgICAoRHVtcFJl
bmRlclRyZWVTdXBwb3J0RWZsOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKTog
TmV3IGZ1bmN0aW9uLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3Vw
cG9ydEVmbC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OnNldFNtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZCk6IE5ldyBmdW5jdGlvbi4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6RWRpdG9yQ2xpZW50RWZsOjpzbWFydEluc2VydERlbGV0ZUVuYWJsZWQpOiBBZGQgaW1w
bGVtZW50YXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmw6OnNldFNlbGVj
dFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQpOiBOZXcgZnVuY3Rpb24uCisgICAgICAgIChXZWJD
b3JlOjpFZGl0b3JDbGllbnRFZmw6OmlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCk6
IEFkZCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudEVmbDo6
RWRpdG9yQ2xpZW50RWZsKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRF
ZmwuaDoKKyAgICAgICAgKEVkaXRvckNsaWVudEVmbCk6CisKIDIwMTItMDMtMTkgIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3IgIm1h
Z2ljIiBpZnJhbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0
L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmwuY3BwCmluZGV4IDhkMTRhMTguLmRlYWRk
OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmNwcApAQCAtMjYsNiArMjYsNyBAQAogCiAjaW5j
bHVkZSA8QW5pbWF0aW9uQ29udHJvbGxlci5oPgogI2luY2x1ZGUgPERvY3VtZW50TG9hZGVyLmg+
CisjaW5jbHVkZSA8RWRpdG9yQ2xpZW50RWZsLmg+CiAjaW5jbHVkZSA8RWluYS5oPgogI2luY2x1
ZGUgPEV2YXMuaD4KICNpbmNsdWRlIDxGaW5kT3B0aW9ucy5oPgpAQCAtMzIyLDYgKzMyMywzMiBA
QCBib29sIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6ZmluZFN0cmluZyhjb25zdCBFdmFzX09i
amVjdCogZXdrVmlldywgY29uc3QgY2hhcgogICAgIHJldHVybiBwYWdlLT5maW5kU3RyaW5nKFN0
cmluZzo6ZnJvbVVURjgodGV4dCksIG9wdGlvbnMpOwogfQogCit2b2lkIER1bXBSZW5kZXJUcmVl
U3VwcG9ydEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKEV2YXNfT2JqZWN0KiBld2tW
aWV3LCBib29sIGVuYWJsZWQpCit7CisgICAgV2ViQ29yZTo6UGFnZSogcGFnZSA9IEVXS1ByaXZh
dGU6OmNvcmVQYWdlKGV3a1ZpZXcpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgV2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZsKiBlZGl0b3JDbGllbnQgPSBzdGF0aWNfY2Fz
dDxXZWJDb3JlOjpFZGl0b3JDbGllbnRFZmwqPihwYWdlLT5lZGl0b3JDbGllbnQoKSk7CisgICAg
aWYgKCFlZGl0b3JDbGllbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGVkaXRvckNsaWVudC0+
c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVuYWJsZWQpOworfQorCit2b2lkIER1bXBSZW5k
ZXJUcmVlU3VwcG9ydEVmbDo6c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChFdmFz
X09iamVjdCogZXdrVmlldywgYm9vbCBlbmFibGVkKQoreworICAgIFdlYkNvcmU6OlBhZ2UqIHBh
Z2UgPSBFV0tQcml2YXRlOjpjb3JlUGFnZShld2tWaWV3KTsKKyAgICBpZiAoIXBhZ2UpCisgICAg
ICAgIHJldHVybjsKKworICAgIFdlYkNvcmU6OkVkaXRvckNsaWVudEVmbCogZWRpdG9yQ2xpZW50
ID0gc3RhdGljX2Nhc3Q8V2ViQ29yZTo6RWRpdG9yQ2xpZW50RWZsKj4ocGFnZS0+ZWRpdG9yQ2xp
ZW50KCkpOworICAgIGlmICghZWRpdG9yQ2xpZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBl
ZGl0b3JDbGllbnQtPnNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoZW5hYmxlZCk7
Cit9CisKIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsOjpnYXJiYWdlQ29sbGVjdG9yQ29s
bGVjdCgpCiB7CiAgICAgV2ViQ29yZTo6Z2NDb250cm9sbGVyKCkuZ2FyYmFnZUNvbGxlY3ROb3co
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlU3VwcG9ydEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVt
cFJlbmRlclRyZWVTdXBwb3J0RWZsLmgKaW5kZXggN2ZmYzMzNS4uZDI0MjkzNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
RWZsLmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0RWZsLmgKQEAgLTY2LDYgKzY2LDggQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lk
IHNldEF1dG9maWxsZWQoSlNDb250ZXh0UmVmLCBKU1ZhbHVlUmVmIG5vZGVPYmplY3QsIGJvb2wg
YXV0b2ZpbGxlZCk7CiAKICAgICBzdGF0aWMgYm9vbCBmaW5kU3RyaW5nKGNvbnN0IEV2YXNfT2Jq
ZWN0KiBld2tWaWV3LCBjb25zdCBjaGFyKiB0ZXh0LCBXZWJDb3JlOjpGaW5kT3B0aW9ucyk7Cisg
ICAgc3RhdGljIHZvaWQgc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKEV2YXNfT2JqZWN0KiBl
d2tWaWV3LCBib29sIGVuYWJsZWQpOworICAgIHN0YXRpYyB2b2lkIHNldFNlbGVjdFRyYWlsaW5n
V2hpdGVzcGFjZUVuYWJsZWQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgZW5hYmxlZCk7CiAK
ICAgICBzdGF0aWMgdm9pZCBnYXJiYWdlQ29sbGVjdG9yQ29sbGVjdCgpOwogICAgIHN0YXRpYyB2
b2lkIGdhcmJhZ2VDb2xsZWN0b3JDb2xsZWN0T25BbHRlcm5hdGVUaHJlYWQoYm9vbCB3YWl0VW50
aWxEb25lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Vk
aXRvckNsaWVudEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0
b3JDbGllbnRFZmwuY3BwCmluZGV4IDgyMjQxNTUuLjhiOWJjOWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50RWZsLmNwcApAQCAtMjMs
NiArMjMsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkVkaXRvckNsaWVudEVm
bC5oIgogCisjaW5jbHVkZSAiRHVtcFJlbmRlclRyZWVTdXBwb3J0RWZsLmgiCiAjaW5jbHVkZSAi
RWRpdG9yLmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJv
bGxlci5oIgpAQCAtMjI5LDE2ICsyMzAsMjggQEAgdm9pZCBFZGl0b3JDbGllbnRFZmw6OnBhZ2VE
ZXN0cm95ZWQoKQogICAgIGRlbGV0ZSB0aGlzOwogfQogCit2b2lkIEVkaXRvckNsaWVudEVmbDo6
c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZCA9IGVuYWJsZWQ7CisgICAgaWYgKGVuYWJsZWQpCisgICAgICAg
IHNldFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoZmFsc2UpOworfQorCiBib29sIEVk
aXRvckNsaWVudEVmbDo6c21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkKIHsKLSAgICBub3RJbXBs
ZW1lbnRlZCgpOwotICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gbV9zbWFydEluc2VydERl
bGV0ZUVuYWJsZWQ7Cit9CisKK3ZvaWQgRWRpdG9yQ2xpZW50RWZsOjpzZXRTZWxlY3RUcmFpbGlu
Z1doaXRlc3BhY2VFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NlbGVjdFRyYWlsaW5n
V2hpdGVzcGFjZUVuYWJsZWQgPSBlbmFibGVkOworICAgIGlmIChlbmFibGVkKQorICAgICAgICBz
ZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoZmFsc2UpOwogfQogCiBib29sIEVkaXRvckNsaWVu
dEVmbDo6aXNTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKCkKIHsKLSAgICBub3RJbXBs
ZW1lbnRlZCgpOwotICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gbV9zZWxlY3RUcmFpbGlu
Z1doaXRlc3BhY2VFbmFibGVkOwogfQogCiB2b2lkIEVkaXRvckNsaWVudEVmbDo6dG9nZ2xlQ29u
dGludW91c1NwZWxsQ2hlY2tpbmcoKQpAQCAtNDM3LDYgKzQ1MCw4IEBAIHZvaWQgRWRpdG9yQ2xp
ZW50RWZsOjpoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oS2V5Ym9hcmRFdmVudCogZXZlbnQpCiBF
ZGl0b3JDbGllbnRFZmw6OkVkaXRvckNsaWVudEVmbChFdmFzX09iamVjdCogdmlldykKICAgICA6
IG1faXNJblJlZG8oZmFsc2UpCiAgICAgLCBtX3ZpZXcodmlldykKKyAgICAsIG1fc2VsZWN0VHJh
aWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChmYWxzZSkKKyAgICAsIG1fc21hcnRJbnNlcnREZWxldGVF
bmFibGVkKGZhbHNlKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRFZmwuaCBiL1NvdXJj
ZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudEVmbC5oCmluZGV4IDJiNTJl
OWQuLjQwN2UyNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0
L0VkaXRvckNsaWVudEVmbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0
L0VkaXRvckNsaWVudEVmbC5oCkBAIC02MCw3ICs2MCw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IGJvb2wgc2hvdWxkRGVsZXRlUmFuZ2UoUmFuZ2UqKTsKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
U2hvd0RlbGV0ZUludGVyZmFjZShIVE1MRWxlbWVudCopOwogICAgIHZpcnR1YWwgYm9vbCBzbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoKTsKKyAgICB2b2lkIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZChib29sKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VF
bmFibGVkKCk7CisgICAgdm9pZCBzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKGJv
b2wpOwogICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZCgp
OwogICAgIHZpcnR1YWwgdm9pZCB0b2dnbGVDb250aW51b3VzU3BlbGxDaGVja2luZygpOwogICAg
IHZpcnR1YWwgYm9vbCBpc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKTsKQEAgLTEyNSw2ICsxMjcs
OCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgRXZhc19PYmplY3QgKm1fdmlldzsKKyAgICBi
b29sIG1fc2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZDsKKyAgICBib29sIG1fc21hcnRJ
bnNlcnREZWxldGVFbmFibGVkOwogfTsKIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9n
IGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDdkNTdhODIuLjg4ZTE4NGIgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAx
Mi0wMy0yMiAgR3J6ZWdvcnogQ3phamtvd3NraSAgPGcuY3phamtvd3NraUBzYW1zdW5nLmNvbT4K
KworICAgICAgICBbRUZMXVtEUlRdIEltcGxlbWVudCBMYXlvdXRUZXN0Q29udHJvbGxlcidzIG1l
dGhvZHMgcmVsYXRlZCB3aXRoIGVkaXRpbmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04MDEzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIg
bWV0aG9kcyBlLmkuIHNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCwKKyAgICAgICAgc2V0U2Vs
ZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZC4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKToKKyAgICAgICAgKExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKToKKwogMjAx
Mi0wMy0yMSAgSm9obm55IERpbmcgIDxqbmRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEN1c3Rv
bWl6ZSBsYXlvdXQgdGVzdCB0aW1lb3V0IHZhbHVlIGZvciBkaWZmZXJlbnQgcG9ydHMuCmRpZmYg
LS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwu
Y3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0xheW91dFRlc3RDb250cm9sbGVyRWZsLmNw
cAppbmRleCBjMjgxYzRkLi44ZTUxNzEwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9lZmwvTGF5b3V0VGVzdENvbnRyb2xsZXJFZmwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2VmbC9MYXlvdXRUZXN0Q29udHJvbGxlckVmbC5jcHAKQEAgLTI3Myw5ICsyNzMsOSBAQCB2
b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRXaW5kb3dJc0tleShib29sKQogICAgIG5vdElt
cGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZChib29sKQordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U21h
cnRJbnNlcnREZWxldGVFbmFibGVkKGJvb2wgZmxhZykKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgp
OworICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6c2V0U21hcnRJbnNlcnREZWxldGVFbmFi
bGVkKGJyb3dzZXItPm1haW5WaWV3KCksIGZsYWcpOwogfQogCiBzdGF0aWMgRWluYV9Cb29sIHdh
aXRUb0R1bXBXYXRjaGRvZ0ZpcmVkKHZvaWQqKQpAQCAtNDMzLDkgKzQzMyw5IEBAIHZvaWQgTGF5
b3V0VGVzdENvbnRyb2xsZXI6OnNldEphdmFTY3JpcHRQcm9maWxpbmdFbmFibGVkKGJvb2wpCiAg
ICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0
U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29sKQordm9pZCBMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6c2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29sIGZsYWcpCiB7
Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNl
dFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYnJvd3Nlci0+bWFpblZpZXcoKSwgZmxh
Zyk7CiB9CiAKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFBvcHVwQmxvY2tpbmdFbmFi
bGVkKGJvb2wgZmxhZykK
</data>

          </attachment>
      

    </bug>

</bugzilla>