<?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>127584</bug_id>
          
          <creation_ts>2014-01-24 13:56:28 -0800</creation_ts>
          <short_desc>[New Multicolumn] Don&apos;t destroy all the renderers when a multi-column block stops being multi-column (and vice versa)</short_desc>
          <delta_ts>2014-01-24 14:48:21 -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>Layout and Rendering</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>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>971745</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2014-01-24 13:56:28 -0800</bug_when>
    <thetext>Don&apos;t destroy all the renderers when a multi-column block stops being multi-column (and vice versa). We make the logic for this share with the old multi-column code so that the two are closer in line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971749</commentid>
    <comment_count>1</comment_count>
      <attachid>222153</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2014-01-24 14:02:37 -0800</bug_when>
    <thetext>Created attachment 222153
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971750</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-24 14:03:42 -0800</bug_when>
    <thetext>Attachment 222153 did not pass style-queue:


ERROR: Source/WebCore/rendering/RenderBlockFlow.h:435:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971766</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2014-01-24 14:48:21 -0800</bug_when>
    <thetext>Landed in r162726.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222153</attachid>
            <date>2014-01-24 14:02:37 -0800</date>
            <delta_ts>2014-01-24 14:44:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>23264</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2MjcyMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc4IEBACisyMDE0LTAxLTI0ICBEYXZpZCBI
eWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KKworICAgICAgICBbTmV3IE11bHRpY29sdW1uXSBEb24n
dCBkZXN0cm95IGFsbCB0aGUgcmVuZGVyZXJzIHdoZW4gYSBtdWx0aS1jb2x1bW4gYmxvY2sgc3Rv
cHMgYmVpbmcgbXVsdGktY29sdW1uIChhbmQgdmljZSB2ZXJzYSkKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzU4NAorCisgICAgICAgIE1ha2UgdGhl
IGxvZ2ljIGZvciB3aGVuIHlvdSBuZWVkIGNvbHVtbnMgYW5kIHdoZW4geW91IGRvbid0IHNoYXJl
ZCBiZXR3ZWVuIHRoZQorICAgICAgICBvbGQgbXVsdGktY29sdW1uIGNvZGUgYW5kIHRoZSBuZXcg
bXVsdGktY29sdW1uIGNvZGUuIE1ha2Ugc3VyZSB0aGF0IHRoZSBmbG93IHRocmVhZAorICAgICAg
ICBhbmQgc2V0cyBnZXQgY3JlYXRlZCBsYXppbHkgYW5kIGRlc3Ryb3llZCBvbi1kZW1hbmQgd2hl
biB3aGV0aGVyIG9yIG5vdCB3ZSBzaG91bGQKKyAgICAgICAgaGF2ZSBtdWx0aXBsZSBjb2x1bW5z
IGNoYW5nZXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
QmxvY2s6OnVwZGF0ZUxvZ2ljYWxXaWR0aEFuZENvbHVtbldpZHRoKToKKyAgICAgICAgTm8gbG9u
Z2VyIHZpcnR1YWwuIFRoZSBuZXcgY29sdW1uIGNvZGUgbm93IHVzZXMgdGhpcyBmdW5jdGlvbiB0
b28uCisKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjphdmFpbGFibGVMb2dpY2FsV2lk
dGgpOgorICAgICAgICBSZW5hbWVkIGRlc2lyZWRDb2x1bW5XaWR0aCgpIHRvIGNvbXB1dGVkQ29s
dW1uV2lkdGgoKS4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNvbXB1dGVDb2x1
bW5Db3VudEFuZFdpZHRoKToKKyAgICAgICAgUmVuYW1lZCBjYWxjQ29sdW1uV2lkdGggdG8gY29t
cHV0ZUNvbHVtbkNvdW50QW5kV2lkdGguCisKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2Nr
OjpzZXRDb21wdXRlZENvbHVtbkNvdW50QW5kV2lkdGgpOgorICAgICAgICBSZW5hbWUgc2V0RGVz
aXJlZENvbHVtbkNvdW50QW5kV2lkdGggdG8gY29tcHV0ZWQuCisKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrOjpjb21wdXRlZENvbHVtbldpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckJsb2NrOjpjb21wdXRlZENvbHVtbkNvdW50KToKKyAgICAgICAgUmVuYW1lZCBkZXNpcmVk
Q29sdW1uV2lkdGgvQ291bnQgdG8gY29tcHV0ZWRDb2x1bW5XaWR0aC9Db3VudCBhbmQgbWFkZSB0
aGVtIHZpcnR1YWwuCisKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjp1cGRhdGVGaXJz
dExldHRlclN0eWxlKToKKyAgICAgICAgZGVzaXJlZCAtPiBjb21wdXRlZCByZW5hbWUuCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoKKyAgICAgICAgUmVuYW1lcyBhbmQgbWFk
ZSBhIGZldyBmdW5jdGlvbnMgdmlydHVhbCBzbyB0aGF0IFJlbmRlckJsb2NrRmxvdyBjYW4gb3Zl
cnJpZGUuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6UmVuZGVyQmxvY2tGbG93KToKKyAgICAgICAg
RG9uJ3QgY3JlYXRlIHRoZSBmbG93IHRocmVhZCBhdCBjb25zdHJ1Y3Rpb24gdGltZSBhbnkgbG9u
Z2VyLgorCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6OmNyZWF0ZU11bHRpQ29s
dW1uRmxvd1RocmVhZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6OmRlc3Ry
b3lNdWx0aUNvbHVtbkZsb3dUaHJlYWQpOgorICAgICAgICBUaGUgbWV0aG9kcyB0byBjcmVhdGUg
YW5kIGRlc3Ryb3kgZmxvdyB0aHJlYWRzLiBUaGVzZSB3b3JrIGF0IGFueSB0aW1lIG5vdyBhbmQg
d2lsbAorICAgICAgICBmaXggdXAgdGhlIHJlbmRlciB0cmVlIGFjY29yZGluZ2x5LgorCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6OnNldENvbXB1dGVkQ29sdW1uQ291bnRBbmRX
aWR0aCk6CisgICAgICAgIFZpcnR1YWwgb3ZlcnJpZGUgdGhhdCBjcmVhdGVzL2Rlc3Ryb3lzIHRo
ZSBuZXcgbXVsdGktY29sdW1uIGluZm9ybWF0aW9uIGFzIG5lZWRlZC4KKworICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyQmxvY2tGbG93Ojpjb21wdXRlZENvbHVtbldpZHRoKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6Y29tcHV0ZWRDb2x1bW5Db3VudCk6CisgICAgICAgIE92
ZXJyaWRlcyB0byByZXR1cm4gdGhlIGNhY2hlZCBjb2x1bW4gd2lkdGggYW5kIGNvdW50IGZyb20g
dGhlIGZsb3cgdGhyZWFkLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5o
OgorICAgICAgICBIYXMgb3ZlcnJpZGVzIG9mIHRoZSB2aXJ0dWFsIGZ1bmN0aW9ucyBuZWVkZWQg
dG8gdHVybiBtdWx0aS1jb2x1bW4gc3RhdGUgb24vb2ZmIGFuZAorICAgICAgICB0byBoYW5kIGJh
Y2sgY29tcHV0ZWQgY291bnQvd2lkdGggaW5mb3JtYXRpb24uCisKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkLmNwcDoKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkLmg6CisgICAgICAgIFJlbW92ZWQgdGhlIGFsZ29y
aXRobSB0byBjb21wdXRlIGNvbHVtbiBjb3VudCBhbmQgd2lkdGgsIHNpbmNlIHRoaXMgaGFzIGJl
ZW4gY29tYmluZWQKKyAgICAgICAgd2l0aCB0aGUgb2xkIG11bHRpLWNvbHVtbiBsYXlvdXQgY29k
ZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclZpZXc6OmNvbXB1dGVDb2x1bW5Db3VudEFuZFdpZHRoKToKKyAgICAgICAgUmVu
YW1lZCBkZXNpcmVkIC0+IGNvbXB1dGVkLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclZp
ZXcuaDoKKyAgICAgICAgUmVuYW1lZCBkZXNpcmVkIC0+IGNvbXB1dGVkLgorCisgICAgICAgICog
c3R5bGUvU3R5bGVSZXNvbHZlVHJlZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6ZGV0
ZXJtaW5lQ2hhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpyZXNvbHZlTG9jYWwpOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OnJlc29sdmVUcmVlKToKKyAgICAgICAgKiBzdHlsZS9T
dHlsZVJlc29sdmVUcmVlLmg6CisgICAgICAgIFRoZSBTZXR0aW5ncyBhcmd1bWVudCBpcyBubyBs
b25nZXIgbmVlZGVkIG5vdyB0aGF0IHdlIGRvbid0IGRlc3Ryb3kgYW5kIHJlLWNyZWF0ZQorICAg
ICAgICB0aGUgcmVuZGVyZXIgZm9yIGEgYmxvY2sgZmxvdyBpZiBpdCBzdG9wcyBiZWluZyAob3Ig
YmVjb21lcykgbXVsdGktY29sdW1uLgorCiAyMDE0LTAxLTI0ICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgZmFzdC9wcm9maWxlciB0ZXN0cyBBU1NFUlRp
bmcgYWZ0ZXIgbW92aW5nIHJlY29tcGlsZUFsbEpTRnVuY3Rpb25zIG9mZiBhIHRpbWVyCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAJKHJldmlzaW9uIDE2Mjcx
MikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE1NDcsMTUgKzE1NDcsMTUgQEAgdm9pZCBSZW5kZXJCbG9jazo6cHJlcGFyZVNo
YXBlc0FuZFBhZ2luYQogYm9vbCBSZW5kZXJCbG9jazo6dXBkYXRlTG9naWNhbFdpZHRoQW5kQ29s
dW1uV2lkdGgoKQogewogICAgIExheW91dFVuaXQgb2xkV2lkdGggPSBsb2dpY2FsV2lkdGgoKTsK
LSAgICBMYXlvdXRVbml0IG9sZENvbHVtbldpZHRoID0gZGVzaXJlZENvbHVtbldpZHRoKCk7Cisg
ICAgTGF5b3V0VW5pdCBvbGRDb2x1bW5XaWR0aCA9IGNvbXB1dGVkQ29sdW1uV2lkdGgoKTsKIAog
ICAgIHVwZGF0ZUxvZ2ljYWxXaWR0aCgpOwotICAgIGNhbGNDb2x1bW5XaWR0aCgpOworICAgIGNv
bXB1dGVDb2x1bW5Db3VudEFuZFdpZHRoKCk7CiAKICAgICBib29sIGhhc0JvcmRlck9yUGFkZGlu
Z0xvZ2ljYWxXaWR0aENoYW5nZWQgPSBtX2hhc0JvcmRlck9yUGFkZGluZ0xvZ2ljYWxXaWR0aENo
YW5nZWQ7CiAgICAgbV9oYXNCb3JkZXJPclBhZGRpbmdMb2dpY2FsV2lkdGhDaGFuZ2VkID0gZmFs
c2U7CiAKLSAgICByZXR1cm4gb2xkV2lkdGggIT0gbG9naWNhbFdpZHRoKCkgfHwgb2xkQ29sdW1u
V2lkdGggIT0gZGVzaXJlZENvbHVtbldpZHRoKCkgfHwgaGFzQm9yZGVyT3JQYWRkaW5nTG9naWNh
bFdpZHRoQ2hhbmdlZDsKKyAgICByZXR1cm4gb2xkV2lkdGggIT0gbG9naWNhbFdpZHRoKCkgfHwg
b2xkQ29sdW1uV2lkdGggIT0gY29tcHV0ZWRDb2x1bW5XaWR0aCgpIHx8IGhhc0JvcmRlck9yUGFk
ZGluZ0xvZ2ljYWxXaWR0aENoYW5nZWQ7CiB9CiAKIHZvaWQgUmVuZGVyQmxvY2s6OmxheW91dEJs
b2NrKGJvb2wsIExheW91dFVuaXQpCkBAIC0zNjMxLDcgKzM2MzEsNyBAQCBMYXlvdXRVbml0IFJl
bmRlckJsb2NrOjphdmFpbGFibGVMb2dpY2FsCiB7CiAgICAgLy8gSWYgd2UgaGF2ZSBtdWx0aXBs
ZSBjb2x1bW5zLCB0aGVuIHRoZSBhdmFpbGFibGUgbG9naWNhbCB3aWR0aCBpcyByZWR1Y2VkIHRv
IG91ciBjb2x1bW4gd2lkdGguCiAgICAgaWYgKGhhc0NvbHVtbnMoKSkKLSAgICAgICAgcmV0dXJu
IGRlc2lyZWRDb2x1bW5XaWR0aCgpOworICAgICAgICByZXR1cm4gY29tcHV0ZWRDb2x1bW5XaWR0
aCgpOwogICAgIHJldHVybiBSZW5kZXJCb3g6OmF2YWlsYWJsZUxvZ2ljYWxXaWR0aCgpOwogfQog
CkBAIC0zNjQyLDExICszNjQyLDggQEAgaW50IFJlbmRlckJsb2NrOjpjb2x1bW5HYXAoKSBjb25z
dAogICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHN0eWxlKCkuY29sdW1uR2FwKCkpOwogfQog
Ci12b2lkIFJlbmRlckJsb2NrOjpjYWxjQ29sdW1uV2lkdGgoKQordm9pZCBSZW5kZXJCbG9jazo6
Y29tcHV0ZUNvbHVtbkNvdW50QW5kV2lkdGgoKQogeyAgIAotICAgIGlmIChkb2N1bWVudCgpLnJl
Z2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCiAgICAgLy8gQ2Fs
Y3VsYXRlIG91ciBjb2x1bW4gd2lkdGggYW5kIGNvbHVtbiBjb3VudC4KICAgICAvLyBGSVhNRTog
Q2FuIG92ZXJmbG93IG9uIGZhc3QvYmxvY2svZmxvYXQvZmxvYXQtbm90LXJlbW92ZWQtZnJvbS1u
ZXh0LXNpYmxpbmc0Lmh0bWwsIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9Njg3NDQKICAgICB1bnNpZ25lZCBkZXNpcmVkQ29sdW1uQ291bnQgPSAxOwpAQCAtMzY1
NCw3ICszNjUxLDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6Y2FsY0NvbHVtbldpZHRoKCkKICAgICAK
ICAgICAvLyBGb3Igbm93LCB3ZSBkb24ndCBzdXBwb3J0IG11bHRpLWNvbHVtbiBsYXlvdXRzIHdo
ZW4gcHJpbnRpbmcsIHNpbmNlIHdlIGhhdmUgdG8gZG8gYSBsb3Qgb2Ygd29yayBmb3IgcHJvcGVy
IHBhZ2luYXRpb24uCiAgICAgaWYgKGRvY3VtZW50KCkucGFnaW5hdGVkKCkgfHwgKHN0eWxlKCku
aGFzQXV0b0NvbHVtbkNvdW50KCkgJiYgc3R5bGUoKS5oYXNBdXRvQ29sdW1uV2lkdGgoKSkgfHwg
IXN0eWxlKCkuaGFzSW5saW5lQ29sdW1uQXhpcygpKSB7Ci0gICAgICAgIHNldERlc2lyZWRDb2x1
bW5Db3VudEFuZFdpZHRoKGRlc2lyZWRDb2x1bW5Db3VudCwgZGVzaXJlZENvbHVtbldpZHRoKTsK
KyAgICAgICAgc2V0Q29tcHV0ZWRDb2x1bW5Db3VudEFuZFdpZHRoKGRlc2lyZWRDb2x1bW5Db3Vu
dCwgZGVzaXJlZENvbHVtbldpZHRoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAgICAg
CkBAIC0zNjczLDcgKzM2NzAsNyBAQCB2b2lkIFJlbmRlckJsb2NrOjpjYWxjQ29sdW1uV2lkdGgo
KQogICAgICAgICBkZXNpcmVkQ29sdW1uQ291bnQgPSBzdGQ6Om1heDxMYXlvdXRVbml0PihzdGQ6
Om1pbjxMYXlvdXRVbml0Pihjb2xDb3VudCwgKGF2YWlsV2lkdGggKyBjb2xHYXApIC8gKGNvbFdp
ZHRoICsgY29sR2FwKSksIDEpOwogICAgICAgICBkZXNpcmVkQ29sdW1uV2lkdGggPSAoKGF2YWls
V2lkdGggKyBjb2xHYXApIC8gZGVzaXJlZENvbHVtbkNvdW50KSAtIGNvbEdhcDsKICAgICB9Ci0g
ICAgc2V0RGVzaXJlZENvbHVtbkNvdW50QW5kV2lkdGgoZGVzaXJlZENvbHVtbkNvdW50LCBkZXNp
cmVkQ29sdW1uV2lkdGgpOworICAgIHNldENvbXB1dGVkQ29sdW1uQ291bnRBbmRXaWR0aChkZXNp
cmVkQ29sdW1uQ291bnQsIGRlc2lyZWRDb2x1bW5XaWR0aCk7CiB9CiAKIGJvb2wgUmVuZGVyQmxv
Y2s6OnJlcXVpcmVzQ29sdW1ucyhpbnQgZGVzaXJlZENvbHVtbkNvdW50KSBjb25zdApAQCAtMzY4
OCw3ICszNjg1LDcgQEAgYm9vbCBSZW5kZXJCbG9jazo6cmVxdWlyZXNDb2x1bW5zKGludCBkZQog
ICAgICAgICAmJiAhZmlyc3RDaGlsZCgpLT5pc0Fub255bW91c0NvbHVtblNwYW5CbG9jaygpOwog
fQogCi12b2lkIFJlbmRlckJsb2NrOjpzZXREZXNpcmVkQ29sdW1uQ291bnRBbmRXaWR0aChpbnQg
Y291bnQsIExheW91dFVuaXQgd2lkdGgpCit2b2lkIFJlbmRlckJsb2NrOjpzZXRDb21wdXRlZENv
bHVtbkNvdW50QW5kV2lkdGgoaW50IGNvdW50LCBMYXlvdXRVbml0IHdpZHRoKQogewogICAgIGJv
b2wgZGVzdHJveUNvbHVtbnMgPSAhcmVxdWlyZXNDb2x1bW5zKGNvdW50KTsKICAgICBpZiAoZGVz
dHJveUNvbHVtbnMpIHsKQEAgLTM3NDAsMTQgKzM3MzcsMTQgQEAgdm9pZCBSZW5kZXJCbG9jazo6
dXBkYXRlQ29sdW1uSW5mb0Zyb21TdAogICAgICAgICBzZXROZWVkc0xheW91dEFuZFByZWZXaWR0
aHNSZWNhbGMoKTsKIH0KIAotTGF5b3V0VW5pdCBSZW5kZXJCbG9jazo6ZGVzaXJlZENvbHVtbldp
ZHRoKCkgY29uc3QKK0xheW91dFVuaXQgUmVuZGVyQmxvY2s6OmNvbXB1dGVkQ29sdW1uV2lkdGgo
KSBjb25zdAogewogICAgIGlmICghaGFzQ29sdW1ucygpKQogICAgICAgICByZXR1cm4gY29udGVu
dExvZ2ljYWxXaWR0aCgpOwogICAgIHJldHVybiBnQ29sdW1uSW5mb01hcC0+Z2V0KHRoaXMpLT5k
ZXNpcmVkQ29sdW1uV2lkdGgoKTsKIH0KIAotdW5zaWduZWQgUmVuZGVyQmxvY2s6OmRlc2lyZWRD
b2x1bW5Db3VudCgpIGNvbnN0Cit1bnNpZ25lZCBSZW5kZXJCbG9jazo6Y29tcHV0ZWRDb2x1bW5D
b3VudCgpIGNvbnN0CiB7CiAgICAgaWYgKCFoYXNDb2x1bW5zKCkpCiAgICAgICAgIHJldHVybiAx
OwpAQCAtNDgzMiw3ICs0ODI5LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6dXBkYXRlRmlyc3RMZXR0
ZXJTdHlsZQogICAgIFJlbmRlclN0eWxlKiBwc2V1ZG9TdHlsZSA9IHN0eWxlRm9yRmlyc3RMZXR0
ZXIoZmlyc3RMZXR0ZXJCbG9jaywgZmlyc3RMZXR0ZXJDb250YWluZXIpOwogICAgIEFTU0VSVChm
aXJzdExldHRlci0+aXNGbG9hdGluZygpIHx8IGZpcnN0TGV0dGVyLT5pc0lubGluZSgpKTsKIAot
ICAgIGlmIChTdHlsZTo6ZGV0ZXJtaW5lQ2hhbmdlKCZmaXJzdExldHRlci0+c3R5bGUoKSwgcHNl
dWRvU3R5bGUsICZmcmFtZSgpLnNldHRpbmdzKCkpID09IFN0eWxlOjpEZXRhY2gpIHsKKyAgICBp
ZiAoU3R5bGU6OmRldGVybWluZUNoYW5nZSgmZmlyc3RMZXR0ZXItPnN0eWxlKCksIHBzZXVkb1N0
eWxlKSA9PSBTdHlsZTo6RGV0YWNoKSB7CiAgICAgICAgIC8vIFRoZSBmaXJzdC1sZXR0ZXIgcmVu
ZGVyZXIgbmVlZHMgdG8gYmUgcmVwbGFjZWQuIENyZWF0ZSBhIG5ldyByZW5kZXJlciBvZiB0aGUg
cmlnaHQgdHlwZS4KICAgICAgICAgUmVuZGVyQm94TW9kZWxPYmplY3QqIG5ld0ZpcnN0TGV0dGVy
OwogICAgICAgICBpZiAocHNldWRvU3R5bGUtPmRpc3BsYXkoKSA9PSBJTkxJTkUpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAkocmV2aXNpb24gMTYyNzEyKQorKysg
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgJKHdvcmtpbmcgY29weSkKQEAg
LTQxNiw3ICs0MTYsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgYm9vbCBzaW1wbGlmaWVkTGF5b3V0KCk7
CiAgICAgdmlydHVhbCB2b2lkIHNpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0KCk7CiAKLSAgICB2
b2lkIHNldERlc2lyZWRDb2x1bW5Db3VudEFuZFdpZHRoKGludCwgTGF5b3V0VW5pdCk7CisgICAg
Ly8gRklYTUU6IENhbiBkZS12aXJ0dWFsaXplIHRoaXMgb25jZSBvbGQgY29sdW1ucyBnbyBhd2F5
LgorICAgIHZpcnR1YWwgdm9pZCBzZXRDb21wdXRlZENvbHVtbkNvdW50QW5kV2lkdGgoaW50LCBM
YXlvdXRVbml0KTsKIAogcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBjb21wdXRlT3ZlcmZsb3co
TGF5b3V0VW5pdCBvbGRDbGllbnRBZnRlckVkZ2UsIGJvb2wgcmVjb21wdXRlRmxvYXRzID0gZmFs
c2UpOwpAQCAtNTQyLDggKzU0Myw5IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGFic29s
dXRlUmVjdHMoVmVjdG9yPEludFJlY3Q+JiwgY29uc3QgTGF5b3V0UG9pbnQmIGFjY3VtdWxhdGVk
T2Zmc2V0KSBjb25zdCBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWJzb2x1dGVRdWFkcyhW
ZWN0b3I8RmxvYXRRdWFkPiYsIGJvb2wqIHdhc0ZpeGVkKSBjb25zdCBvdmVycmlkZTsKIAotICAg
IExheW91dFVuaXQgZGVzaXJlZENvbHVtbldpZHRoKCkgY29uc3Q7Ci0gICAgdW5zaWduZWQgZGVz
aXJlZENvbHVtbkNvdW50KCkgY29uc3Q7CisgICAgLy8gRklYTUU6IENhbiBkZS12aXJ0dWFsaXpl
IG9uY2Ugb2xkIGNvbHVtbnMgZ28gYXdheS4KKyAgICB2aXJ0dWFsIExheW91dFVuaXQgY29tcHV0
ZWRDb2x1bW5XaWR0aCgpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWduZWQgY29tcHV0ZWRDb2x1
bW5Db3VudCgpIGNvbnN0OwogCiAgICAgdm9pZCBwYWludENvbnRpbnVhdGlvbk91dGxpbmVzKFBh
aW50SW5mbyYsIGNvbnN0IExheW91dFBvaW50Jik7CiAKQEAgLTU1NCw3ICs1NTYsNyBAQCBwcml2
YXRlOgogICAgIC8vIEZJWE1FLUJMT0NLRkxPVzogUmVtb3ZlIHZpcnR1YWxpemFpb24gd2hlbiBh
bGwgY2FsbGVycyBoYXZlIG1vdmVkIHRvIFJlbmRlckJsb2NrRmxvdwogICAgIHZpcnR1YWwgVmlz
aWJsZVBvc2l0aW9uIHBvc2l0aW9uRm9yUG9pbnRXaXRoSW5saW5lQ2hpbGRyZW4oY29uc3QgTGF5
b3V0UG9pbnQmKTsKIAotICAgIHZpcnR1YWwgdm9pZCBjYWxjQ29sdW1uV2lkdGgoKTsKKyAgICB2
aXJ0dWFsIHZvaWQgY29tcHV0ZUNvbHVtbkNvdW50QW5kV2lkdGgoKTsKICAgICB2b2lkIG1ha2VD
aGlsZHJlbkFub255bW91c0NvbHVtbkJsb2NrcyhSZW5kZXJPYmplY3QqIGJlZm9yZUNoaWxkLCBS
ZW5kZXJCbG9jayogbmV3QmxvY2tCb3gsIFJlbmRlck9iamVjdCogbmV3Q2hpbGQpOwogCiAgICAg
Ym9vbCBleHBhbmRzVG9FbmNsb3NlT3ZlcmhhbmdpbmdGbG9hdHMoKSBjb25zdDsKQEAgLTU4Niw5
ICs1ODgsOSBAQCBwcm90ZWN0ZWQ6CiAgICAgLy8gQWRqdXN0IGZyb20gcGFpbnRpbmcgb2Zmc2V0
cyB0byB0aGUgbG9jYWwgY29vcmRzIG9mIHRoaXMgcmVuZGVyZXIKICAgICB2b2lkIG9mZnNldEZv
ckNvbnRlbnRzKExheW91dFBvaW50JikgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIGJvb2wgcmVxdWly
ZXNDb2x1bW5zKGludCBkZXNpcmVkQ29sdW1uQ291bnQpIGNvbnN0OworICAgIHZpcnR1YWwgYm9v
bCByZXF1aXJlc0NvbHVtbnMoaW50IGNvbXB1dGVkQ29sdW1uQ291bnQpIGNvbnN0OwogCi0gICAg
dmlydHVhbCBib29sIHVwZGF0ZUxvZ2ljYWxXaWR0aEFuZENvbHVtbldpZHRoKCk7CisgICAgYm9v
bCB1cGRhdGVMb2dpY2FsV2lkdGhBbmRDb2x1bW5XaWR0aCgpOwogCiAgICAgdmlydHVhbCBib29s
IGNhbkNvbGxhcHNlQW5vbnltb3VzQmxvY2tDaGlsZCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
IApJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAJ
KHJldmlzaW9uIDE2MjcxMikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
a0Zsb3cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDMsNyArMTAzLDYgQEAgUmVuZGVyQmxvY2tG
bG93OjpSZW5kZXJCbG9ja0Zsb3coRWxlbWVudAogI2VuZGlmCiB7CiAgICAgc2V0Q2hpbGRyZW5J
bmxpbmUodHJ1ZSk7Ci0gICAgY3JlYXRlTXVsdGlDb2x1bW5GbG93VGhyZWFkSWZOZWVkZWQoKTsK
IH0KIAogUmVuZGVyQmxvY2tGbG93OjpSZW5kZXJCbG9ja0Zsb3coRG9jdW1lbnQmIGRvY3VtZW50
LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKQEAgLTExNCwyNSArMTEzLDM5IEBAIFJlbmRl
ckJsb2NrRmxvdzo6UmVuZGVyQmxvY2tGbG93KERvY3VtZW4KICNlbmRpZgogewogICAgIHNldENo
aWxkcmVuSW5saW5lKHRydWUpOwotICAgIGNyZWF0ZU11bHRpQ29sdW1uRmxvd1RocmVhZElmTmVl
ZGVkKCk7CiB9CiAKIFJlbmRlckJsb2NrRmxvdzo6flJlbmRlckJsb2NrRmxvdygpCiB7CiB9CiAK
LXZvaWQgUmVuZGVyQmxvY2tGbG93OjpjcmVhdGVNdWx0aUNvbHVtbkZsb3dUaHJlYWRJZk5lZWRl
ZCgpCit2b2lkIFJlbmRlckJsb2NrRmxvdzo6Y3JlYXRlTXVsdGlDb2x1bW5GbG93VGhyZWFkKCkK
IHsKLSAgICBpZiAoKHN0eWxlKCkuaGFzQXV0b0NvbHVtbkNvdW50KCkgJiYgc3R5bGUoKS5oYXNB
dXRvQ29sdW1uV2lkdGgoKSkgfHwgIWRvY3VtZW50KCkucmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxl
ZCgpKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgc2V0Q2hpbGRyZW5JbmxpbmUoZmFsc2Up
OwogICAgIFJlbmRlck11bHRpQ29sdW1uRmxvd1RocmVhZCogZmxvd1RocmVhZCA9IG5ldyBSZW5k
ZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQoZG9jdW1lbnQoKSwgUmVuZGVyU3R5bGU6OmNyZWF0ZUFu
b255bW91c1N0eWxlV2l0aERpc3BsYXkoJnN0eWxlKCksIEJMT0NLKSk7CiAgICAgZmxvd1RocmVh
ZC0+aW5pdGlhbGl6ZVN0eWxlKCk7CisgICAgbW92ZUFsbENoaWxkcmVuVG8oZmxvd1RocmVhZCwg
dHJ1ZSk7CiAgICAgUmVuZGVyQmxvY2s6OmFkZENoaWxkKGZsb3dUaHJlYWQpOwogICAgIHNldE11
bHRpQ29sdW1uRmxvd1RocmVhZChmbG93VGhyZWFkKTsKIH0KIAordm9pZCBSZW5kZXJCbG9ja0Zs
b3c6OmRlc3Ryb3lNdWx0aUNvbHVtbkZsb3dUaHJlYWQoKQoreworICAgIC8vIEdldCB0aGUgZmxv
dyB0aHJlYWQgb3V0IG9mIG91ciBsaXN0LgorICAgIG11bHRpQ29sdW1uRmxvd1RocmVhZCgpLT5y
ZW1vdmVGcm9tUGFyZW50KCk7CisgICAgCisgICAgLy8gRGVzdHJveSBhbGwgdGhlIG11bHRpY29s
dW1uIHNldHMuCisgICAgZGVzdHJveUxlZnRvdmVyQ2hpbGRyZW4oKTsKKyAgICAKKyAgICAvLyBN
b3ZlIGFsbCB0aGUgY2hpbGRyZW4gb2YgdGhlIGZsb3cgdGhyZWFkIGludG8gb3VyIGJsb2NrLgor
ICAgIG11bHRpQ29sdW1uRmxvd1RocmVhZCgpLT5tb3ZlQWxsQ2hpbGRyZW5Ubyh0aGlzLCB0cnVl
KTsKKyAgICAKKyAgICAvLyBOb3cgZGVzdHJveSB0aGUgZmxvdyB0aHJlYWQuCisgICAgbXVsdGlD
b2x1bW5GbG93VGhyZWFkKCktPmRlc3Ryb3koKTsKKyAgICAKKyAgICAvLyBDbGVhciB0aGUgbXVs
dGktY29sdW1uIGZsb3cgdGhyZWFkIHBvaW50ZXIuCisgICAgc2V0TXVsdGlDb2x1bW5GbG93VGhy
ZWFkKG51bGxwdHIpOworfQorCiB2b2lkIFJlbmRlckJsb2NrRmxvdzo6aW5zZXJ0ZWRJbnRvVHJl
ZSgpCiB7CiAgICAgUmVuZGVyQmxvY2s6Omluc2VydGVkSW50b1RyZWUoKTsKQEAgLTM1MTksMTYg
KzM1MzIsNiBAQCBSZW5kZXJPYmplY3QqIFJlbmRlckJsb2NrRmxvdzo6bGF5b3V0U3BlCiAgICAg
cmV0dXJuIG11bHRpQ29sdW1uRmxvd1RocmVhZCgpOwogfQogCi0KLWJvb2wgUmVuZGVyQmxvY2tG
bG93Ojp1cGRhdGVMb2dpY2FsV2lkdGhBbmRDb2x1bW5XaWR0aCgpCi17Ci0gICAgYm9vbCByZWxh
eW91dENoaWxkcmVuID0gUmVuZGVyQmxvY2s6OnVwZGF0ZUxvZ2ljYWxXaWR0aEFuZENvbHVtbldp
ZHRoKCk7Ci0gICAgaWYgKG11bHRpQ29sdW1uRmxvd1RocmVhZCgpICYmIG11bHRpQ29sdW1uRmxv
d1RocmVhZCgpLT5jb21wdXRlQ29sdW1uQ291bnRBbmRXaWR0aCgpKQotICAgICAgICByZWxheW91
dENoaWxkcmVuID0gdHJ1ZTsKLSAgICByZXR1cm4gcmVsYXlvdXRDaGlsZHJlbjsKLX0KLQotCiB2
b2lkIFJlbmRlckJsb2NrRmxvdzo6YWRkQ2hpbGQoUmVuZGVyT2JqZWN0KiBuZXdDaGlsZCwgUmVu
ZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCkKIHsKICAgICBpZiAobXVsdGlDb2x1bW5GbG93VGhyZWFk
KCkpCkBAIC0zNTM2LDcgKzM1MzksNiBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6YWRkQ2hpbGQo
UmVuZGVyT2JqCiAgICAgUmVuZGVyQmxvY2s6OmFkZENoaWxkKG5ld0NoaWxkLCBiZWZvcmVDaGls
ZCk7CiB9CiAKLQogdm9pZCBSZW5kZXJCbG9ja0Zsb3c6OmNoZWNrRm9yUGFnaW5hdGlvbkxvZ2lj
YWxIZWlnaHRDaGFuZ2UoTGF5b3V0VW5pdCYgcGFnZUxvZ2ljYWxIZWlnaHQsIGJvb2wmIHBhZ2VM
b2dpY2FsSGVpZ2h0Q2hhbmdlZCwgYm9vbCYgaGFzU3BlY2lmaWVkUGFnZUxvZ2ljYWxIZWlnaHQp
CiB7CiAgICAgLy8gSWYgd2UgZG9uJ3QgdXNlIGVpdGhlciBvZiB0aGUgdHdvIGNvbHVtbiBpbXBs
ZW1lbnRhdGlvbnMgb3IgYSBmbG93IHRocmVhZCwgdGhlbiBiYWlsLgpAQCAtMzU3OCw1ICszNTgw
LDQyIEBAIHZvaWQgUmVuZGVyQmxvY2tGbG93OjpjaGVja0ZvclBhZ2luYXRpb24KICAgICB9CiB9
CiAKK3ZvaWQgUmVuZGVyQmxvY2tGbG93OjpzZXRDb21wdXRlZENvbHVtbkNvdW50QW5kV2lkdGgo
aW50IGNvdW50LCBMYXlvdXRVbml0IHdpZHRoKQoreworICAgIGlmICghZG9jdW1lbnQoKS5yZWdp
b25CYXNlZENvbHVtbnNFbmFibGVkKCkpCisgICAgICAgIHJldHVybiBSZW5kZXJCbG9jazo6c2V0
Q29tcHV0ZWRDb2x1bW5Db3VudEFuZFdpZHRoKGNvdW50LCB3aWR0aCk7CisgICAgCisgICAgYm9v
bCBkZXN0cm95Q29sdW1ucyA9ICFyZXF1aXJlc0NvbHVtbnMoY291bnQpOworICAgIGlmIChkZXN0
cm95Q29sdW1ucykgeworICAgICAgICBpZiAobXVsdGlDb2x1bW5GbG93VGhyZWFkKCkpCisgICAg
ICAgICAgICBkZXN0cm95TXVsdGlDb2x1bW5GbG93VGhyZWFkKCk7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgaWYgKCFtdWx0aUNvbHVtbkZsb3dUaHJlYWQoKSkKKyAgICAgICAgICAgIGNyZWF0ZU11
bHRpQ29sdW1uRmxvd1RocmVhZCgpOworICAgICAgICBtdWx0aUNvbHVtbkZsb3dUaHJlYWQoKS0+
c2V0Q29sdW1uQ291bnRBbmRXaWR0aChjb3VudCwgd2lkdGgpOworICAgIH0KK30KKworTGF5b3V0
VW5pdCBSZW5kZXJCbG9ja0Zsb3c6OmNvbXB1dGVkQ29sdW1uV2lkdGgoKSBjb25zdAoreworICAg
IGlmICghZG9jdW1lbnQoKS5yZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKCkpCisgICAgICAgIHJl
dHVybiBSZW5kZXJCbG9jazo6Y29tcHV0ZWRDb2x1bW5XaWR0aCgpOworICAgIAorICAgIGlmICht
dWx0aUNvbHVtbkZsb3dUaHJlYWQoKSkKKyAgICAgICAgcmV0dXJuIG11bHRpQ29sdW1uRmxvd1Ro
cmVhZCgpLT5jb21wdXRlZENvbHVtbldpZHRoKCk7CisgICAgcmV0dXJuIGNvbnRlbnRMb2dpY2Fs
V2lkdGgoKTsKK30KKwordW5zaWduZWQgUmVuZGVyQmxvY2tGbG93Ojpjb21wdXRlZENvbHVtbkNv
dW50KCkgY29uc3QKK3sKKyAgICBpZiAoIWRvY3VtZW50KCkucmVnaW9uQmFzZWRDb2x1bW5zRW5h
YmxlZCgpKQorICAgICAgICByZXR1cm4gUmVuZGVyQmxvY2s6OmNvbXB1dGVkQ29sdW1uQ291bnQo
KTsKKyAgICAKKyAgICBpZiAobXVsdGlDb2x1bW5GbG93VGhyZWFkKCkpCisgICAgICAgIHJldHVy
biBtdWx0aUNvbHVtbkZsb3dUaHJlYWQoKS0+Y29tcHV0ZWRDb2x1bW5Db3VudCgpOworICAgIAor
ICAgIHJldHVybiAxOworfQorCiB9CiAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuaAkocmV2aXNpb24gMTYyNzEyKQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5oCSh3b3JraW5nIGNv
cHkpCkBAIC0zNzYsNyArMzc2LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGRDaGlsZChSZW5k
ZXJPYmplY3QqIG5ld0NoaWxkLCBSZW5kZXJPYmplY3QqIGJlZm9yZUNoaWxkID0gMCkgb3ZlcnJp
ZGU7CiAgICAgCi0gICAgdm9pZCBjcmVhdGVNdWx0aUNvbHVtbkZsb3dUaHJlYWRJZk5lZWRlZCgp
OworICAgIHZvaWQgY3JlYXRlTXVsdGlDb2x1bW5GbG93VGhyZWFkKCk7CisgICAgdm9pZCBkZXN0
cm95TXVsdGlDb2x1bW5GbG93VGhyZWFkKCk7CiAgICAgCiBwcm90ZWN0ZWQ6CiAgICAgLy8gQSBw
YWdlIGJyZWFrIGlzIHJlcXVpcmVkIGF0IHNvbWUgb2Zmc2V0IGR1ZSB0byBzcGFjZSBzaG9ydGFn
ZSBpbiB0aGUgY3VycmVudCBmcmFnbWVudGFpbmVyLgpAQCAtNDMxLDExICs0MzIsMTQgQEAgcHJv
dGVjdGVkOgogCiAgICAgdmlydHVhbCBpbnQgZmlyc3RMaW5lQmFzZWxpbmUoKSBjb25zdCBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIGludCBpbmxpbmVCbG9ja0Jhc2VsaW5lKExpbmVEaXJlY3Rpb25N
b2RlKSBjb25zdCBvdmVycmlkZTsKLSAgICAKLSAgICBib29sIHVwZGF0ZUxvZ2ljYWxXaWR0aEFu
ZENvbHVtbldpZHRoKCkgb3ZlcnJpZGU7Ci0KKyAKICAgICB2aXJ0dWFsIGJvb2wgaXNNdWx0aUNv
bHVtbkJsb2NrRmxvdygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG11bHRpQ29sdW1uRmxvd1Ro
cmVhZCgpOyB9CiAgICAgCisgICAgdmlydHVhbCB2b2lkIHNldENvbXB1dGVkQ29sdW1uQ291bnRB
bmRXaWR0aChpbnQsIExheW91dFVuaXQpIG92ZXJyaWRlOworICAgIAorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBjb21wdXRlZENvbHVtbldpZHRoKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdmlydHVh
bCB1bnNpZ25lZCBjb21wdXRlZENvbHVtbkNvdW50KCkgY29uc3Qgb3ZlcnJpZGU7CisKIHByaXZh
dGU6CiAgICAgLy8gQ2FsbGVkIHRvIGxheSBvdXQgdGhlIGxlZ2VuZCBmb3IgYSBmaWVsZHNldCBv
ciB0aGUgcnVieSB0ZXh0IG9mIGEgcnVieSBydW4uIEFsc28gdXNlZCBieSBtdWx0aS1jb2x1bW4g
bGF5b3V0IHRvIGhhbmRsZQogICAgIC8vIHRoZSBmbG93IHRocmVhZCBjaGlsZC4KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkZs
b3dUaHJlYWQuY3BwCShyZXZpc2lvbiAxNjI3MTIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjIs
NDAgKzYyLDYgQEAgTGF5b3V0VW5pdCBSZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQ6OgogICAg
IHJldHVybiBjb2x1bW5XaWR0aCgpOwogfQogCi1ib29sIFJlbmRlck11bHRpQ29sdW1uRmxvd1Ro
cmVhZDo6Y29tcHV0ZUNvbHVtbkNvdW50QW5kV2lkdGgoKQotewotICAgIFJlbmRlckJsb2NrKiBj
b2x1bW5CbG9jayA9IHRvUmVuZGVyQmxvY2socGFyZW50KCkpOwotICAgIAotICAgIExheW91dFVu
aXQgb2xkQ29sdW1uV2lkdGggPSBtX2NvbHVtbldpZHRoOwotICAgIAotICAgIC8vIENhbGN1bGF0
ZSBvdXIgY29sdW1uIHdpZHRoIGFuZCBjb2x1bW4gY291bnQuCi0gICAgLy8gRklYTUU6IENhbiBv
dmVyZmxvdyBvbiBmYXN0L2Jsb2NrL2Zsb2F0L2Zsb2F0LW5vdC1yZW1vdmVkLWZyb20tbmV4dC1z
aWJsaW5nNC5odG1sLCBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTY4NzQ0Ci0gICAgbV9jb2x1bW5Db3VudCA9IDE7Ci0gICAgbV9jb2x1bW5XaWR0aCA9IGNvbHVt
bkJsb2NrLT5jb250ZW50TG9naWNhbFdpZHRoKCk7Ci0gICAgCi0gICAgY29uc3QgUmVuZGVyU3R5
bGUmIGNvbHVtblN0eWxlID0gY29sdW1uQmxvY2stPnN0eWxlKCk7Ci0gICAgCi0gICAgQVNTRVJU
KCFjb2x1bW5TdHlsZS5oYXNBdXRvQ29sdW1uQ291bnQoKSB8fCAhY29sdW1uU3R5bGUuaGFzQXV0
b0NvbHVtbldpZHRoKCkpOwotCi0gICAgTGF5b3V0VW5pdCBhdmFpbFdpZHRoID0gbV9jb2x1bW5X
aWR0aDsKLSAgICBMYXlvdXRVbml0IGNvbEdhcCA9IGNvbHVtbkJsb2NrLT5jb2x1bW5HYXAoKTsK
LSAgICBMYXlvdXRVbml0IGNvbFdpZHRoID0gc3RkOjptYXg8TGF5b3V0VW5pdD4oMSwgTGF5b3V0
VW5pdChjb2x1bW5TdHlsZS5jb2x1bW5XaWR0aCgpKSk7Ci0gICAgaW50IGNvbENvdW50ID0gc3Rk
OjptYXg8aW50PigxLCBjb2x1bW5TdHlsZS5jb2x1bW5Db3VudCgpKTsKLQotICAgIGlmIChjb2x1
bW5TdHlsZS5oYXNBdXRvQ29sdW1uV2lkdGgoKSAmJiAhY29sdW1uU3R5bGUuaGFzQXV0b0NvbHVt
bkNvdW50KCkpIHsKLSAgICAgICAgbV9jb2x1bW5Db3VudCA9IGNvbENvdW50OwotICAgICAgICBt
X2NvbHVtbldpZHRoID0gc3RkOjptYXg8TGF5b3V0VW5pdD4oMCwgKGF2YWlsV2lkdGggLSAoKG1f
Y29sdW1uQ291bnQgLSAxKSAqIGNvbEdhcCkpIC8gbV9jb2x1bW5Db3VudCk7Ci0gICAgfSBlbHNl
IGlmICghY29sdW1uU3R5bGUuaGFzQXV0b0NvbHVtbldpZHRoKCkgJiYgY29sdW1uU3R5bGUuaGFz
QXV0b0NvbHVtbkNvdW50KCkpIHsKLSAgICAgICAgbV9jb2x1bW5Db3VudCA9IHN0ZDo6bWF4PExh
eW91dFVuaXQ+KDEsIChhdmFpbFdpZHRoICsgY29sR2FwKSAvIChjb2xXaWR0aCArIGNvbEdhcCkp
OwotICAgICAgICBtX2NvbHVtbldpZHRoID0gKChhdmFpbFdpZHRoICsgY29sR2FwKSAvIG1fY29s
dW1uQ291bnQpIC0gY29sR2FwOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fY29sdW1uQ291bnQg
PSBzdGQ6Om1heDxMYXlvdXRVbml0PihzdGQ6Om1pbjxMYXlvdXRVbml0Pihjb2xDb3VudCwgKGF2
YWlsV2lkdGggKyBjb2xHYXApIC8gKGNvbFdpZHRoICsgY29sR2FwKSksIDEpOwotICAgICAgICBt
X2NvbHVtbldpZHRoID0gKChhdmFpbFdpZHRoICsgY29sR2FwKSAvIG1fY29sdW1uQ291bnQpIC0g
Y29sR2FwOwotICAgIH0KLSAgICAKLSAgICByZXR1cm4gbV9jb2x1bW5XaWR0aCAhPSBvbGRDb2x1
bW5XaWR0aDsKLX0KLQogdm9pZCBSZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQ6OmF1dG9HZW5l
cmF0ZVJlZ2lvbnNUb0Jsb2NrT2Zmc2V0KExheW91dFVuaXQgLypvZmZzZXQqLykKIHsKICAgICAv
LyBUaGlzIGZ1bmN0aW9uIGVuc3VyZXMgd2UgaGF2ZSB0aGUgY29ycmVjdCBjb2x1bW4gc2V0IGlu
Zm9ybWF0aW9uIGF0IGFsbCB0aW1lcy4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTXVsdGlDb2x1bW5GbG93VGhyZWFkLmgJKHJldmlzaW9uIDE2Mjcx
MSkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNdWx0aUNvbHVtbkZsb3dUaHJl
YWQuaAkod29ya2luZyBjb3B5KQpAQCAtNDQsMTMgKzQ0LDE3IEBAIHB1YmxpYzoKICAgICB2b2lk
IHNldEluQmFsYW5jaW5nUGFzcyhib29sIGJhbGFuY2luZykgeyBtX2luQmFsYW5jaW5nUGFzcyA9
IGJhbGFuY2luZzsgfQogICAgIGJvb2wgbmVlZHNSZWJhbGFuY2luZygpIGNvbnN0IHsgcmV0dXJu
IG1fbmVlZHNSZWJhbGFuY2luZzsgfQogICAgIHZvaWQgc2V0TmVlZHNSZWJhbGFuY2luZyhib29s
IGJhbGFuY2luZykgeyBtX25lZWRzUmViYWxhbmNpbmcgPSBiYWxhbmNpbmc7IH0KLQotICAgIGJv
b2wgY29tcHV0ZUNvbHVtbkNvdW50QW5kV2lkdGgoKTsKICAgICAKICAgICBib29sIHNob3VsZFJl
bGF5b3V0Rm9yUGFnaW5hdGlvbigpIGNvbnN0IHsgcmV0dXJuICFtX2luQmFsYW5jaW5nUGFzcyAm
JiBtX25lZWRzUmViYWxhbmNpbmc7IH0KICAgICAKICAgICBib29sIHJlcXVpcmVzQmFsYW5jaW5n
KCkgY29uc3QgeyByZXR1cm4gIWNvbHVtbkhlaWdodEF2YWlsYWJsZSgpIHx8IHBhcmVudCgpLT5z
dHlsZSgpLmNvbHVtbkZpbGwoKSA9PSBDb2x1bW5GaWxsQmFsYW5jZTsgfQogCisgICAgdm9pZCBz
ZXRDb2x1bW5Db3VudEFuZFdpZHRoKHVuc2lnbmVkIGNvdW50LCBMYXlvdXRVbml0IHdpZHRoKQor
ICAgIHsKKyAgICAgICAgbV9jb2x1bW5Db3VudCA9IGNvdW50OworICAgICAgICBtX2NvbHVtbldp
ZHRoID0gd2lkdGg7CisgICAgfQorCiBwcml2YXRlOgogICAgIHZpcnR1YWwgY29uc3QgY2hhciog
cmVuZGVyTmFtZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBjb21wdXRlTG9n
aWNhbEhlaWdodChMYXlvdXRVbml0IGxvZ2ljYWxIZWlnaHQsIExheW91dFVuaXQgbG9naWNhbFRv
cCwgTG9naWNhbEV4dGVudENvbXB1dGVkVmFsdWVzJikgY29uc3Qgb3ZlcnJpZGU7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCShyZXZpc2lvbiAxNjI3MTEpCisr
KyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTQ2MSwxNCArNDYxLDE0IEBAIGJvb2wgUmVuZGVyVmlldzo6cmVxdWlyZXNDb2x1bW5zKGlu
dCkgY28KICAgICByZXR1cm4gZnJhbWVWaWV3KCkucGFnaW5hdGlvbigpLm1vZGUgIT0gUGFnaW5h
dGlvbjo6VW5wYWdpbmF0ZWQ7CiB9CiAKLXZvaWQgUmVuZGVyVmlldzo6Y2FsY0NvbHVtbldpZHRo
KCkKK3ZvaWQgUmVuZGVyVmlldzo6Y29tcHV0ZUNvbHVtbkNvdW50QW5kV2lkdGgoKQogewogICAg
IGludCBjb2x1bW5XaWR0aCA9IGNvbnRlbnRMb2dpY2FsV2lkdGgoKTsKICAgICBpZiAoc3R5bGUo
KS5oYXNJbmxpbmVDb2x1bW5BeGlzKCkpIHsKICAgICAgICAgaWYgKGludCBwYWdlTGVuZ3RoID0g
ZnJhbWVWaWV3KCkucGFnaW5hdGlvbigpLnBhZ2VMZW5ndGgpCiAgICAgICAgICAgICBjb2x1bW5X
aWR0aCA9IHBhZ2VMZW5ndGg7CiAgICAgfQotICAgIHNldERlc2lyZWRDb2x1bW5Db3VudEFuZFdp
ZHRoKDEsIGNvbHVtbldpZHRoKTsKKyAgICBzZXRDb21wdXRlZENvbHVtbkNvdW50QW5kV2lkdGgo
MSwgY29sdW1uV2lkdGgpOwogfQogCiBDb2x1bW5JbmZvOjpQYWdpbmF0aW9uVW5pdCBSZW5kZXJW
aWV3OjpwYWdpbmF0aW9uVW5pdCgpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVmlldy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJWaWV3LmgJKHJldmlzaW9uIDE2MjcxMSkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTI0Myw3ICsyNDMsNyBAQCBwcm90ZWN0
ZWQ6CiBwcml2YXRlOgogICAgIGJvb2wgaW5pdGlhbGl6ZUxheW91dFN0YXRlKExheW91dFN0YXRl
Jik7CiAKLSAgICB2aXJ0dWFsIHZvaWQgY2FsY0NvbHVtbldpZHRoKCkgb3ZlcnJpZGU7CisgICAg
dmlydHVhbCB2b2lkIGNvbXB1dGVDb2x1bW5Db3VudEFuZFdpZHRoKCkgb3ZlcnJpZGU7CiAgICAg
dmlydHVhbCBDb2x1bW5JbmZvOjpQYWdpbmF0aW9uVW5pdCBwYWdpbmF0aW9uVW5pdCgpIGNvbnN0
IG92ZXJyaWRlOwogCiAgICAgYm9vbCBzaG91bGRSZXBhaW50KGNvbnN0IExheW91dFJlY3QmKSBj
b25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZVRyZWUuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZVRyZWUuY3BwCShy
ZXZpc2lvbiAxNjI3MTEpCisrKyBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVJlc29sdmVUcmVl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsNyBAQCBzdGF0aWMgdm9pZCBhdHRhY2hU
ZXh0UmVuZGVyZXIoVGV4dCYpOwogc3RhdGljIHZvaWQgZGV0YWNoUmVuZGVyVHJlZShFbGVtZW50
JiwgRGV0YWNoVHlwZSk7CiBzdGF0aWMgdm9pZCByZXNvbHZlVHJlZShFbGVtZW50JiwgQ2hhbmdl
KTsKIAotQ2hhbmdlIGRldGVybWluZUNoYW5nZShjb25zdCBSZW5kZXJTdHlsZSogczEsIGNvbnN0
IFJlbmRlclN0eWxlKiBzMiwgU2V0dGluZ3MqIHNldHRpbmdzKQorQ2hhbmdlIGRldGVybWluZUNo
YW5nZShjb25zdCBSZW5kZXJTdHlsZSogczEsIGNvbnN0IFJlbmRlclN0eWxlKiBzMikKIHsKICAg
ICBpZiAoIXMxIHx8ICFzMikKICAgICAgICAgcmV0dXJuIERldGFjaDsKQEAgLTc3LDEyICs3Nyw2
IEBAIENoYW5nZSBkZXRlcm1pbmVDaGFuZ2UoY29uc3QgUmVuZGVyU3R5bGUKICAgICAvLyB0eXBp
Y2FsbHkgd29uJ3QgY29udGFpbiBtdWNoIGNvbnRlbnQuCiAgICAgaWYgKHMxLT5jb2x1bW5TcGFu
KCkgIT0gczItPmNvbHVtblNwYW4oKSkKICAgICAgICAgcmV0dXJuIERldGFjaDsKLSAgICBpZiAo
c2V0dGluZ3MtPnJlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQoKSkgewotICAgICAgICBib29sIHNw
ZWNpZmllc0NvbHVtbnMxID0gIXMxLT5oYXNBdXRvQ29sdW1uQ291bnQoKSB8fCAhczEtPmhhc0F1
dG9Db2x1bW5XaWR0aCgpOwotICAgICAgICBib29sIHNwZWNpZmllc0NvbHVtbnMyID0gIXMyLT5o
YXNBdXRvQ29sdW1uQ291bnQoKSB8fCAhczItPmhhc0F1dG9Db2x1bW5XaWR0aCgpOwotICAgICAg
ICBpZiAoc3BlY2lmaWVzQ29sdW1uczEgIT0gc3BlY2lmaWVzQ29sdW1uczIpCi0gICAgICAgICAg
ICByZXR1cm4gRGV0YWNoOwotICAgIH0KICAgICBpZiAoIXMxLT5jb250ZW50RGF0YUVxdWl2YWxl
bnQoczIpKQogICAgICAgICByZXR1cm4gRGV0YWNoOwogICAgIC8vIFdoZW4gdGV4dC1jb21iaW5l
IHByb3BlcnR5IGhhcyBiZWVuIGNoYW5nZWQsIHdlIG5lZWQgdG8gcHJlcGFyZSBhIHNlcGFyYXRl
IHJlbmRlcmVyIG9iamVjdC4KQEAgLTY3Niw3ICs2NzAsNyBAQCBzdGF0aWMgQ2hhbmdlIHJlc29s
dmVMb2NhbChFbGVtZW50JiBjdXJyCiAgICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gY3VycmVudC5k
b2N1bWVudCgpOwogICAgIGlmIChjdXJyZW50U3R5bGUgJiYgY3VycmVudC5zdHlsZUNoYW5nZVR5
cGUoKSAhPSBSZWNvbnN0cnVjdFJlbmRlclRyZWUpIHsKICAgICAgICAgbmV3U3R5bGUgPSBjdXJy
ZW50LnN0eWxlRm9yUmVuZGVyZXIoKTsKLSAgICAgICAgbG9jYWxDaGFuZ2UgPSBkZXRlcm1pbmVD
aGFuZ2UoY3VycmVudFN0eWxlLmdldCgpLCBuZXdTdHlsZS5nZXQoKSwgZG9jdW1lbnQuc2V0dGlu
Z3MoKSk7CisgICAgICAgIGxvY2FsQ2hhbmdlID0gZGV0ZXJtaW5lQ2hhbmdlKGN1cnJlbnRTdHls
ZS5nZXQoKSwgbmV3U3R5bGUuZ2V0KCkpOwogICAgIH0KICAgICBpZiAobG9jYWxDaGFuZ2UgPT0g
RGV0YWNoKSB7CiAgICAgICAgIGlmIChjdXJyZW50LnJlbmRlcmVyKCkgfHwgY3VycmVudC5pbk5h
bWVkRmxvdygpKQpAQCAtODk3LDcgKzg5MSw3IEBAIHZvaWQgcmVzb2x2ZVRyZWUoRG9jdW1lbnQm
IGRvY3VtZW50LCBDaGEKICAgICAgICAgICAgICAgICBkb2N1bWVudFN0eWxlLmdldCgpLmZvbnQo
KS51cGRhdGUoc3R5bGVSZXNvbHZlci0+Zm9udFNlbGVjdG9yKCkpOwogICAgICAgICB9CiAKLSAg
ICAgICAgU3R5bGU6OkNoYW5nZSBkb2N1bWVudENoYW5nZSA9IGRldGVybWluZUNoYW5nZSgmZG9j
dW1lbnRTdHlsZS5nZXQoKSwgJmRvY3VtZW50LnJlbmRlclZpZXcoKS0+c3R5bGUoKSwgZG9jdW1l
bnQuc2V0dGluZ3MoKSk7CisgICAgICAgIFN0eWxlOjpDaGFuZ2UgZG9jdW1lbnRDaGFuZ2UgPSBk
ZXRlcm1pbmVDaGFuZ2UoJmRvY3VtZW50U3R5bGUuZ2V0KCksICZkb2N1bWVudC5yZW5kZXJWaWV3
KCktPnN0eWxlKCkpOwogICAgICAgICBpZiAoZG9jdW1lbnRDaGFuZ2UgIT0gTm9DaGFuZ2UpCiAg
ICAgICAgICAgICBkb2N1bWVudC5yZW5kZXJWaWV3KCktPnNldFN0eWxlKHN0ZDo6bW92ZShkb2N1
bWVudFN0eWxlKSk7CiAgICAgICAgIGVsc2UKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlUmVzb2x2ZVRyZWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVJlc29sdmVUcmVlLmgJKHJldmlzaW9uIDE2MjcxMSkKKysrIFNvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlUmVzb2x2ZVRyZWUuaAkod29ya2luZyBjb3B5KQpAQCAtNDUsNyArNDUsNyBAQCB2b2lk
IGRldGFjaFRleHRSZW5kZXJlcihUZXh0Jik7CiAKIHZvaWQgdXBkYXRlVGV4dFJlbmRlcmVyQWZ0
ZXJDb250ZW50Q2hhbmdlKFRleHQmLCB1bnNpZ25lZCBvZmZzZXRPZlJlcGxhY2VkRGF0YSwgdW5z
aWduZWQgbGVuZ3RoT2ZSZXBsYWNlZERhdGEpOwogCi1DaGFuZ2UgZGV0ZXJtaW5lQ2hhbmdlKGNv
bnN0IFJlbmRlclN0eWxlKiwgY29uc3QgUmVuZGVyU3R5bGUqLCBTZXR0aW5ncyopOworQ2hhbmdl
IGRldGVybWluZUNoYW5nZShjb25zdCBSZW5kZXJTdHlsZSosIGNvbnN0IFJlbmRlclN0eWxlKik7
CiAKIH0KIAo=
</data>
<flag name="review"
          id="246119"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>