<?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>202942</bug_id>
          
          <creation_ts>2019-10-14 13:24:18 -0700</creation_ts>
          <short_desc>Deploy smart pointers in RadioButtonGroups and RadioButtonGroup</short_desc>
          <delta_ts>2019-10-15 15:17:52 -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>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=199568</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dbates</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>kangil.han</cc>
    
    <cc>lingcherd_ho</cc>
    
    <cc>mifenton</cc>
    
    <cc>samuel_white</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1579763</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-10-14 13:24:18 -0700</bug_when>
    <thetext>Don&apos;t use raw pointers in these classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579785</commentid>
    <comment_count>1</comment_count>
      <attachid>380917</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-10-14 13:45:32 -0700</bug_when>
    <thetext>Created attachment 380917
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579896</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-10-14 16:38:09 -0700</bug_when>
    <thetext>Committed r251110: &lt;https://trac.webkit.org/changeset/251110&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580312</commentid>
    <comment_count>3</comment_count>
    <who name="Ling Ho">lingcherd_ho</who>
    <bug_when>2019-10-15 15:17:52 -0700</bug_when>
    <thetext>&lt;rdar://problem/56269891&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380917</attachid>
            <date>2019-10-14 13:45:32 -0700</date>
            <delta_ts>2019-10-14 13:48:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202942-20191014134531.patch</filename>
            <type>text/plain</type>
            <size>15658</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MTA5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ2IEBACisyMDE5LTEwLTE0ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIERlcGxveSBzbWFydCBwb2ludGVy
cyBpbiBSYWRpb0J1dHRvbkdyb3VwcyBhbmQgUmFkaW9CdXR0b25Hcm91cAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyOTQyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIFJlZiAmIFdlYWtQdHIgaW5z
dGVhZCBvZiByYXcgcG9pbnRlcnMgaW4gUmFkaW9CdXR0b25Hcm91cHMgYW5kIFJhZGlvQnV0dG9u
R3JvdXAuCisKKyAgICAgICAgQWxzbyBtYWRlIFJhZGlvQnV0dG9uR3JvdXBzOjptX25hbWVUb0dy
b3VwTWFwIGEgSGFzaE1hcCBpbnN0ZWFkIG9mIGEgdW5pcXVlX3B0ciBvZiBIYXNoTWFwCisgICAg
ICAgIHNpbmNlIFJhZGlvQnV0dG9uR3JvdXBzIGlzIGxhemlseSBjcmVhdGVkIGluIFRyZWVTY29w
ZSBhcyBvZiByMjUwNzA4LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBzaW5jZSB0aGVyZSBzaG91
bGQgYmUgbm8gb2JzZXJ2YWJsZSBiZWhhdmlvcmFsIGNoYW5nZS4KKworICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphZGRSYWRpb0J1dHRvbkdyb3VwTWVtYmVycyBj
b25zdCk6CisgICAgICAgICogZG9tL1JhZGlvQnV0dG9uR3JvdXBzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJhZGlvQnV0dG9uR3JvdXApOiBVc2UgV2Vha0hhc2hTZXQgYW5kIFdlYWtQdHIgaW5z
dGVhZCBvZiByYXcgcG9pbnRlcnMuCisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdyb3Vw
Ojppc0VtcHR5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlvQnV0dG9uR3JvdXA6OmNo
ZWNrZWRCdXR0b24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmFkaW9CdXR0b25Hcm91cDo6
bWVtYmVycyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdyb3VwOjpzZXRD
aGVja2VkQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlvQnV0dG9uR3JvdXA6OnVwZGF0
ZUNoZWNrZWRTdGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdyb3VwOjpyZXF1
aXJlZFN0YXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdyb3VwOjpy
ZW1vdmUpOgorICAgICAgICAoV2ViQ29yZTo6UmFkaW9CdXR0b25Hcm91cDo6c2V0TmVlZHNTdHls
ZVJlY2FsY0ZvckFsbEJ1dHRvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmFkaW9CdXR0b25Hcm91
cDo6dXBkYXRlVmFsaWRpdHlGb3JBbGxCdXR0b25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlv
QnV0dG9uR3JvdXA6OmNvbnRhaW5zIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlvQnV0
dG9uR3JvdXBzOjphZGRCdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmFkaW9CdXR0b25Hcm91
cHM6Omdyb3VwTWVtYmVycyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdy
b3Vwczo6dXBkYXRlQ2hlY2tlZFN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlvQnV0dG9u
R3JvdXBzOjpyZXF1aXJlZFN0YXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpSYWRpb0J1
dHRvbkdyb3Vwczo6Y2hlY2tlZEJ1dHRvbkZvckdyb3VwIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlJhZGlvQnV0dG9uR3JvdXBzOjpoYXNDaGVja2VkQnV0dG9uIGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJhZGlvQnV0dG9uR3JvdXBzOjppc0luUmVxdWlyZWRHcm91cCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSYWRpb0J1dHRvbkdyb3Vwczo6cmVtb3ZlQnV0dG9uKToKKyAgICAg
ICAgKiBkb20vUmFkaW9CdXR0b25Hcm91cHMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJhZGlvQnV0
dG9uR3JvdXBzKToKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6cmFkaW9CdXR0b25Hcm91cCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50OjpjaGVja2VkUmFkaW9CdXR0b25Gb3JH
cm91cCBjb25zdCk6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50Lmg6CisKIDIwMTkt
MTAtMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBSRUdSRVNTSU9OOiBbaU9TIDEzP10gVGVzdFdlYktpdEFQSS5TaGFyZWRCdWZmZXJUZXN0
LnRyeUNyZWF0ZUFycmF5QnVmZmVyTGFyZ2VTZWdtZW50cyBpcyBmYWlsaW5nCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5jcHAJKHJldmlzaW9uIDI1MTAzOCkKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTk5NSw3ICs5OTUsNyBAQCB2b2lkIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmFkZFJhZGlv
CiAgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KG5vZGUpKSB7CiAgICAgICAgIEhUTUxJbnB1
dEVsZW1lbnQmIGlucHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oKm5vZGUpOwogICAg
ICAgICBmb3IgKGF1dG8mIHJhZGlvU2libGluZyA6IGlucHV0LnJhZGlvQnV0dG9uR3JvdXAoKSkg
ewotICAgICAgICAgICAgaWYgKEFjY2Vzc2liaWxpdHlPYmplY3QqIG9iamVjdCA9IGF4T2JqZWN0
Q2FjaGUoKS0+Z2V0T3JDcmVhdGUocmFkaW9TaWJsaW5nKSkKKyAgICAgICAgICAgIGlmIChBY2Nl
c3NpYmlsaXR5T2JqZWN0KiBvYmplY3QgPSBheE9iamVjdENhY2hlKCktPmdldE9yQ3JlYXRlKHJh
ZGlvU2libGluZy5wdHIoKSkpCiAgICAgICAgICAgICAgICAgbGlua2VkVUlFbGVtZW50cy5hcHBl
bmQob2JqZWN0KTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9kb20vUmFkaW9CdXR0b25Hcm91cHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2RvbS9SYWRpb0J1dHRvbkdyb3Vwcy5jcHAJKHJldmlzaW9uIDI1MTAzOCkKKysrIFNvdXJjZS9X
ZWJDb3JlL2RvbS9SYWRpb0J1dHRvbkdyb3Vwcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDIy
ICsyMywyMyBAQAogCiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgogI2luY2x1ZGUgIlJh
bmdlLmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha0hhc2hT
ZXQuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIFJhZGlvQnV0dG9uR3JvdXAgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwog
cHVibGljOgotICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVtYmVycy5pc0Vt
cHR5KCk7IH0KKyAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBtX21lbWJlcnMuY29t
cHV0ZXNFbXB0eSgpOyB9CiAgICAgYm9vbCBpc1JlcXVpcmVkKCkgY29uc3QgeyByZXR1cm4gbV9y
ZXF1aXJlZENvdW50OyB9Ci0gICAgSFRNTElucHV0RWxlbWVudCogY2hlY2tlZEJ1dHRvbigpIGNv
bnN0IHsgcmV0dXJuIG1fY2hlY2tlZEJ1dHRvbjsgfQorICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVt
ZW50PiBjaGVja2VkQnV0dG9uKCkgY29uc3QgeyByZXR1cm4gbV9jaGVja2VkQnV0dG9uLmdldCgp
OyB9CiAgICAgdm9pZCBhZGQoSFRNTElucHV0RWxlbWVudCYpOwogICAgIHZvaWQgdXBkYXRlQ2hl
Y2tlZFN0YXRlKEhUTUxJbnB1dEVsZW1lbnQmKTsKICAgICB2b2lkIHJlcXVpcmVkU3RhdGVDaGFu
Z2VkKEhUTUxJbnB1dEVsZW1lbnQmKTsKICAgICB2b2lkIHJlbW92ZShIVE1MSW5wdXRFbGVtZW50
Jik7CiAgICAgYm9vbCBjb250YWlucyhIVE1MSW5wdXRFbGVtZW50JikgY29uc3Q7Ci0gICAgVmVj
dG9yPEhUTUxJbnB1dEVsZW1lbnQqPiBtZW1iZXJzKCkgY29uc3Q7CisgICAgVmVjdG9yPFJlZjxI
VE1MSW5wdXRFbGVtZW50Pj4gbWVtYmVycygpIGNvbnN0OwogCiBwcml2YXRlOgogICAgIHZvaWQg
c2V0TmVlZHNTdHlsZVJlY2FsY0ZvckFsbEJ1dHRvbnMoKTsKQEAgLTQ2LDggKzQ3LDggQEAgcHJp
dmF0ZToKICAgICBib29sIGlzVmFsaWQoKSBjb25zdDsKICAgICB2b2lkIHNldENoZWNrZWRCdXR0
b24oSFRNTElucHV0RWxlbWVudCopOwogCi0gICAgSGFzaFNldDxIVE1MSW5wdXRFbGVtZW50Kj4g
bV9tZW1iZXJzOwotICAgIEhUTUxJbnB1dEVsZW1lbnQqIG1fY2hlY2tlZEJ1dHRvbiB7IG51bGxw
dHIgfTsKKyAgICBXZWFrSGFzaFNldDxIVE1MSW5wdXRFbGVtZW50PiBtX21lbWJlcnM7CisgICAg
V2Vha1B0cjxIVE1MSW5wdXRFbGVtZW50PiBtX2NoZWNrZWRCdXR0b247CiAgICAgc2l6ZV90IG1f
cmVxdWlyZWRDb3VudCB7IDAgfTsKIH07CiAKQEAgLTU2LDI1ICs1NywyOSBAQCBpbmxpbmUgYm9v
bCBSYWRpb0J1dHRvbkdyb3VwOjppc1ZhbGlkKCkgCiAgICAgcmV0dXJuICFpc1JlcXVpcmVkKCkg
fHwgbV9jaGVja2VkQnV0dG9uOwogfQogCi1WZWN0b3I8SFRNTElucHV0RWxlbWVudCo+IFJhZGlv
QnV0dG9uR3JvdXA6Om1lbWJlcnMoKSBjb25zdAorVmVjdG9yPFJlZjxIVE1MSW5wdXRFbGVtZW50
Pj4gUmFkaW9CdXR0b25Hcm91cDo6bWVtYmVycygpIGNvbnN0CiB7Ci0gICAgYXV0byBtZW1iZXJz
ID0gY29weVRvVmVjdG9yKG1fbWVtYmVycyk7Ci0gICAgc3RkOjpzb3J0KG1lbWJlcnMuYmVnaW4o
KSwgbWVtYmVycy5lbmQoKSwgZG9jdW1lbnRPcmRlckNvbXBhcmF0b3IpOwotICAgIHJldHVybiBt
ZW1iZXJzOworICAgIFZlY3RvcjxSZWY8SFRNTElucHV0RWxlbWVudD4+IHNvcnRlZE1lbWJlcnM7
CisgICAgZm9yIChhdXRvJiBtZW1lYmVyIDogbV9tZW1iZXJzKQorICAgICAgICBzb3J0ZWRNZW1i
ZXJzLmFwcGVuZChtZW1lYmVyKTsKKyAgICBzdGQ6OnNvcnQoc29ydGVkTWVtYmVycy5iZWdpbigp
LCBzb3J0ZWRNZW1iZXJzLmVuZCgpLCBbXShhdXRvJiBhLCBhdXRvJiBiKSB7CisgICAgICAgIHJl
dHVybiBkb2N1bWVudE9yZGVyQ29tcGFyYXRvcihhLnB0cigpLCBiLnB0cigpKTsKKyAgICB9KTsK
KyAgICByZXR1cm4gc29ydGVkTWVtYmVyczsKIH0KIAogdm9pZCBSYWRpb0J1dHRvbkdyb3VwOjpz
ZXRDaGVja2VkQnV0dG9uKEhUTUxJbnB1dEVsZW1lbnQqIGJ1dHRvbikKIHsKLSAgICBSZWZQdHI8
SFRNTElucHV0RWxlbWVudD4gb2xkQ2hlY2tlZEJ1dHRvbiA9IG1fY2hlY2tlZEJ1dHRvbjsKKyAg
ICBSZWZQdHI8SFRNTElucHV0RWxlbWVudD4gb2xkQ2hlY2tlZEJ1dHRvbiA9IG1fY2hlY2tlZEJ1
dHRvbi5nZXQoKTsKICAgICBpZiAob2xkQ2hlY2tlZEJ1dHRvbiA9PSBidXR0b24pCiAgICAgICAg
IHJldHVybjsKIAotICAgIGJvb2wgaGFkQ2hlY2tlZEJ1dHRvbiA9IG1fY2hlY2tlZEJ1dHRvbjsK
KyAgICBib29sIGhhZENoZWNrZWRCdXR0b24gPSBtX2NoZWNrZWRCdXR0b24uZ2V0KCk7CiAgICAg
Ym9vbCB3aWxsSGF2ZUNoZWNrZWRCdXR0b24gPSBidXR0b247CiAgICAgaWYgKGhhZENoZWNrZWRC
dXR0b24gIT0gd2lsbEhhdmVDaGVja2VkQnV0dG9uKQogICAgICAgICBzZXROZWVkc1N0eWxlUmVj
YWxjRm9yQWxsQnV0dG9ucygpOwogCi0gICAgbV9jaGVja2VkQnV0dG9uID0gYnV0dG9uOworICAg
IG1fY2hlY2tlZEJ1dHRvbiA9IG1ha2VXZWFrUHRyKGJ1dHRvbik7CiAgICAgaWYgKG9sZENoZWNr
ZWRCdXR0b24pCiAgICAgICAgIG9sZENoZWNrZWRCdXR0b24tPnNldENoZWNrZWQoZmFsc2UpOwog
fQpAQCAtMTAzLDcgKzEwOCw3IEBAIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6YWRkKEhUTUxJbnB1
dEVsZW0KIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6dXBkYXRlQ2hlY2tlZFN0YXRlKEhUTUxJbnB1
dEVsZW1lbnQmIGJ1dHRvbikKIHsKICAgICBBU1NFUlQoYnV0dG9uLmlzUmFkaW9CdXR0b24oKSk7
Ci0gICAgQVNTRVJUKG1fbWVtYmVycy5jb250YWlucygmYnV0dG9uKSk7CisgICAgQVNTRVJUKG1f
bWVtYmVycy5jb250YWlucyhidXR0b24pKTsKICAgICBib29sIHdhc1ZhbGlkID0gaXNWYWxpZCgp
OwogICAgIGlmIChidXR0b24uY2hlY2tlZCgpKQogICAgICAgICBzZXRDaGVja2VkQnV0dG9uKCZi
dXR0b24pOwpAQCAtMTE4LDcgKzEyMyw3IEBAIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6dXBkYXRl
Q2hlY2tlZFN0YXQKIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6cmVxdWlyZWRTdGF0ZUNoYW5nZWQo
SFRNTElucHV0RWxlbWVudCYgYnV0dG9uKQogewogICAgIEFTU0VSVChidXR0b24uaXNSYWRpb0J1
dHRvbigpKTsKLSAgICBBU1NFUlQobV9tZW1iZXJzLmNvbnRhaW5zKCZidXR0b24pKTsKKyAgICBB
U1NFUlQobV9tZW1iZXJzLmNvbnRhaW5zKGJ1dHRvbikpOwogICAgIGJvb2wgd2FzVmFsaWQgPSBp
c1ZhbGlkKCk7CiAgICAgaWYgKGJ1dHRvbi5pc1JlcXVpcmVkKCkpCiAgICAgICAgICsrbV9yZXF1
aXJlZENvdW50OwpAQCAtMTMzLDEyICsxMzgsMTEgQEAgdm9pZCBSYWRpb0J1dHRvbkdyb3VwOjpy
ZXF1aXJlZFN0YXRlQ2hhbgogdm9pZCBSYWRpb0J1dHRvbkdyb3VwOjpyZW1vdmUoSFRNTElucHV0
RWxlbWVudCYgYnV0dG9uKQogewogICAgIEFTU0VSVChidXR0b24uaXNSYWRpb0J1dHRvbigpKTsK
LSAgICBhdXRvIGl0ID0gbV9tZW1iZXJzLmZpbmQoJmJ1dHRvbik7Ci0gICAgaWYgKGl0ID09IG1f
bWVtYmVycy5lbmQoKSkKKyAgICBpZiAoIW1fbWVtYmVycy5jb250YWlucyhidXR0b24pKQogICAg
ICAgICByZXR1cm47CiAKICAgICBib29sIHdhc1ZhbGlkID0gaXNWYWxpZCgpOwotICAgIG1fbWVt
YmVycy5yZW1vdmUoaXQpOworICAgIG1fbWVtYmVycy5yZW1vdmUoYnV0dG9uKTsKICAgICBpZiAo
YnV0dG9uLmlzUmVxdWlyZWQoKSkgewogICAgICAgICBBU1NFUlQobV9yZXF1aXJlZENvdW50KTsK
ICAgICAgICAgLS1tX3JlcXVpcmVkQ291bnQ7CkBAIC0xNTEsNyArMTU1LDcgQEAgdm9pZCBSYWRp
b0J1dHRvbkdyb3VwOjpyZW1vdmUoSFRNTElucHV0RQogICAgICAgICB9CiAgICAgfQogCi0gICAg
aWYgKG1fbWVtYmVycy5pc0VtcHR5KCkpIHsKKyAgICBpZiAobV9tZW1iZXJzLmNvbXB1dGVzRW1w
dHkoKSkgewogICAgICAgICBBU1NFUlQoIW1fcmVxdWlyZWRDb3VudCk7CiAgICAgICAgIEFTU0VS
VCghbV9jaGVja2VkQnV0dG9uKTsKICAgICB9IGVsc2UgaWYgKHdhc1ZhbGlkICE9IGlzVmFsaWQo
KSkKQEAgLTE2NiwyMiArMTcwLDIyIEBAIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6cmVtb3ZlKEhU
TUxJbnB1dEUKIHZvaWQgUmFkaW9CdXR0b25Hcm91cDo6c2V0TmVlZHNTdHlsZVJlY2FsY0ZvckFs
bEJ1dHRvbnMoKQogewogICAgIGZvciAoYXV0byYgYnV0dG9uIDogbV9tZW1iZXJzKSB7Ci0gICAg
ICAgIEFTU0VSVChidXR0b24tPmlzUmFkaW9CdXR0b24oKSk7Ci0gICAgICAgIGJ1dHRvbi0+aW52
YWxpZGF0ZVN0eWxlRm9yU3VidHJlZSgpOworICAgICAgICBBU1NFUlQoYnV0dG9uLmlzUmFkaW9C
dXR0b24oKSk7CisgICAgICAgIGJ1dHRvbi5pbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlKCk7CiAg
ICAgfQogfQogCiB2b2lkIFJhZGlvQnV0dG9uR3JvdXA6OnVwZGF0ZVZhbGlkaXR5Rm9yQWxsQnV0
dG9ucygpCiB7CiAgICAgZm9yIChhdXRvJiBidXR0b24gOiBtX21lbWJlcnMpIHsKLSAgICAgICAg
QVNTRVJUKGJ1dHRvbi0+aXNSYWRpb0J1dHRvbigpKTsKLSAgICAgICAgYnV0dG9uLT51cGRhdGVW
YWxpZGl0eSgpOworICAgICAgICBBU1NFUlQoYnV0dG9uLmlzUmFkaW9CdXR0b24oKSk7CisgICAg
ICAgIGJ1dHRvbi51cGRhdGVWYWxpZGl0eSgpOwogICAgIH0KIH0KIAogYm9vbCBSYWRpb0J1dHRv
bkdyb3VwOjpjb250YWlucyhIVE1MSW5wdXRFbGVtZW50JiBidXR0b24pIGNvbnN0CiB7Ci0gICAg
cmV0dXJuIG1fbWVtYmVycy5jb250YWlucygmYnV0dG9uKTsKKyAgICByZXR1cm4gbV9tZW1iZXJz
LmNvbnRhaW5zKGJ1dHRvbik7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTE5NywxNiArMjAxLDEzIEBA
IHZvaWQgUmFkaW9CdXR0b25Hcm91cHM6OmFkZEJ1dHRvbihIVE1MSW4KICAgICBpZiAoZWxlbWVu
dC5uYW1lKCkuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIW1fbmFtZVRv
R3JvdXBNYXApCi0gICAgICAgIG1fbmFtZVRvR3JvdXBNYXAgPSBtYWtlVW5pcXVlPE5hbWVUb0dy
b3VwTWFwPigpOwotCi0gICAgYXV0byYgZ3JvdXAgPSBtX25hbWVUb0dyb3VwTWFwLT5hZGQoZWxl
bWVudC5uYW1lKCkuaW1wbCgpLCBudWxscHRyKS5pdGVyYXRvci0+dmFsdWU7CisgICAgYXV0byYg
Z3JvdXAgPSBtX25hbWVUb0dyb3VwTWFwLmFkZChlbGVtZW50Lm5hbWUoKS5pbXBsKCksIG51bGxw
dHIpLml0ZXJhdG9yLT52YWx1ZTsKICAgICBpZiAoIWdyb3VwKQogICAgICAgICBncm91cCA9IG1h
a2VVbmlxdWU8UmFkaW9CdXR0b25Hcm91cD4oKTsKICAgICBncm91cC0+YWRkKGVsZW1lbnQpOwog
fQogCi1WZWN0b3I8SFRNTElucHV0RWxlbWVudCo+IFJhZGlvQnV0dG9uR3JvdXBzOjpncm91cE1l
bWJlcnMoY29uc3QgSFRNTElucHV0RWxlbWVudCYgZWxlbWVudCkgY29uc3QKK1ZlY3RvcjxSZWY8
SFRNTElucHV0RWxlbWVudD4+IFJhZGlvQnV0dG9uR3JvdXBzOjpncm91cE1lbWJlcnMoY29uc3Qg
SFRNTElucHV0RWxlbWVudCYgZWxlbWVudCkgY29uc3QKIHsKICAgICBBU1NFUlQoZWxlbWVudC5p
c1JhZGlvQnV0dG9uKCkpOwogICAgIGlmICghZWxlbWVudC5pc1JhZGlvQnV0dG9uKCkpCkBAIC0y
MTYsMTAgKzIxNyw3IEBAIFZlY3RvcjxIVE1MSW5wdXRFbGVtZW50Kj4gUmFkaW9CdXR0b25Hcm8K
ICAgICBpZiAoIW5hbWUpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAgICBpZiAoIW1fbmFtZVRv
R3JvdXBNYXApCi0gICAgICAgIHJldHVybiB7IH07Ci0gICAgCi0gICAgYXV0byogZ3JvdXAgPSBt
X25hbWVUb0dyb3VwTWFwLT5nZXQobmFtZSk7CisgICAgYXV0byogZ3JvdXAgPSBtX25hbWVUb0dy
b3VwTWFwLmdldChuYW1lKTsKICAgICBpZiAoIWdyb3VwKQogICAgICAgICByZXR1cm4geyB9Owog
ICAgIHJldHVybiBncm91cC0+bWVtYmVycygpOwpAQCAtMjMwLDEwICsyMjgsNyBAQCB2b2lkIFJh
ZGlvQnV0dG9uR3JvdXBzOjp1cGRhdGVDaGVja2VkU3RhCiAgICAgQVNTRVJUKGVsZW1lbnQuaXNS
YWRpb0J1dHRvbigpKTsKICAgICBpZiAoZWxlbWVudC5uYW1lKCkuaXNFbXB0eSgpKQogICAgICAg
ICByZXR1cm47Ci0gICAgQVNTRVJUKG1fbmFtZVRvR3JvdXBNYXApOwotICAgIGlmICghbV9uYW1l
VG9Hcm91cE1hcCkKLSAgICAgICAgcmV0dXJuOwotICAgIG1fbmFtZVRvR3JvdXBNYXAtPmdldChl
bGVtZW50Lm5hbWUoKS5pbXBsKCkpLT51cGRhdGVDaGVja2VkU3RhdGUoZWxlbWVudCk7CisgICAg
bV9uYW1lVG9Hcm91cE1hcC5nZXQoZWxlbWVudC5uYW1lKCkuaW1wbCgpKS0+dXBkYXRlQ2hlY2tl
ZFN0YXRlKGVsZW1lbnQpOwogfQogCiB2b2lkIFJhZGlvQnV0dG9uR3JvdXBzOjpyZXF1aXJlZFN0
YXRlQ2hhbmdlZChIVE1MSW5wdXRFbGVtZW50JiBlbGVtZW50KQpAQCAtMjQxLDIwICsyMzYsMTUg
QEAgdm9pZCBSYWRpb0J1dHRvbkdyb3Vwczo6cmVxdWlyZWRTdGF0ZUNoYQogICAgIEFTU0VSVChl
bGVtZW50LmlzUmFkaW9CdXR0b24oKSk7CiAgICAgaWYgKGVsZW1lbnQubmFtZSgpLmlzRW1wdHko
KSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChtX25hbWVUb0dyb3VwTWFwKTsKLSAgICBp
ZiAoIW1fbmFtZVRvR3JvdXBNYXApCi0gICAgICAgIHJldHVybjsKLSAgICBhdXRvKiBncm91cCA9
IG1fbmFtZVRvR3JvdXBNYXAtPmdldChlbGVtZW50Lm5hbWUoKS5pbXBsKCkpOworICAgIGF1dG8q
IGdyb3VwID0gbV9uYW1lVG9Hcm91cE1hcC5nZXQoZWxlbWVudC5uYW1lKCkuaW1wbCgpKTsKICAg
ICBBU1NFUlQoZ3JvdXApOwogICAgIGdyb3VwLT5yZXF1aXJlZFN0YXRlQ2hhbmdlZChlbGVtZW50
KTsKIH0KIAotSFRNTElucHV0RWxlbWVudCogUmFkaW9CdXR0b25Hcm91cHM6OmNoZWNrZWRCdXR0
b25Gb3JHcm91cChjb25zdCBBdG9tU3RyaW5nJiBuYW1lKSBjb25zdAorUmVmUHRyPEhUTUxJbnB1
dEVsZW1lbnQ+IFJhZGlvQnV0dG9uR3JvdXBzOjpjaGVja2VkQnV0dG9uRm9yR3JvdXAoY29uc3Qg
QXRvbVN0cmluZyYgbmFtZSkgY29uc3QKIHsKLSAgICBpZiAoIW1fbmFtZVRvR3JvdXBNYXApCi0g
ICAgICAgIHJldHVybiBudWxscHRyOwotICAgIG1fbmFtZVRvR3JvdXBNYXAtPmNoZWNrQ29uc2lz
dGVuY3koKTsKLSAgICBSYWRpb0J1dHRvbkdyb3VwKiBncm91cCA9IG1fbmFtZVRvR3JvdXBNYXAt
PmdldChuYW1lLmltcGwoKSk7CisgICAgbV9uYW1lVG9Hcm91cE1hcC5jaGVja0NvbnNpc3RlbmN5
KCk7CisgICAgUmFkaW9CdXR0b25Hcm91cCogZ3JvdXAgPSBtX25hbWVUb0dyb3VwTWFwLmdldChu
YW1lLmltcGwoKSk7CiAgICAgcmV0dXJuIGdyb3VwID8gZ3JvdXAtPmNoZWNrZWRCdXR0b24oKSA6
IG51bGxwdHI7CiB9CiAKQEAgLTI2Miw5ICsyNTIsOSBAQCBib29sIFJhZGlvQnV0dG9uR3JvdXBz
OjpoYXNDaGVja2VkQnV0dG9uCiB7CiAgICAgQVNTRVJUKGVsZW1lbnQuaXNSYWRpb0J1dHRvbigp
KTsKICAgICBjb25zdCBBdG9tU3RyaW5nJiBuYW1lID0gZWxlbWVudC5uYW1lKCk7Ci0gICAgaWYg
KG5hbWUuaXNFbXB0eSgpIHx8ICFtX25hbWVUb0dyb3VwTWFwKQorICAgIGlmIChuYW1lLmlzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuIGVsZW1lbnQuY2hlY2tlZCgpOwotICAgIHJldHVybiBtX25h
bWVUb0dyb3VwTWFwLT5nZXQobmFtZS5pbXBsKCkpLT5jaGVja2VkQnV0dG9uKCk7CisgICAgcmV0
dXJuIG1fbmFtZVRvR3JvdXBNYXAuZ2V0KG5hbWUuaW1wbCgpKS0+Y2hlY2tlZEJ1dHRvbigpOwog
fQogCiBib29sIFJhZGlvQnV0dG9uR3JvdXBzOjppc0luUmVxdWlyZWRHcm91cChIVE1MSW5wdXRF
bGVtZW50JiBlbGVtZW50KSBjb25zdApAQCAtMjcyLDkgKzI2Miw3IEBAIGJvb2wgUmFkaW9CdXR0
b25Hcm91cHM6OmlzSW5SZXF1aXJlZEdyb3UKICAgICBBU1NFUlQoZWxlbWVudC5pc1JhZGlvQnV0
dG9uKCkpOwogICAgIGlmIChlbGVtZW50Lm5hbWUoKS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICBpZiAoIW1fbmFtZVRvR3JvdXBNYXApCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICBhdXRvKiBncm91cCA9IG1fbmFtZVRvR3JvdXBNYXAtPmdldChlbGVtZW50Lm5hbWUo
KS5pbXBsKCkpOworICAgIGF1dG8qIGdyb3VwID0gbV9uYW1lVG9Hcm91cE1hcC5nZXQoZWxlbWVu
dC5uYW1lKCkuaW1wbCgpKTsKICAgICByZXR1cm4gZ3JvdXAgJiYgZ3JvdXAtPmlzUmVxdWlyZWQo
KSAmJiBncm91cC0+Y29udGFpbnMoZWxlbWVudCk7CiB9CiAKQEAgLTI4MywyMiArMjcxLDE0IEBA
IHZvaWQgUmFkaW9CdXR0b25Hcm91cHM6OnJlbW92ZUJ1dHRvbihIVE0KICAgICBBU1NFUlQoZWxl
bWVudC5pc1JhZGlvQnV0dG9uKCkpOwogICAgIGlmIChlbGVtZW50Lm5hbWUoKS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybjsKLSAgICBpZiAoIW1fbmFtZVRvR3JvdXBNYXApCi0gICAgICAgIHJl
dHVybjsKIAotICAgIG1fbmFtZVRvR3JvdXBNYXAtPmNoZWNrQ29uc2lzdGVuY3koKTsKLSAgICBh
dXRvIGl0ID0gbV9uYW1lVG9Hcm91cE1hcC0+ZmluZChlbGVtZW50Lm5hbWUoKS5pbXBsKCkpOwot
ICAgIGlmIChpdCA9PSBtX25hbWVUb0dyb3VwTWFwLT5lbmQoKSkKKyAgICBtX25hbWVUb0dyb3Vw
TWFwLmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICBhdXRvIGl0ID0gbV9uYW1lVG9Hcm91cE1hcC5m
aW5kKGVsZW1lbnQubmFtZSgpLmltcGwoKSk7CisgICAgaWYgKGl0ID09IG1fbmFtZVRvR3JvdXBN
YXAuZW5kKCkpCiAgICAgICAgIHJldHVybjsKICAgICBpdC0+dmFsdWUtPnJlbW92ZShlbGVtZW50
KTsKLSAgICBpZiAoaXQtPnZhbHVlLT5pc0VtcHR5KCkpIHsKLSAgICAgICAgLy8gRklYTUU6IFdl
IG1heSBza2lwIGRlYWxsb2NhdGluZyB0aGUgZW1wdHkgUmFkaW9CdXR0b25Hcm91cCBmb3IKLSAg
ICAgICAgLy8gcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQuIElmIHdlIGRvIHNvLCB3ZSBuZWVkIHRv
IGNoYW5nZSB0aGUga2V5IHR5cGUKLSAgICAgICAgLy8gb2YgbV9uYW1lVG9Hcm91cE1hcCBmcm9t
IEF0b21TdHJpbmdJbXBsKiB0byBSZWZQdHI8QXRvbVN0cmluZ0ltcGw+LgotICAgICAgICBtX25h
bWVUb0dyb3VwTWFwLT5yZW1vdmUoaXQpOwotICAgICAgICBpZiAobV9uYW1lVG9Hcm91cE1hcC0+
aXNFbXB0eSgpKQotICAgICAgICAgICAgbV9uYW1lVG9Hcm91cE1hcCA9IG51bGxwdHI7Ci0gICAg
fQorICAgIGlmIChpdC0+dmFsdWUtPmlzRW1wdHkoKSkKKyAgICAgICAgbV9uYW1lVG9Hcm91cE1h
cC5yZW1vdmUoaXQpOwogfQogCiB9IC8vIG5hbWVzcGFjZQpJbmRleDogU291cmNlL1dlYkNvcmUv
ZG9tL1JhZGlvQnV0dG9uR3JvdXBzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9t
L1JhZGlvQnV0dG9uR3JvdXBzLmgJKHJldmlzaW9uIDI1MTAzOCkKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9SYWRpb0J1dHRvbkdyb3Vwcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSwxNCArMzksMTQg
QEAgcHVibGljOgogICAgIHZvaWQgdXBkYXRlQ2hlY2tlZFN0YXRlKEhUTUxJbnB1dEVsZW1lbnQm
KTsKICAgICB2b2lkIHJlcXVpcmVkU3RhdGVDaGFuZ2VkKEhUTUxJbnB1dEVsZW1lbnQmKTsKICAg
ICB2b2lkIHJlbW92ZUJ1dHRvbihIVE1MSW5wdXRFbGVtZW50Jik7Ci0gICAgSFRNTElucHV0RWxl
bWVudCogY2hlY2tlZEJ1dHRvbkZvckdyb3VwKGNvbnN0IEF0b21TdHJpbmcmIGdyb3VwTmFtZSkg
Y29uc3Q7CisgICAgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+IGNoZWNrZWRCdXR0b25Gb3JHcm91
cChjb25zdCBBdG9tU3RyaW5nJiBncm91cE5hbWUpIGNvbnN0OwogICAgIGJvb2wgaGFzQ2hlY2tl
ZEJ1dHRvbihjb25zdCBIVE1MSW5wdXRFbGVtZW50JikgY29uc3Q7CiAgICAgYm9vbCBpc0luUmVx
dWlyZWRHcm91cChIVE1MSW5wdXRFbGVtZW50JikgY29uc3Q7Ci0gICAgVmVjdG9yPEhUTUxJbnB1
dEVsZW1lbnQqPiBncm91cE1lbWJlcnMoY29uc3QgSFRNTElucHV0RWxlbWVudCYpIGNvbnN0Owor
ICAgIFZlY3RvcjxSZWY8SFRNTElucHV0RWxlbWVudD4+IGdyb3VwTWVtYmVycyhjb25zdCBIVE1M
SW5wdXRFbGVtZW50JikgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPEF0
b21TdHJpbmdJbXBsKiwgc3RkOjp1bmlxdWVfcHRyPFJhZGlvQnV0dG9uR3JvdXA+PiBOYW1lVG9H
cm91cE1hcDsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8TmFtZVRvR3JvdXBNYXA+IG1fbmFtZVRvR3Jv
dXBNYXA7CisgICAgdHlwZWRlZiBIYXNoTWFwPEF0b21TdHJpbmcsIHN0ZDo6dW5pcXVlX3B0cjxS
YWRpb0J1dHRvbkdyb3VwPj4gTmFtZVRvR3JvdXBNYXA7CisgICAgTmFtZVRvR3JvdXBNYXAgbV9u
YW1lVG9Hcm91cE1hcDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAkocmV2aXNpb24gMjUxMDM4KQorKysg
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTg5OCw3ICsxODk4LDcgQEAgYm9vbCBIVE1MSW5wdXRFbGVtZW50Ojppc0luUmVxdWlyZWRS
YWRpbwogICAgIHJldHVybiBmYWxzZTsKIH0KIAotVmVjdG9yPEhUTUxJbnB1dEVsZW1lbnQqPiBI
VE1MSW5wdXRFbGVtZW50OjpyYWRpb0J1dHRvbkdyb3VwKCkgY29uc3QKK1ZlY3RvcjxSZWY8SFRN
TElucHV0RWxlbWVudD4+IEhUTUxJbnB1dEVsZW1lbnQ6OnJhZGlvQnV0dG9uR3JvdXAoKSBjb25z
dAogewogICAgIFJhZGlvQnV0dG9uR3JvdXBzKiBidXR0b25zID0gcmFkaW9CdXR0b25Hcm91cHMo
KTsKICAgICBpZiAoIWJ1dHRvbnMpCkBAIC0xOTA2LDcgKzE5MDYsNyBAQCBWZWN0b3I8SFRNTElu
cHV0RWxlbWVudCo+IEhUTUxJbnB1dEVsZW1lCiAgICAgcmV0dXJuIGJ1dHRvbnMtPmdyb3VwTWVt
YmVycygqdGhpcyk7CiB9CiAKLUhUTUxJbnB1dEVsZW1lbnQqIEhUTUxJbnB1dEVsZW1lbnQ6OmNo
ZWNrZWRSYWRpb0J1dHRvbkZvckdyb3VwKCkgY29uc3QKK1JlZlB0cjxIVE1MSW5wdXRFbGVtZW50
PiBIVE1MSW5wdXRFbGVtZW50OjpjaGVja2VkUmFkaW9CdXR0b25Gb3JHcm91cCgpIGNvbnN0CiB7
CiAgICAgaWYgKFJhZGlvQnV0dG9uR3JvdXBzKiBidXR0b25zID0gcmFkaW9CdXR0b25Hcm91cHMo
KSkKICAgICAgICAgcmV0dXJuIGJ1dHRvbnMtPmNoZWNrZWRCdXR0b25Gb3JHcm91cChuYW1lKCkp
OwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgJKHJldmlzaW9uIDI1
MTAzOCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNzksOCArMjc5LDggQEAgcHVibGljOgogICAgIHZvaWQgbGlzdEF0dHJpYnV0
ZVRhcmdldENoYW5nZWQoKTsKICNlbmRpZgogCi0gICAgVmVjdG9yPEhUTUxJbnB1dEVsZW1lbnQq
PiByYWRpb0J1dHRvbkdyb3VwKCkgY29uc3Q7Ci0gICAgSFRNTElucHV0RWxlbWVudCogY2hlY2tl
ZFJhZGlvQnV0dG9uRm9yR3JvdXAoKSBjb25zdDsKKyAgICBWZWN0b3I8UmVmPEhUTUxJbnB1dEVs
ZW1lbnQ+PiByYWRpb0J1dHRvbkdyb3VwKCkgY29uc3Q7CisgICAgUmVmUHRyPEhUTUxJbnB1dEVs
ZW1lbnQ+IGNoZWNrZWRSYWRpb0J1dHRvbkZvckdyb3VwKCkgY29uc3Q7CiAgICAgYm9vbCBpc0lu
UmVxdWlyZWRSYWRpb0J1dHRvbkdyb3VwKCk7CiAgICAgLy8gUmV0dXJucyBudWxsIGlmIHRoaXMg
aXNuJ3QgYXNzb2NpYXRlZCB3aXRoIGFueSByYWRpbyBidXR0b24gZ3JvdXAuCiAgICAgUmFkaW9C
dXR0b25Hcm91cHMqIHJhZGlvQnV0dG9uR3JvdXBzKCkgY29uc3Q7Cg==
</data>
<flag name="review"
          id="396668"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
      

    </bug>

</bugzilla>