<?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>133597</bug_id>
          
          <creation_ts>2014-06-06 18:21:32 -0700</creation_ts>
          <short_desc>Improve CSSPrimitiveValue::customCSSText for ARMv7</short_desc>
          <delta_ts>2014-06-09 17:23:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kling</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1013902</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-06 18:21:32 -0700</bug_when>
    <thetext>Improve CSSPrimitiveValue::customCSSText for ARMv7</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013906</commentid>
    <comment_count>1</comment_count>
      <attachid>232642</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-06 18:43:08 -0700</bug_when>
    <thetext>Created attachment 232642
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013907</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-06-06 18:44:26 -0700</bug_when>
    <thetext>Attachment 232642 did not pass style-queue:


ERROR: Source/WTF/wtf/text/WTFString.h:118:  Should be indented on a separate line, with the colon or comma first on that line.  [whitespace/indent] [4]
Total errors found: 1 in 6 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>1013923</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-06 20:40:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/17209984&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014223</commentid>
    <comment_count>4</comment_count>
      <attachid>232642</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-06-09 14:11:40 -0700</bug_when>
    <thetext>Comment on attachment 232642
Patch

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

r=me

&gt; Source/WebCore/css/CSSPrimitiveValue.cpp:1151
&gt; +        return cssTextCache().get(this);

We should make sure to do cssTextCache() only once in this function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014290</commentid>
    <comment_count>5</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-09 17:23:17 -0700</bug_when>
    <thetext>Committed r169731: &lt;http://trac.webkit.org/changeset/169731&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232642</attachid>
            <date>2014-06-06 18:43:08 -0700</date>
            <delta_ts>2014-06-09 14:11:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133597-20140606184242.patch</filename>
            <type>text/plain</type>
            <size>23502</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY5NjI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGY1MDFlNmFlYTVlZWNiNjQ3ZjkxNzg3
ZjBlNDhmZDU3OTBhOTI4Y2UuLjQ1NmNhNjAyNDc0N2U3Zjc3M2M3M2NlZjJmOGM0YzAyMGRkN2Ni
ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTQtMDYtMDYgIEJlbmphbWluIFBvdWxhaW4gIDxi
cG91bGFpbkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wcm92ZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Y3VzdG9tQ1NTVGV4dCBmb3IgQVJNdjcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzMzU5NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1JlZlB0ci5oOgorICAgICAgICAoV1RGOjpSZWZQdHI8VD46
OlJlZlB0cik6CisgICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmg6CisgICAgICAgIChXVEY6
OlN0cmluZzo6U3RyaW5nKToKKwogMjAxNC0wNi0wNCAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEVuYWJsZSBXZWJHTCBvbiBXaW5kb3dzLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGU3ZGFmYWUxODI1ZTU2OGE3ZDA5NjQ3NTdiYmMwYWViMDhiZWM0N2YuLmJj
ZjBlYzliOGI4YTgxOTZiMzU0YmVlMDVmNGI3MzBmNTVlZTA4NDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOSBAQAorMjAxNC0wNi0wNiAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxl
LmNvbT4KKworICAgICAgICBJbXByb3ZlIENTU1ByaW1pdGl2ZVZhbHVlOjpjdXN0b21DU1NUZXh0
IGZvciBBUk12NworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTMzNTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgT24gaW1ndXIsIHNvbWUgc2NyaXB0IGlzIHVwZGF0aW5nIHNvbWUgbGF5b3V0IG9uIHRpbWVy
cyBhbmQgb24gc2Nyb2xsLgorCisgICAgICAgIEl0IGxvb2tzIGxpa2UgQ1NTUHJpbWl0aXZlVmFs
dWU6OmN1c3RvbUNTU1RleHQoKSBpcyBhIGxpdHRsZSBjb25zdHJhaW5lZAorICAgICAgICBieSB0
aGUgaW5zdHJ1Y3Rpb24gY2FjaGUgb24gQVJNdjcuIFRoaXMgcGF0Y2ggaW1wcm92ZSB0aGUgc2l0
dWF0aW9uIGEgYml0LgorCisgICAgICAgIEZpcnN0LCB0aGUgY3JlYXRpb24gb2YgdGhlIHN0cmlu
ZyBpdHNlbGYgaXMgY2hhbmdlZCB0byBnbyBmcm9tIHR3byBhbGxvY2F0aW9uIHRvIG9uZS4KKyAg
ICAgICAgUHJldmlvdXNseSwgd2Ugd291bGQgYWxsb2NhdGUgYSBTdHJpbmdCdWZmZXIgYW5kIGFk
b3B0IGl0LiBOb3cgd2UgYWxsb2NhdGUgYSBTdHJpbmdJbXBsCisgICAgICAgIGRpcmVjdGx5IHdp
dGggdGhlIGlubGluZSBidWZmZXIuCisKKyAgICAgICAgVGhlIHNlY29uZCBpc3N1ZSBpcyB0aGF0
IHRoZSBjb21waWxlciB3YXMgZ2VuZXJhdGluZyBhIHJlYWwgY29weSBjb25zdHJ1Y3RvciBmb3Ig
ZXZlcnkKKyAgICAgICAgYXNzaWdubWVudCBvZiB0aGUgInRleHQiIHZhcmlhYmxlIChsaWtlbHkg
YmVjYXVzZSB0aGUgdmFyaWFibGUgc3BhbiBpcyBzbyBsYXJnZSkuCisgICAgICAgIFRoaXMgd2Fz
IHNvbHZlZCBieSBtb3ZpbmcgdGhlIHN0cmluZyBjcmVhdGluZyBpbnRvIGEgc2VwYXJhdGUgZnVu
Y3Rpb24gKHRvIGZpeCB0aGUgc3BhbikKKyAgICAgICAgYW5kIGJlaW5nIGNhcmVmdWwgd2l0aCBw
YXNzaW5nIFBhc3NSZWY8U3RyaW5nSW1wbD4gYXJvdW5kLgorCisgICAgICAgIFRoZW4gdGhlcmUg
d2FzIHRoZSBwcm9ibGVtIHRoYXQgdGhlIGNvbXBpbGVyIHdhcyBhIGxpdHRsZSB0b28gYWdncmVz
c2l2ZSB3aXRoIGlubGluaW5nCisgICAgICAgIHdoaWNoIGNhdXNlZCBlYWNoICJjYXNlIiB0byBy
ZXBlYXQgdGhlIHNhbWUgcHJvbG9ndWUgYW5kIGVwaWxvZ3VlIGJlZm9yZSBmb3JtYXRWYWx1ZSgp
LgorICAgICAgICBUaGlzIHdhcyBzb2x2ZWQgYnkgYWRkaW5nIGZvcm1hdE51bWJlclZhbHVlKCkg
d2l0aCBORVZFUl9JTkxJTkUgdG8gaGF2ZSB0aGUgcHJvbG9ndWUvZXBpbG9ndWUKKyAgICAgICAg
aW4gYSBzaW5nbGUgcGxhY2UuCisKKyAgICAgICAgT24gb2xkZXIgZGV2aWNlLCB0aGF0J3MgYWJv
dXQgMyUgaW1wcm92ZW1lbnQgb24gc3R5bGUgYWNjZXNzLiBPbiBtb2Rlcm4gQVJNNjQveDg2XzY0
CisgICAgICAgIHRoZXJlIGlzIG5vIG5vdGljZWFibGUgZGlmZmVyZW5jZS4KKworICAgICAgICAq
IGNzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRp
dmVWYWx1ZTo6Zm9ybWF0TnVtYmVyVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0
aXZlVmFsdWU6OmZvcm1hdE51bWJlckZvcmN1c3RvbUNTU1RleHQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmN1c3RvbUNTU1RleHQpOgorICAgICAgICAoV2ViQ29yZTo6
Zm9ybWF0TnVtYmVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUu
aDoKKwogMjAxNC0wNi0wNSAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4K
IAogICAgICAgICBbaU9TXVtXSzJdIEFkZCBkZXZpY2Ugb3JpZW50YXRpb24KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvd3RmL1JlZlB0ci5oIGIvU291cmNlL1dURi93dGYvUmVmUHRyLmgKaW5kZXgg
ZjI2MTA5MzUyZWYxNDkzYWJhN2U5NjVkYjA4MzU5ZmNiZWJhYWMxZC4uZDYyMjJjOTkzMDA1ZTQ5
OTE0NDVkZDZjMGY3ZmM4NDEwZWVjMTdlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUmVm
UHRyLmgKKysrIGIvU291cmNlL1dURi93dGYvUmVmUHRyLmgKQEAgLTQ2LDcgKzQ2LDcgQEAgbmFt
ZXNwYWNlIFdURiB7CiAgICAgICAgIC8vIFNlZSBjb21tZW50cyBpbiBQYXNzUmVmUHRyLmggZm9y
IGFuIGV4cGxhbmF0aW9uIG9mIHdoeSB0aGlzIHRha2VzIGEgY29uc3QgcmVmZXJlbmNlLgogICAg
ICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBSZWZQdHIoY29uc3QgUGFzc1JlZlB0cjxVPiYpOwog
Ci0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFU+IFJlZlB0cihQYXNzUmVmPFU+KTsKKyAgICAg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVT4gUmVmUHRyKFBhc3NSZWY8VT4mJik7CiAKICAgICAgICAg
Ly8gSGFzaCB0YWJsZSBkZWxldGVkIHZhbHVlcywgd2hpY2ggYXJlIG9ubHkgY29uc3RydWN0ZWQg
YW5kIG5ldmVyIGNvcGllZCBvciBkZXN0cm95ZWQuCiAgICAgICAgIFJlZlB0cihIYXNoVGFibGVE
ZWxldGVkVmFsdWVUeXBlKSA6IG1fcHRyKGhhc2hUYWJsZURlbGV0ZWRWYWx1ZSgpKSB7IH0KQEAg
LTkxLDcgKzkxLDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgewogICAgIH0KIAotICAgIHRlbXBs
YXRlPHR5cGVuYW1lIFQ+IHRlbXBsYXRlPHR5cGVuYW1lIFU+IGlubGluZSBSZWZQdHI8VD46OlJl
ZlB0cihQYXNzUmVmPFU+IHJlZmVyZW5jZSkKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiB0ZW1w
bGF0ZTx0eXBlbmFtZSBVPiBpbmxpbmUgUmVmUHRyPFQ+OjpSZWZQdHIoUGFzc1JlZjxVPiYmIHJl
ZmVyZW5jZSkKICAgICAgICAgOiBtX3B0cigmcmVmZXJlbmNlLmxlYWtSZWYoKSkKICAgICB7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaCBiL1NvdXJj
ZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKaW5kZXggYzRmNjlhNzQ5Y2ZkNDgyOGZjOGU0NmNh
ZmU2M2RhMmVhNmRlMzEwYi4uOGViMjVjOWI2ZGIxN2M0Yzk0ODQzZjhlMTQwMTRlZTc1YWVkN2Vk
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAorKysgYi9Tb3Vy
Y2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCkBAIC0xMTUsNyArMTE1LDcgQEAgcHVibGljOgog
ICAgIFN0cmluZyhTdHJpbmdJbXBsJiBpbXBsKSA6IG1faW1wbCgmaW1wbCkgeyB9CiAgICAgU3Ry
aW5nKFN0cmluZ0ltcGwqIGltcGwpIDogbV9pbXBsKGltcGwpIHsgfQogICAgIFN0cmluZyhQYXNz
UmVmUHRyPFN0cmluZ0ltcGw+IGltcGwpIDogbV9pbXBsKGltcGwpIHsgfQotICAgIFN0cmluZyhQ
YXNzUmVmPFN0cmluZ0ltcGw+IGltcGwpIDogbV9pbXBsKHN0ZDo6bW92ZShpbXBsKSkgeyB9Cisg
ICAgU3RyaW5nKFBhc3NSZWY8U3RyaW5nSW1wbD4mJiBpbXBsKSA6IG1faW1wbChzdGQ6OmZvcndh
cmQ8UGFzc1JlZjxTdHJpbmdJbXBsPj4oaW1wbCkpIHsgfQogICAgIFN0cmluZyhSZWZQdHI8U3Ry
aW5nSW1wbD4mJiBpbXBsKSA6IG1faW1wbChpbXBsKSB7IH0KIAogICAgIC8vIENvbnN0cnVjdCBh
IHN0cmluZyBmcm9tIGEgY29uc3RhbnQgc3RyaW5nIGxpdGVyYWwuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlLmNwcAppbmRleCA2NDAyNjJmNWRmZGM3YTc3MGUwN2JlNjE5NTlk
MjRkZmEyYThiYjMzLi5iOTQ3ZmZhYzJmOWRkMTRmNGZhYzM0NGRhMzMwMmUwMmE1YWI0ZGRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAKQEAgLTkyMSwyNzkgKzky
MSwyNDEgQEAgUGFpciogQ1NTUHJpbWl0aXZlVmFsdWU6OmdldFBhaXJWYWx1ZShFeGNlcHRpb25D
b2RlJiBlYykgY29uc3QKICAgICByZXR1cm4gbV92YWx1ZS5wYWlyOwogfQogCi1zdGF0aWMgU3Ry
aW5nIGZvcm1hdE51bWJlcihkb3VibGUgbnVtYmVyLCBjb25zdCBjaGFyKiBzdWZmaXgsIHVuc2ln
bmVkIHN1ZmZpeExlbmd0aCkKK05FVkVSX0lOTElORSBQYXNzUmVmPFN0cmluZ0ltcGw+IENTU1By
aW1pdGl2ZVZhbHVlOjpmb3JtYXROdW1iZXJWYWx1ZShjb25zdCBjaGFyKiBzdWZmaXgsIHVuc2ln
bmVkIHN1ZmZpeExlbmd0aCkgY29uc3QKIHsKLSAgICBEZWNpbWFsTnVtYmVyIGRlY2ltYWwobnVt
YmVyKTsKKyAgICBEZWNpbWFsTnVtYmVyIGRlY2ltYWwobV92YWx1ZS5udW0pOwogCi0gICAgU3Ry
aW5nQnVmZmVyPExDaGFyPiBidWZmZXIoZGVjaW1hbC5idWZmZXJMZW5ndGhGb3JTdHJpbmdEZWNp
bWFsKCkgKyBzdWZmaXhMZW5ndGgpOwotICAgIHVuc2lnbmVkIGxlbmd0aCA9IGRlY2ltYWwudG9T
dHJpbmdEZWNpbWFsKGJ1ZmZlci5jaGFyYWN0ZXJzKCksIGJ1ZmZlci5sZW5ndGgoKSk7Ci0gICAg
QVNTRVJUKGxlbmd0aCArIHN1ZmZpeExlbmd0aCA9PSBidWZmZXIubGVuZ3RoKCkpOworICAgIHVu
c2lnbmVkIGJ1ZmZlckxlbmd0aCA9IGRlY2ltYWwuYnVmZmVyTGVuZ3RoRm9yU3RyaW5nRGVjaW1h
bCgpICsgc3VmZml4TGVuZ3RoOworICAgIExDaGFyKiBidWZmZXI7CisgICAgUGFzc1JlZjxTdHJp
bmdJbXBsPiBzdHJpbmcgPSBTdHJpbmdJbXBsOjpjcmVhdGVVbmluaXRpYWxpemVkKGJ1ZmZlckxl
bmd0aCwgYnVmZmVyKTsKKworICAgIHVuc2lnbmVkIGxlbmd0aCA9IGRlY2ltYWwudG9TdHJpbmdE
ZWNpbWFsKGJ1ZmZlciwgYnVmZmVyTGVuZ3RoKTsKKyAgICBBU1NFUlQobGVuZ3RoID09IHN0cmlu
Zy5sZW5ndGgoKSk7CiAKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc3VmZml4TGVuZ3Ro
OyArK2kpCiAgICAgICAgIGJ1ZmZlcltsZW5ndGggKyBpXSA9IHN0YXRpY19jYXN0PExDaGFyPihz
dWZmaXhbaV0pOwogCi0gICAgcmV0dXJuIFN0cmluZzo6YWRvcHQoYnVmZmVyKTsKKyAgICByZXR1
cm4gc3RkOjptb3ZlKHN0cmluZyk7CiB9CiAKIHRlbXBsYXRlIDx1bnNpZ25lZCBjaGFyYWN0ZXJD
b3VudD4KLUFMV0FZU19JTkxJTkUgc3RhdGljIFN0cmluZyBmb3JtYXROdW1iZXIoZG91YmxlIG51
bWJlciwgY29uc3QgY2hhciAoJmNoYXJhY3RlcnMpW2NoYXJhY3RlckNvdW50XSkKK0FMV0FZU19J
TkxJTkUgUGFzc1JlZjxTdHJpbmdJbXBsPiBDU1NQcmltaXRpdmVWYWx1ZTo6Zm9ybWF0TnVtYmVy
VmFsdWUoY29uc3QgY2hhciAoJmNoYXJhY3RlcnMpW2NoYXJhY3RlckNvdW50XSkgY29uc3QKIHsK
LSAgICByZXR1cm4gZm9ybWF0TnVtYmVyKG51bWJlciwgY2hhcmFjdGVycywgY2hhcmFjdGVyQ291
bnQgLSAxKTsKKyAgICByZXR1cm4gc3RkOjptb3ZlKGZvcm1hdE51bWJlclZhbHVlKGNoYXJhY3Rl
cnMsIGNoYXJhY3RlckNvdW50IC0gMSkpOwogfQogCi1TdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6
OmN1c3RvbUNTU1RleHQoKSBjb25zdAorQUxXQVlTX0lOTElORSBTdHJpbmcgQ1NTUHJpbWl0aXZl
VmFsdWU6OmZvcm1hdE51bWJlckZvcmN1c3RvbUNTU1RleHQoKSBjb25zdAogewotICAgIC8vIEZJ
WE1FOiByZXR1cm4gdGhlIG9yaWdpbmFsIHZhbHVlIGluc3RlYWQgb2YgYSBnZW5lcmF0ZWQgb25l
IChlLmcuIGNvbG9yCi0gICAgLy8gbmFtZSBpZiBpdCB3YXMgc3BlY2lmaWVkKSAtIGNoZWNrIHdo
YXQgc3BlYyBzYXlzIGFib3V0IHRoaXMKLQotICAgIGlmIChtX2hhc0NhY2hlZENTU1RleHQpIHsK
LSAgICAgICAgQVNTRVJUKGNzc1RleHRDYWNoZSgpLmNvbnRhaW5zKHRoaXMpKTsKLSAgICAgICAg
cmV0dXJuIGNzc1RleHRDYWNoZSgpLmdldCh0aGlzKTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgdGV4
dDsKICAgICBzd2l0Y2ggKG1fcHJpbWl0aXZlVW5pdFR5cGUpIHsKLSAgICAgICAgY2FzZSBDU1Nf
VU5LTk9XTjoKLSAgICAgICAgICAgIC8vIEZJWE1FCi0gICAgICAgICAgICBicmVhazsKLSAgICAg
ICAgY2FzZSBDU1NfTlVNQkVSOgotICAgICAgICBjYXNlIENTU19QQVJTRVJfSU5URUdFUjoKLSAg
ICAgICAgICAgIHRleHQgPSBmb3JtYXROdW1iZXIobV92YWx1ZS5udW0sICIiKTsKLSAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19QRVJDRU5UQUdFOgotICAgICAgICAgICAgdGV4
dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwgIiUiKTsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICBjYXNlIENTU19FTVM6Ci0gICAgICAgICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1f
dmFsdWUubnVtLCAiZW0iKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19F
WFM6Ci0gICAgICAgICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAiZXgiKTsK
LSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19SRU1TOgotICAgICAgICAgICAg
dGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwgInJlbSIpOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIGNhc2UgQ1NTX0NIUzoKLSAgICAgICAgICAgIHRleHQgPSBmb3JtYXROdW1i
ZXIobV92YWx1ZS5udW0sICJjaCIpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2Ug
Q1NTX1BYOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwgInB4
Iik7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1NfQ006Ci0gICAgICAgICAg
ICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAiY20iKTsKLSAgICAgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgQ1NTX1VOS05PV046CisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAg
ICBjYXNlIENTU19OVU1CRVI6CisgICAgY2FzZSBDU1NfUEFSU0VSX0lOVEVHRVI6CisgICAgICAg
IHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgiIik7CisgICAgY2FzZSBDU1NfUEVSQ0VOVEFHRToK
KyAgICAgICAgcmV0dXJuIGZvcm1hdE51bWJlclZhbHVlKCIlIik7CisgICAgY2FzZSBDU1NfRU1T
OgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImVtIik7CisgICAgY2FzZSBDU1Nf
RVhTOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImV4Iik7CisgICAgY2FzZSBD
U1NfUkVNUzoKKyAgICAgICAgcmV0dXJuIGZvcm1hdE51bWJlclZhbHVlKCJyZW0iKTsKKyAgICBj
YXNlIENTU19DSFM6CisgICAgICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgiY2giKTsKKyAg
ICBjYXNlIENTU19QWDoKKyAgICAgICAgcmV0dXJuIGZvcm1hdE51bWJlclZhbHVlKCJweCIpOwor
ICAgIGNhc2UgQ1NTX0NNOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImNtIik7
CiAjaWYgRU5BQkxFKENTU19JTUFHRV9SRVNPTFVUSU9OKSB8fCBFTkFCTEUoUkVTT0xVVElPTl9N
RURJQV9RVUVSWSkKLSAgICAgICAgY2FzZSBDU1NfRFBQWDoKLSAgICAgICAgICAgIHRleHQgPSBm
b3JtYXROdW1iZXIobV92YWx1ZS5udW0sICJkcHB4Iik7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgY2FzZSBDU1NfRFBJOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3Zh
bHVlLm51bSwgImRwaSIpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX0RQ
Q006Ci0gICAgICAgICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAiZHBjbSIp
OwotICAgICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDU1NfRFBQWDoKKyAgICAgICAgcmV0dXJu
IGZvcm1hdE51bWJlclZhbHVlKCJkcHB4Iik7CisgICAgY2FzZSBDU1NfRFBJOgorICAgICAgICBy
ZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImRwaSIpOworICAgIGNhc2UgQ1NTX0RQQ006CisgICAg
ICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgiZHBjbSIpOwogI2VuZGlmCi0gICAgICAgIGNh
c2UgQ1NTX01NOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwg
Im1tIik7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1NfSU46Ci0gICAgICAg
ICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAiaW4iKTsKLSAgICAgICAgICAg
IGJyZWFrOwotICAgICAgICBjYXNlIENTU19QVDoKLSAgICAgICAgICAgIHRleHQgPSBmb3JtYXRO
dW1iZXIobV92YWx1ZS5udW0sICJwdCIpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNh
c2UgQ1NTX1BDOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwg
InBjIik7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1NfREVHOgotICAgICAg
ICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwgImRlZyIpOwotICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1JBRDoKLSAgICAgICAgICAgIHRleHQgPSBmb3Jt
YXROdW1iZXIobV92YWx1ZS5udW0sICJyYWQiKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAg
ICBjYXNlIENTU19HUkFEOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVl
Lm51bSwgImdyYWQiKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19NUzoK
LSAgICAgICAgICAgIHRleHQgPSBmb3JtYXROdW1iZXIobV92YWx1ZS5udW0sICJtcyIpOwotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1M6Ci0gICAgICAgICAgICB0ZXh0ID0g
Zm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAicyIpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgIGNhc2UgQ1NTX0haOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVl
Lm51bSwgImh6Iik7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1NfS0haOgot
ICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlcihtX3ZhbHVlLm51bSwgImtoeiIpOwotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1RVUk46Ci0gICAgICAgICAgICB0ZXh0
ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAidHVybiIpOwotICAgICAgICAgICAgYnJlYWs7
Ci0gICAgICAgIGNhc2UgQ1NTX0ZSOgotICAgICAgICAgICAgdGV4dCA9IGZvcm1hdE51bWJlciht
X3ZhbHVlLm51bSwgImZyIik7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1Nf
RElNRU5TSU9OOgotICAgICAgICAgICAgLy8gRklYTUU6IFdlIGN1cnJlbnRseSBkb24ndCBoYW5k
bGUgQ1NTX0RJTUVOU0lPTiBwcm9wZXJseSBhcyB3ZSBkb24ndCBzdG9yZQotICAgICAgICAgICAg
Ly8gdGhlIGFjdHVhbCBkaW1lbnNpb24sIGp1c3QgdGhlIG51bWVyaWMgdmFsdWUgYXMgYSBzdHJp
bmcuCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1NfU1RSSU5HOgotICAgICAg
ICAgICAgdGV4dCA9IHF1b3RlQ1NTU3RyaW5nSWZOZWVkZWQobV92YWx1ZS5zdHJpbmcpOwotICAg
ICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1VSSToKLSAgICAgICAgICAgIHRleHQg
PSAidXJsKCIgKyBxdW90ZUNTU1VSTElmTmVlZGVkKG1fdmFsdWUuc3RyaW5nKSArICcpJzsKLSAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19WQUxVRV9JRDoKLSAgICAgICAgICAg
IHRleHQgPSB2YWx1ZU5hbWUobV92YWx1ZS52YWx1ZUlEKTsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICBjYXNlIENTU19QUk9QRVJUWV9JRDoKLSAgICAgICAgICAgIHRleHQgPSBwcm9wZXJ0
eU5hbWUobV92YWx1ZS5wcm9wZXJ0eUlEKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBj
YXNlIENTU19BVFRSOiB7Ci0gICAgICAgICAgICBTdHJpbmdCdWlsZGVyIHJlc3VsdDsKLSAgICAg
ICAgICAgIHJlc3VsdC5yZXNlcnZlQ2FwYWNpdHkoNiArIG1fdmFsdWUuc3RyaW5nLT5sZW5ndGgo
KSk7Ci0gICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiYXR0cigiKTsKLSAgICAgICAg
ICAgIHJlc3VsdC5hcHBlbmQobV92YWx1ZS5zdHJpbmcpOwotICAgICAgICAgICAgcmVzdWx0LmFw
cGVuZCgnKScpOworICAgIGNhc2UgQ1NTX01NOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVy
VmFsdWUoIm1tIik7CisgICAgY2FzZSBDU1NfSU46CisgICAgICAgIHJldHVybiBmb3JtYXROdW1i
ZXJWYWx1ZSgiaW4iKTsKKyAgICBjYXNlIENTU19QVDoKKyAgICAgICAgcmV0dXJuIGZvcm1hdE51
bWJlclZhbHVlKCJwdCIpOworICAgIGNhc2UgQ1NTX1BDOgorICAgICAgICByZXR1cm4gZm9ybWF0
TnVtYmVyVmFsdWUoInBjIik7CisgICAgY2FzZSBDU1NfREVHOgorICAgICAgICByZXR1cm4gZm9y
bWF0TnVtYmVyVmFsdWUoImRlZyIpOworICAgIGNhc2UgQ1NTX1JBRDoKKyAgICAgICAgcmV0dXJu
IGZvcm1hdE51bWJlclZhbHVlKCJyYWQiKTsKKyAgICBjYXNlIENTU19HUkFEOgorICAgICAgICBy
ZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImdyYWQiKTsKKyAgICBjYXNlIENTU19NUzoKKyAgICAg
ICAgcmV0dXJuIGZvcm1hdE51bWJlclZhbHVlKCJtcyIpOworICAgIGNhc2UgQ1NTX1M6CisgICAg
ICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgicyIpOworICAgIGNhc2UgQ1NTX0haOgorICAg
ICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImh6Iik7CisgICAgY2FzZSBDU1NfS0haOgor
ICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImtoeiIpOworICAgIGNhc2UgQ1NTX1RV
Uk46CisgICAgICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgidHVybiIpOworICAgIGNhc2Ug
Q1NTX0ZSOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoImZyIik7CisgICAgY2Fz
ZSBDU1NfRElNRU5TSU9OOgorICAgICAgICAvLyBGSVhNRTogV2UgY3VycmVudGx5IGRvbid0IGhh
bmRsZSBDU1NfRElNRU5TSU9OIHByb3Blcmx5IGFzIHdlIGRvbid0IHN0b3JlCisgICAgICAgIC8v
IHRoZSBhY3R1YWwgZGltZW5zaW9uLCBqdXN0IHRoZSBudW1lcmljIHZhbHVlIGFzIGEgc3RyaW5n
LgorICAgIGNhc2UgQ1NTX1NUUklORzoKKyAgICAgICAgcmV0dXJuIHF1b3RlQ1NTU3RyaW5nSWZO
ZWVkZWQobV92YWx1ZS5zdHJpbmcpOworICAgIGNhc2UgQ1NTX1VSSToKKyAgICAgICAgcmV0dXJu
ICJ1cmwoIiArIHF1b3RlQ1NTVVJMSWZOZWVkZWQobV92YWx1ZS5zdHJpbmcpICsgJyknOworICAg
IGNhc2UgQ1NTX1ZBTFVFX0lEOgorICAgICAgICByZXR1cm4gdmFsdWVOYW1lKG1fdmFsdWUudmFs
dWVJRCk7CisgICAgY2FzZSBDU1NfUFJPUEVSVFlfSUQ6CisgICAgICAgIHJldHVybiBwcm9wZXJ0
eU5hbWUobV92YWx1ZS5wcm9wZXJ0eUlEKTsKKyAgICBjYXNlIENTU19BVFRSOiB7CisgICAgICAg
IFN0cmluZ0J1aWxkZXIgcmVzdWx0OworICAgICAgICByZXN1bHQucmVzZXJ2ZUNhcGFjaXR5KDYg
KyBtX3ZhbHVlLnN0cmluZy0+bGVuZ3RoKCkpOworICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJh
bCgiYXR0cigiKTsKKyAgICAgICAgcmVzdWx0LmFwcGVuZChtX3ZhbHVlLnN0cmluZyk7CisgICAg
ICAgIHJlc3VsdC5hcHBlbmQoJyknKTsKKworICAgICAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5n
KCk7CisgICAgfQorICAgIGNhc2UgQ1NTX0NPVU5URVJfTkFNRToKKyAgICAgICAgcmV0dXJuICJj
b3VudGVyKCIgKyBTdHJpbmcobV92YWx1ZS5zdHJpbmcpICsgJyknOworICAgIGNhc2UgQ1NTX0NP
VU5URVI6IHsKKyAgICAgICAgU3RyaW5nQnVpbGRlciByZXN1bHQ7CisgICAgICAgIFN0cmluZyBz
ZXBhcmF0b3IgPSBtX3ZhbHVlLmNvdW50ZXItPnNlcGFyYXRvcigpOworICAgICAgICBpZiAoc2Vw
YXJhdG9yLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJjb3Vu
dGVyKCIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgi
Y291bnRlcnMoIik7CiAKLSAgICAgICAgICAgIHRleHQgPSByZXN1bHQudG9TdHJpbmcoKTsKLSAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICByZXN1bHQuYXBwZW5kKG1fdmFsdWUuY291bnRlci0+
aWRlbnRpZmllcigpKTsKKyAgICAgICAgaWYgKCFzZXBhcmF0b3IuaXNFbXB0eSgpKSB7CisgICAg
ICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKKyAgICAgICAgICAgIHJlc3VsdC5h
cHBlbmQocXVvdGVDU1NTdHJpbmdJZk5lZWRlZChzZXBhcmF0b3IpKTsKICAgICAgICAgfQotICAg
ICAgICBjYXNlIENTU19DT1VOVEVSX05BTUU6Ci0gICAgICAgICAgICB0ZXh0ID0gImNvdW50ZXIo
IiArIFN0cmluZyhtX3ZhbHVlLnN0cmluZykgKyAnKSc7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgY2FzZSBDU1NfQ09VTlRFUjogewotICAgICAgICAgICAgU3RyaW5nQnVpbGRlciByZXN1
bHQ7Ci0gICAgICAgICAgICBTdHJpbmcgc2VwYXJhdG9yID0gbV92YWx1ZS5jb3VudGVyLT5zZXBh
cmF0b3IoKTsKLSAgICAgICAgICAgIGlmIChzZXBhcmF0b3IuaXNFbXB0eSgpKQotICAgICAgICAg
ICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJjb3VudGVyKCIpOwotICAgICAgICAgICAgZWxz
ZQotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJjb3VudGVycygiKTsKLQot
ICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChtX3ZhbHVlLmNvdW50ZXItPmlkZW50aWZpZXIoKSk7
Ci0gICAgICAgICAgICBpZiAoIXNlcGFyYXRvci5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgICAg
ICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiLCAiKTsKLSAgICAgICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKHF1b3RlQ1NTU3RyaW5nSWZOZWVkZWQoc2VwYXJhdG9yKSk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBTdHJpbmcgbGlzdFN0eWxlID0gbV92YWx1ZS5jb3VudGVyLT5saXN0U3R5bGUo
KTsKLSAgICAgICAgICAgIGlmICghbGlzdFN0eWxlLmlzRW1wdHkoKSkgewotICAgICAgICAgICAg
ICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIsICIpOwotICAgICAgICAgICAgICAgIHJlc3VsdC5h
cHBlbmQobGlzdFN0eWxlKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJlc3VsdC5hcHBl
bmQoJyknKTsKLQotICAgICAgICAgICAgdGV4dCA9IHJlc3VsdC50b1N0cmluZygpOwotICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIFN0cmluZyBsaXN0U3R5bGUgPSBtX3ZhbHVlLmNvdW50ZXIt
Pmxpc3RTdHlsZSgpOworICAgICAgICBpZiAoIWxpc3RTdHlsZS5pc0VtcHR5KCkpIHsKKyAgICAg
ICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIsICIpOworICAgICAgICAgICAgcmVzdWx0LmFw
cGVuZChsaXN0U3R5bGUpOwogICAgICAgICB9Ci0gICAgICAgIGNhc2UgQ1NTX1JFQ1Q6Ci0gICAg
ICAgICAgICB0ZXh0ID0gZ2V0UmVjdFZhbHVlKCktPmNzc1RleHQoKTsKLSAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICBjYXNlIENTU19RVUFEOgotICAgICAgICAgICAgdGV4dCA9IGdldFF1YWRW
YWx1ZSgpLT5jc3NUZXh0KCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBDU1Nf
UkdCQ09MT1I6Ci0gICAgICAgIGNhc2UgQ1NTX1BBUlNFUl9IRVhDT0xPUjogewotICAgICAgICAg
ICAgUkdCQTMyIHJnYkNvbG9yID0gbV92YWx1ZS5yZ2Jjb2xvcjsKLSAgICAgICAgICAgIGlmICht
X3ByaW1pdGl2ZVVuaXRUeXBlID09IENTU19QQVJTRVJfSEVYQ09MT1IpCi0gICAgICAgICAgICAg
ICAgQ29sb3I6OnBhcnNlSGV4Q29sb3IobV92YWx1ZS5zdHJpbmcsIHJnYkNvbG9yKTsKLSAgICAg
ICAgICAgIENvbG9yIGNvbG9yKHJnYkNvbG9yKTsKLQotICAgICAgICAgICAgVmVjdG9yPExDaGFy
PiByZXN1bHQ7Ci0gICAgICAgICAgICByZXN1bHQucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSgzMik7
Ci0gICAgICAgICAgICBib29sIGNvbG9ySGFzQWxwaGEgPSBjb2xvci5oYXNBbHBoYSgpOwotICAg
ICAgICAgICAgaWYgKGNvbG9ySGFzQWxwaGEpCi0gICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVu
ZCgicmdiYSgiLCA1KTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXN1bHQu
YXBwZW5kKCJyZ2IoIiwgNCk7CisgICAgICAgIHJlc3VsdC5hcHBlbmQoJyknKTsKIAotICAgICAg
ICAgICAgYXBwZW5kTnVtYmVyKHJlc3VsdCwgc3RhdGljX2Nhc3Q8dW5zaWduZWQgY2hhcj4oY29s
b3IucmVkKCkpKTsKLSAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoIiwgIiwgMik7CisgICAgICAg
IHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKyAgICB9CisgICAgY2FzZSBDU1NfUkVDVDoKKyAg
ICAgICAgcmV0dXJuIGdldFJlY3RWYWx1ZSgpLT5jc3NUZXh0KCk7CisgICAgY2FzZSBDU1NfUVVB
RDoKKyAgICAgICAgcmV0dXJuIGdldFF1YWRWYWx1ZSgpLT5jc3NUZXh0KCk7CisgICAgY2FzZSBD
U1NfUkdCQ09MT1I6CisgICAgY2FzZSBDU1NfUEFSU0VSX0hFWENPTE9SOiB7CisgICAgICAgIFJH
QkEzMiByZ2JDb2xvciA9IG1fdmFsdWUucmdiY29sb3I7CisgICAgICAgIGlmIChtX3ByaW1pdGl2
ZVVuaXRUeXBlID09IENTU19QQVJTRVJfSEVYQ09MT1IpCisgICAgICAgICAgICBDb2xvcjo6cGFy
c2VIZXhDb2xvcihtX3ZhbHVlLnN0cmluZywgcmdiQ29sb3IpOworICAgICAgICBDb2xvciBjb2xv
cihyZ2JDb2xvcik7CisKKyAgICAgICAgVmVjdG9yPExDaGFyPiByZXN1bHQ7CisgICAgICAgIHJl
c3VsdC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KDMyKTsKKyAgICAgICAgYm9vbCBjb2xvckhhc0Fs
cGhhID0gY29sb3IuaGFzQWxwaGEoKTsKKyAgICAgICAgaWYgKGNvbG9ySGFzQWxwaGEpCisgICAg
ICAgICAgICByZXN1bHQuYXBwZW5kKCJyZ2JhKCIsIDUpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICByZXN1bHQuYXBwZW5kKCJyZ2IoIiwgNCk7CiAKLSAgICAgICAgICAgIGFwcGVuZE51bWJl
cihyZXN1bHQsIHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGNvbG9yLmdyZWVuKCkpKTsKLSAg
ICAgICAgICAgIHJlc3VsdC5hcHBlbmQoIiwgIiwgMik7CisgICAgICAgIGFwcGVuZE51bWJlcihy
ZXN1bHQsIHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGNvbG9yLnJlZCgpKSk7CisgICAgICAg
IHJlc3VsdC5hcHBlbmQoIiwgIiwgMik7CiAKLSAgICAgICAgICAgIGFwcGVuZE51bWJlcihyZXN1
bHQsIHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGNvbG9yLmJsdWUoKSkpOwotICAgICAgICAg
ICAgaWYgKGNvbG9ySGFzQWxwaGEpIHsKLSAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCIs
ICIsIDIpOworICAgICAgICBhcHBlbmROdW1iZXIocmVzdWx0LCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZCBjaGFyPihjb2xvci5ncmVlbigpKSk7CisgICAgICAgIHJlc3VsdC5hcHBlbmQoIiwgIiwgMik7
CiAKLSAgICAgICAgICAgICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgICAg
ICAgICAgICAgY29uc3QgY2hhciogYWxwaGFTdHJpbmcgPSBudW1iZXJUb0ZpeGVkUHJlY2lzaW9u
U3RyaW5nKGNvbG9yLmFscGhhKCkgLyAyNTUuMGYsIDYsIGJ1ZmZlciwgdHJ1ZSk7Ci0gICAgICAg
ICAgICAgICAgcmVzdWx0LmFwcGVuZChhbHBoYVN0cmluZywgc3RybGVuKGFscGhhU3RyaW5nKSk7
Ci0gICAgICAgICAgICB9CisgICAgICAgIGFwcGVuZE51bWJlcihyZXN1bHQsIHN0YXRpY19jYXN0
PHVuc2lnbmVkIGNoYXI+KGNvbG9yLmJsdWUoKSkpOworICAgICAgICBpZiAoY29sb3JIYXNBbHBo
YSkgeworICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgiLCAiLCAyKTsKIAotICAgICAgICAgICAg
cmVzdWx0LmFwcGVuZCgnKScpOwotICAgICAgICAgICAgdGV4dCA9IFN0cmluZzo6YWRvcHQocmVz
dWx0KTsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgTnVtYmVyVG9TdHJpbmdCdWZm
ZXIgYnVmZmVyOworICAgICAgICAgICAgY29uc3QgY2hhciogYWxwaGFTdHJpbmcgPSBudW1iZXJU
b0ZpeGVkUHJlY2lzaW9uU3RyaW5nKGNvbG9yLmFscGhhKCkgLyAyNTUuMGYsIDYsIGJ1ZmZlciwg
dHJ1ZSk7CisgICAgICAgICAgICByZXN1bHQuYXBwZW5kKGFscGhhU3RyaW5nLCBzdHJsZW4oYWxw
aGFTdHJpbmcpKTsKICAgICAgICAgfQotICAgICAgICBjYXNlIENTU19QQUlSOgotICAgICAgICAg
ICAgdGV4dCA9IGdldFBhaXJWYWx1ZSgpLT5jc3NUZXh0KCk7Ci0gICAgICAgICAgICBicmVhazsK
KworICAgICAgICByZXN1bHQuYXBwZW5kKCcpJyk7CisgICAgICAgIHJldHVybiBTdHJpbmc6OmFk
b3B0KHJlc3VsdCk7CisgICAgfQorICAgIGNhc2UgQ1NTX1BBSVI6CisgICAgICAgIHJldHVybiBn
ZXRQYWlyVmFsdWUoKS0+Y3NzVGV4dCgpOwogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkK
LSAgICAgICAgY2FzZSBDU1NfREFTSEJPQVJEX1JFR0lPTjogewotICAgICAgICAgICAgU3RyaW5n
QnVpbGRlciByZXN1bHQ7Ci0gICAgICAgICAgICBmb3IgKERhc2hib2FyZFJlZ2lvbiogcmVnaW9u
ID0gZ2V0RGFzaGJvYXJkUmVnaW9uVmFsdWUoKTsgcmVnaW9uOyByZWdpb24gPSByZWdpb24tPm1f
bmV4dC5nZXQoKSkgewotICAgICAgICAgICAgICAgIGlmICghcmVzdWx0LmlzRW1wdHkoKSkKLSAg
ICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotICAgICAgICAgICAgICAgIHJl
c3VsdC5hcHBlbmRMaXRlcmFsKCJkYXNoYm9hcmQtcmVnaW9uKCIpOwotICAgICAgICAgICAgICAg
IHJlc3VsdC5hcHBlbmQocmVnaW9uLT5tX2xhYmVsKTsKLSAgICAgICAgICAgICAgICBpZiAocmVn
aW9uLT5tX2lzQ2lyY2xlKQotICAgICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJh
bCgiIGNpcmNsZSIpOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKHJlZ2lvbi0+bV9pc1JlY3Rh
bmdsZSkKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZExpdGVyYWwoIiByZWN0YW5n
bGUiKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICAgICAgICAgIGlmIChyZWdpb24tPnRvcCgpLT5tX3ByaW1pdGl2ZVVuaXRUeXBlID09
IENTU19WQUxVRV9JRCAmJiByZWdpb24tPnRvcCgpLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVJ
bnZhbGlkKSB7Ci0gICAgICAgICAgICAgICAgICAgIEFTU0VSVChyZWdpb24tPnJpZ2h0KCktPm1f
cHJpbWl0aXZlVW5pdFR5cGUgPT0gQ1NTX1ZBTFVFX0lEKTsKLSAgICAgICAgICAgICAgICAgICAg
QVNTRVJUKHJlZ2lvbi0+Ym90dG9tKCktPm1fcHJpbWl0aXZlVW5pdFR5cGUgPT0gQ1NTX1ZBTFVF
X0lEKTsKLSAgICAgICAgICAgICAgICAgICAgQVNTRVJUKHJlZ2lvbi0+bGVmdCgpLT5tX3ByaW1p
dGl2ZVVuaXRUeXBlID09IENTU19WQUxVRV9JRCk7Ci0gICAgICAgICAgICAgICAgICAgIEFTU0VS
VChyZWdpb24tPnJpZ2h0KCktPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUludmFsaWQpOwotICAg
ICAgICAgICAgICAgICAgICBBU1NFUlQocmVnaW9uLT5ib3R0b20oKS0+Z2V0VmFsdWVJRCgpID09
IENTU1ZhbHVlSW52YWxpZCk7Ci0gICAgICAgICAgICAgICAgICAgIEFTU0VSVChyZWdpb24tPmxl
ZnQoKS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlSW52YWxpZCk7Ci0gICAgICAgICAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcpOwotICAgICAg
ICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHJlZ2lvbi0+dG9wKCktPmNzc1RleHQoKSk7Ci0g
ICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKLSAgICAgICAgICAgICAgICAg
ICAgcmVzdWx0LmFwcGVuZChyZWdpb24tPnJpZ2h0KCktPmNzc1RleHQoKSk7Ci0gICAgICAgICAg
ICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0
LmFwcGVuZChyZWdpb24tPmJvdHRvbSgpLT5jc3NUZXh0KCkpOwotICAgICAgICAgICAgICAgICAg
ICByZXN1bHQuYXBwZW5kKCcgJyk7Ci0gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQo
cmVnaW9uLT5sZWZ0KCktPmNzc1RleHQoKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAg
ICAgICAgIHJlc3VsdC5hcHBlbmQoJyknKTsKKyAgICBjYXNlIENTU19EQVNIQk9BUkRfUkVHSU9O
OiB7CisgICAgICAgIFN0cmluZ0J1aWxkZXIgcmVzdWx0OworICAgICAgICBmb3IgKERhc2hib2Fy
ZFJlZ2lvbiogcmVnaW9uID0gZ2V0RGFzaGJvYXJkUmVnaW9uVmFsdWUoKTsgcmVnaW9uOyByZWdp
b24gPSByZWdpb24tPm1fbmV4dC5nZXQoKSkgeworICAgICAgICAgICAgaWYgKCFyZXN1bHQuaXNF
bXB0eSgpKQorICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKKyAgICAgICAgICAg
IHJlc3VsdC5hcHBlbmRMaXRlcmFsKCJkYXNoYm9hcmQtcmVnaW9uKCIpOworICAgICAgICAgICAg
cmVzdWx0LmFwcGVuZChyZWdpb24tPm1fbGFiZWwpOworICAgICAgICAgICAgaWYgKHJlZ2lvbi0+
bV9pc0NpcmNsZSkKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kTGl0ZXJhbCgiIGNpcmNs
ZSIpOworICAgICAgICAgICAgZWxzZSBpZiAocmVnaW9uLT5tX2lzUmVjdGFuZ2xlKQorICAgICAg
ICAgICAgICAgIHJlc3VsdC5hcHBlbmRMaXRlcmFsKCIgcmVjdGFuZ2xlIik7CisgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAocmVnaW9uLT50
b3AoKS0+bV9wcmltaXRpdmVVbml0VHlwZSA9PSBDU1NfVkFMVUVfSUQgJiYgcmVnaW9uLT50b3Ao
KS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlSW52YWxpZCkgeworICAgICAgICAgICAgICAgIEFT
U0VSVChyZWdpb24tPnJpZ2h0KCktPm1fcHJpbWl0aXZlVW5pdFR5cGUgPT0gQ1NTX1ZBTFVFX0lE
KTsKKyAgICAgICAgICAgICAgICBBU1NFUlQocmVnaW9uLT5ib3R0b20oKS0+bV9wcmltaXRpdmVV
bml0VHlwZSA9PSBDU1NfVkFMVUVfSUQpOworICAgICAgICAgICAgICAgIEFTU0VSVChyZWdpb24t
PmxlZnQoKS0+bV9wcmltaXRpdmVVbml0VHlwZSA9PSBDU1NfVkFMVUVfSUQpOworICAgICAgICAg
ICAgICAgIEFTU0VSVChyZWdpb24tPnJpZ2h0KCktPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUlu
dmFsaWQpOworICAgICAgICAgICAgICAgIEFTU0VSVChyZWdpb24tPmJvdHRvbSgpLT5nZXRWYWx1
ZUlEKCkgPT0gQ1NTVmFsdWVJbnZhbGlkKTsKKyAgICAgICAgICAgICAgICBBU1NFUlQocmVnaW9u
LT5sZWZ0KCktPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUludmFsaWQpOworICAgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgJyk7CisgICAgICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZChyZWdpb24tPnRvcCgpLT5jc3NUZXh0KCkpOworICAgICAgICAg
ICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5k
KHJlZ2lvbi0+cmlnaHQoKS0+Y3NzVGV4dCgpKTsKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKCcgJyk7CisgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChyZWdpb24tPmJvdHRvbSgp
LT5jc3NUZXh0KCkpOworICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAnKTsKKyAgICAg
ICAgICAgICAgICByZXN1bHQuYXBwZW5kKHJlZ2lvbi0+bGVmdCgpLT5jc3NUZXh0KCkpOwogICAg
ICAgICAgICAgfQotICAgICAgICAgICAgdGV4dCA9IHJlc3VsdC50b1N0cmluZygpOwotICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcpJyk7CiAgICAgICAgIH0K
KyAgICAgICAgcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworICAgIH0KICNlbmRpZgotICAgICAg
ICBjYXNlIENTU19QQVJTRVJfT1BFUkFUT1I6IHsKLSAgICAgICAgICAgIGNoYXIgYyA9IHN0YXRp
Y19jYXN0PGNoYXI+KG1fdmFsdWUucGFyc2VyT3BlcmF0b3IpOwotICAgICAgICAgICAgdGV4dCA9
IFN0cmluZygmYywgMVUpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAg
Y2FzZSBDU1NfUEFSU0VSX0lERU5USUZJRVI6Ci0gICAgICAgICAgICB0ZXh0ID0gcXVvdGVDU1NT
dHJpbmdJZk5lZWRlZChtX3ZhbHVlLnN0cmluZyk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAg
ICAgY2FzZSBDU1NfQ0FMQzoKLSAgICAgICAgICAgIHRleHQgPSBtX3ZhbHVlLmNhbGMtPmNzc1Rl
eHQoKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENTU19TSEFQRToKLSAgICAg
ICAgICAgIHRleHQgPSBtX3ZhbHVlLnNoYXBlLT5jc3NUZXh0KCk7Ci0gICAgICAgICAgICBicmVh
azsKLSAgICAgICAgY2FzZSBDU1NfVlc6Ci0gICAgICAgICAgICB0ZXh0ID0gZm9ybWF0TnVtYmVy
KG1fdmFsdWUubnVtLCAidnciKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIENT
U19WSDoKLSAgICAgICAgICAgIHRleHQgPSBmb3JtYXROdW1iZXIobV92YWx1ZS5udW0sICJ2aCIp
OwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1ZNSU46Ci0gICAgICAgICAg
ICB0ZXh0ID0gZm9ybWF0TnVtYmVyKG1fdmFsdWUubnVtLCAidm1pbiIpOwotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIGNhc2UgQ1NTX1ZNQVg6Ci0gICAgICAgICAgICB0ZXh0ID0gZm9ybWF0
TnVtYmVyKG1fdmFsdWUubnVtLCAidm1heCIpOwotICAgICAgICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBDU1NfUEFSU0VSX09QRVJBVE9SOiB7CisgICAgICAgIGNoYXIgYyA9IHN0YXRpY19jYXN0PGNo
YXI+KG1fdmFsdWUucGFyc2VyT3BlcmF0b3IpOworICAgICAgICByZXR1cm4gU3RyaW5nKCZjLCAx
VSk7CiAgICAgfQorICAgIGNhc2UgQ1NTX1BBUlNFUl9JREVOVElGSUVSOgorICAgICAgICByZXR1
cm4gcXVvdGVDU1NTdHJpbmdJZk5lZWRlZChtX3ZhbHVlLnN0cmluZyk7CisgICAgY2FzZSBDU1Nf
Q0FMQzoKKyAgICAgICAgcmV0dXJuIG1fdmFsdWUuY2FsYy0+Y3NzVGV4dCgpOworICAgIGNhc2Ug
Q1NTX1NIQVBFOgorICAgICAgICByZXR1cm4gbV92YWx1ZS5zaGFwZS0+Y3NzVGV4dCgpOworICAg
IGNhc2UgQ1NTX1ZXOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoInZ3Iik7Cisg
ICAgY2FzZSBDU1NfVkg6CisgICAgICAgIHJldHVybiBmb3JtYXROdW1iZXJWYWx1ZSgidmgiKTsK
KyAgICBjYXNlIENTU19WTUlOOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFsdWUoInZt
aW4iKTsKKyAgICBjYXNlIENTU19WTUFYOgorICAgICAgICByZXR1cm4gZm9ybWF0TnVtYmVyVmFs
dWUoInZtYXgiKTsKKyAgICB9CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitTdHJpbmcgQ1NT
UHJpbWl0aXZlVmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAoreworICAgIC8vIEZJWE1FOiBy
ZXR1cm4gdGhlIG9yaWdpbmFsIHZhbHVlIGluc3RlYWQgb2YgYSBnZW5lcmF0ZWQgb25lIChlLmcu
IGNvbG9yCisgICAgLy8gbmFtZSBpZiBpdCB3YXMgc3BlY2lmaWVkKSAtIGNoZWNrIHdoYXQgc3Bl
YyBzYXlzIGFib3V0IHRoaXMKKworICAgIGlmIChtX2hhc0NhY2hlZENTU1RleHQpIHsKKyAgICAg
ICAgQVNTRVJUKGNzc1RleHRDYWNoZSgpLmNvbnRhaW5zKHRoaXMpKTsKKyAgICAgICAgcmV0dXJu
IGNzc1RleHRDYWNoZSgpLmdldCh0aGlzKTsKKyAgICB9CisKKyAgICBTdHJpbmcgdGV4dCA9IGZv
cm1hdE51bWJlckZvcmN1c3RvbUNTU1RleHQoKTsKIAogICAgIEFTU0VSVCghY3NzVGV4dENhY2hl
KCkuY29udGFpbnModGhpcykpOwotICAgIGNzc1RleHRDYWNoZSgpLnNldCh0aGlzLCB0ZXh0KTsK
ICAgICBtX2hhc0NhY2hlZENTU1RleHQgPSB0cnVlOworICAgIGNzc1RleHRDYWNoZSgpLnNldCh0
aGlzLCB0ZXh0KTsKICAgICByZXR1cm4gdGV4dDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJp
bWl0aXZlVmFsdWUuaAppbmRleCA0NjAyYWFiYjI2NWExMmFlNWMyZDYxMmU5Yzg3NTQxYzEzMThm
ZTRjLi5iYWRiYjg0ZmI5MDhjZDgzYzU1OWVlMGRhZGUzNmY3MjBmZjEzZTMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaApAQCAtMzc4LDYgKzM3OCwxMSBAQCBwcml2YXRl
OgogCiAgICAgZG91YmxlIGNvbXB1dGVMZW5ndGhEb3VibGUoY29uc3QgQ1NTVG9MZW5ndGhDb252
ZXJzaW9uRGF0YSYpIGNvbnN0OwogCisgICAgQUxXQVlTX0lOTElORSBTdHJpbmcgZm9ybWF0TnVt
YmVyRm9yY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OworICAgIHRlbXBsYXRlIDx1bnNpZ25lZCBjaGFy
YWN0ZXJDb3VudD4KKyAgICBBTFdBWVNfSU5MSU5FIFBhc3NSZWY8U3RyaW5nSW1wbD4gZm9ybWF0
TnVtYmVyVmFsdWUoY29uc3QgY2hhciAoJmNoYXJhY3RlcnMpW2NoYXJhY3RlckNvdW50XSkgY29u
c3Q7CisgICAgTkVWRVJfSU5MSU5FIFBhc3NSZWY8U3RyaW5nSW1wbD4gZm9ybWF0TnVtYmVyVmFs
dWUoY29uc3QgY2hhciogc3VmZml4LCB1bnNpZ25lZCBzdWZmaXhMZW5ndGgpIGNvbnN0OworCiAg
ICAgdW5pb24gewogICAgICAgICBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQ7CiAgICAgICAgIENT
U1ZhbHVlSUQgdmFsdWVJRDsK
</data>
<flag name="review"
          id="257140"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>