<?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>125644</bug_id>
          
          <creation_ts>2013-12-12 10:50:41 -0800</creation_ts>
          <short_desc>Clean up dictionary handling a little</short_desc>
          <delta_ts>2013-12-12 12:25:56 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>philn</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>959240</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-12-12 10:50:41 -0800</bug_when>
    <thetext>Clean up dictionary handling a little</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959243</commentid>
    <comment_count>1</comment_count>
      <attachid>219096</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-12-12 10:55:20 -0800</bug_when>
    <thetext>Created attachment 219096
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>959297</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-12-12 12:25:56 -0800</bug_when>
    <thetext>Committed r160504: &lt;http://trac.webkit.org/changeset/160504&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219096</attachid>
            <date>2013-12-12 10:55:20 -0800</date>
            <delta_ts>2013-12-12 10:58:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125644-20131212105519.patch</filename>
            <type>text/plain</type>
            <size>17022</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwNDkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTVkY2ZlOGUyMjJlNTY4
ZjNmMjQ2YTcwNTY3MGJhMjNhYjhiZTMxYy4uODAwYmE4MGM4NGYyNTUyNjJmNTFhYzkxMTc1OTA5
YjEyNjRhN2FmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEzLTEyLTEyICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW4gdXAgZGlj
dGlvbmFyeSBoYW5kbGluZyBhIGxpdHRsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTI1NjQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGEgV0tEaWN0aW9uYXJ5Q3JlYXRlIGZ1bmN0aW9uIGFzIGEg
Zmlyc3Qgc3RlcCB0b3dhcmRzIGVsaW1pbmF0aW5nIFdLTXV0YWJsZURpY3Rpb25hcnlSZWYsCisg
ICAgICAgIChpbiB0aGUgc2FtZSB3YXkgd2UndmUgZWxpbWluYXRlZCBXS011dGFibGVBcnJheVJl
ZikuIEFsc28sIHJlbmFtZSBhZG9wdCB0byBjcmVhdGUgYW5kIG1ha2UgaXQgdGFrZSBhIE1hcCBi
eSB2YWx1ZQorICAgICAgICBzbyB3ZSBjYW4gdXNlIHN0ZDo6bW92ZSB3aGVyZSBhcHByb3ByaWF0
ZS4KKworICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0RpY3Rpb25hcnkuY3BwOgorICAgICAgICAo
V0tEaWN0aW9uYXJ5Q3JlYXRlKToKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tEaWN0aW9uYXJ5
Lmg6CisgICAgICAgICogU2hhcmVkL0NvY29hL1dLTlNEaWN0aW9uYXJ5Lm1tOgorICAgICAgICAo
LVtXS05TRGljdGlvbmFyeSBjb3B5V2l0aFpvbmU6XSk6CisgICAgICAgICogU2hhcmVkL0ltbXV0
YWJsZURpY3Rpb25hcnkuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbW11dGFibGVEaWN0aW9uYXJ5
OjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpJbW11dGFibGVEaWN0aW9uYXJ5OjpJbW11dGFi
bGVEaWN0aW9uYXJ5KToKKyAgICAgICAgKiBTaGFyZWQvSW1tdXRhYmxlRGljdGlvbmFyeS5oOgor
ICAgICAgICAqIFNoYXJlZC9NdXRhYmxlRGljdGlvbmFyeS5jcHA6CisgICAgICAgIChXZWJLaXQ6
Ok11dGFibGVEaWN0aW9uYXJ5OjpNdXRhYmxlRGljdGlvbmFyeSk6CisgICAgICAgICogU2hhcmVk
L1BsdWdpbnMvTmV0c2NhcGUvUGx1Z2luSW5mb3JtYXRpb24uY3BwOgorICAgICAgICAoV2ViS2l0
OjpjcmVhdGVQbHVnaW5JbmZvcm1hdGlvbkRpY3Rpb25hcnkpOgorICAgICAgICAqIFNoYXJlZC9V
c2VyRGF0YS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlVzZXJEYXRhOjp0cmFuc2Zvcm0pOgorICAg
ICAgICAoV2ViS2l0OjpVc2VyRGF0YTo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvVXNlck1l
c3NhZ2VDb2RlcnMuaDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lc3NhZ2VEZWNvZGVyOjpiYXNl
RGVjb2RlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lucy9QbHVnSW5BdXRvU3RhcnRQcm92
aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdJbkF1dG9TdGFydFByb3ZpZGVyOjphdXRv
U3RhcnRPcmlnaW5zVGFibGVDb3B5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsdWdpbkluZm9TdG9yZURpZExvYWRQ
bHVnaW5zKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhYmFzZU1hbmFnZXJQcm94eTo6ZGlkR2V0RGF0YWJh
c2VzQnlPcmlnaW4pOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJGb3JtQ2xpZW50LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViRm9ybUNsaWVudDo6d2lsbFN1Ym1pdEZvcm0pOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJVSUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVJQ2xpZW50
OjpjcmVhdGVOZXdQYWdlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlUGFnZUZvcm1DbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3Rl
ZEJ1bmRsZVBhZ2VGb3JtQ2xpZW50Ojp3aWxsU2VuZFN1Ym1pdEV2ZW50KToKKyAgICAgICAgKFdl
YktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlRm9ybUNsaWVudDo6d2lsbFN1Ym1pdEZvcm0pOgorCiAy
MDEzLTEyLTEyICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbQXV0b3Rvb2xzXSBQcmVwZW5kIHRoZSBXZWJDb3JlIGxheWVyIGFyY2hpdmVzJyBuYW1lcyB3
aXRoICdsaWInCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tEaWN0
aW9uYXJ5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0RpY3Rpb25hcnkuY3Bw
CmluZGV4IGVmMDc1NTg2NjRkYTRlOTY3YjZkNjkzMGZhMjcyZDVlMGMzNTRlNWMuLjQ0YzYxZTE2
MjdiMzg0ZGU3ZTdlMWQwYzNlZTI3NTdkMmQ4MzgxZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9BUEkvYy9XS0RpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9BUEkvYy9XS0RpY3Rpb25hcnkuY3BwCkBAIC0zNyw2ICszNywxNSBAQCBXS1R5cGVJRCBX
S0RpY3Rpb25hcnlHZXRUeXBlSUQoKQogICAgIHJldHVybiB0b0FQSShJbW11dGFibGVEaWN0aW9u
YXJ5OjpBUElUeXBlKTsKIH0KIAorV0tfRVhQT1JUIFdLRGljdGlvbmFyeVJlZiBXS0RpY3Rpb25h
cnlDcmVhdGUoY29uc3QgV0tTdHJpbmdSZWYqIGtleXMsIGNvbnN0IFdLVHlwZVJlZiogdmFsdWVz
LCBzaXplX3QgbnVtYmVyT2ZWYWx1ZXMpCit7CisgICAgSW1tdXRhYmxlRGljdGlvbmFyeTo6TWFw
VHlwZSBtYXA7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBudW1iZXJPZlZhbHVlczsgKytp
KQorICAgICAgICBtYXAuYWRkKHRvSW1wbChrZXlzW2ldKS0+c3RyaW5nKCksIHRvSW1wbCh2YWx1
ZXNbaV0pKTsKKworICAgIHJldHVybiB0b0FQSShJbW11dGFibGVEaWN0aW9uYXJ5OjpjcmVhdGUo
c3RkOjptb3ZlKG1hcCkpLnJlbGVhc2UoKS5sZWFrUmVmKCkpOworfQorCiBXS1R5cGVSZWYgV0tE
aWN0aW9uYXJ5R2V0SXRlbUZvcktleShXS0RpY3Rpb25hcnlSZWYgZGljdGlvbmFyeVJlZiwgV0tT
dHJpbmdSZWYga2V5KQogewogICAgIHJldHVybiB0b0ltcGwoZGljdGlvbmFyeVJlZiktPmdldCh0
b0ltcGwoa2V5KS0+c3RyaW5nKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0FQSS9jL1dLRGljdGlvbmFyeS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRGlj
dGlvbmFyeS5oCmluZGV4IDFjMzk0MDAxNmRkNWU1YjM4ZjM5MGI1MzI2ZTBlMWMxZjk4MDU0MWQu
LmM0MTZlM2MyOTY2MjZjNmUzNWYwNDlkMGQ0ZTg2Mjg1NjA2YzIxOTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0RpY3Rpb25hcnkuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvQVBJL2MvV0tEaWN0aW9uYXJ5LmgKQEAgLTM2LDYgKzM2LDggQEAgZXh0ZXJu
ICJDIiB7CiAKIFdLX0VYUE9SVCBXS1R5cGVJRCBXS0RpY3Rpb25hcnlHZXRUeXBlSUQoKTsKIAor
V0tfRVhQT1JUIFdLRGljdGlvbmFyeVJlZiBXS0RpY3Rpb25hcnlDcmVhdGUoY29uc3QgV0tTdHJp
bmdSZWYqIGtleXMsIGNvbnN0IFdLVHlwZVJlZiogdmFsdWVzLCBzaXplX3QgbnVtYmVyT2ZWYWx1
ZXMpOworCiBXS19FWFBPUlQgV0tUeXBlUmVmIFdLRGljdGlvbmFyeUdldEl0ZW1Gb3JLZXkoV0tE
aWN0aW9uYXJ5UmVmIGRpY3Rpb25hcnksIFdLU3RyaW5nUmVmIGtleSk7CiBXS19FWFBPUlQgc2l6
ZV90IFdLRGljdGlvbmFyeUdldFNpemUoV0tEaWN0aW9uYXJ5UmVmIGRpY3Rpb25hcnkpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29jb2EvV0tOU0RpY3Rpb25hcnkubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29jb2EvV0tOU0RpY3Rpb25hcnkubW0KaW5kZXggZWVh
YTg4NTMwZjdjNzYyN2NiMzBiNjE2OTUzZmYzODE1OTliN2Y5ZC4uMDQ0ZGViYmJiMTcwOTY0NmJk
ZjA5MjhiMTBmZDYxYzE0Njc5ZjgyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0NvY29hL1dLTlNEaWN0aW9uYXJ5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db2Nv
YS9XS05TRGljdGlvbmFyeS5tbQpAQCAtODIsNyArODIsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2Vi
S2l0OwogICAgICAgICByZXR1cm4gW3NlbGYgcmV0YWluXTsKIAogICAgIGF1dG8gbWFwID0gX2Rp
Y3Rpb25hcnktPm1hcCgpOwotICAgIHJldHVybiBJbW11dGFibGVEaWN0aW9uYXJ5OjphZG9wdCht
YXApLmxlYWtSZWYoKS0+d3JhcHBlcigpOworICAgIHJldHVybiBJbW11dGFibGVEaWN0aW9uYXJ5
OjpjcmVhdGUoc3RkOjptb3ZlKG1hcCkpLnJlbGVhc2UoKS5sZWFrUmVmKCktPndyYXBwZXIoKTsK
IH0KIAogI3ByYWdtYSBtYXJrIFdLT2JqZWN0IHByb3RvY29sIGltcGxlbWVudGF0aW9uCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvSW1tdXRhYmxlRGljdGlvbmFyeS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvSW1tdXRhYmxlRGljdGlvbmFyeS5jcHAKaW5kZXggZTNjNzZi
MmRlNzM3NDQ1MTk4OTY2OWM4MzgxYjVjZGY1ZThkOTczMy4uODgwZjYwNjJhMjZlNDY5OGMyNmMy
MDEwZTcwYjUxZDdmZWU1NjU3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0lt
bXV0YWJsZURpY3Rpb25hcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9JbW11dGFi
bGVEaWN0aW9uYXJ5LmNwcApAQCAtMzEsMTMgKzMxLDE5IEBACiAKIG5hbWVzcGFjZSBXZWJLaXQg
ewogCi1JbW11dGFibGVEaWN0aW9uYXJ5OjpJbW11dGFibGVEaWN0aW9uYXJ5KCkKK1JlZlB0cjxJ
bW11dGFibGVEaWN0aW9uYXJ5PiBJbW11dGFibGVEaWN0aW9uYXJ5OjpjcmVhdGUoKQogeworICAg
IHJldHVybiBjcmVhdGUoeyB9KTsKIH0KIAotSW1tdXRhYmxlRGljdGlvbmFyeTo6SW1tdXRhYmxl
RGljdGlvbmFyeShNYXBUeXBlJiBtYXApCitSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gSW1t
dXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRlKE1hcFR5cGUgbWFwKQoreworICAgIHJldHVybiBhZG9w
dFJlZihuZXcgSW1tdXRhYmxlRGljdGlvbmFyeShzdGQ6Om1vdmUobWFwKSkpOworfQorCitJbW11
dGFibGVEaWN0aW9uYXJ5OjpJbW11dGFibGVEaWN0aW9uYXJ5KE1hcFR5cGUgbWFwKQorICAgIDog
bV9tYXAoc3RkOjptb3ZlKG1hcCkpCiB7Ci0gICAgbV9tYXAuc3dhcChtYXApOwogfQogCiBJbW11
dGFibGVEaWN0aW9uYXJ5Ojp+SW1tdXRhYmxlRGljdGlvbmFyeSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvSW1tdXRhYmxlRGljdGlvbmFyeS5oIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL0ltbXV0YWJsZURpY3Rpb25hcnkuaAppbmRleCBjMzVhZTU5OWIwMzM5ZWNmZWNkNDlm
NDhmZGU3ZDIxNGZjMDA0NDIzLi5iMDQwNDY4NDI3YmRlZTdiNmJiNzlkM2NmMzcyNDBiYjU4NjA1
MmEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvSW1tdXRhYmxlRGljdGlvbmFy
eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9JbW11dGFibGVEaWN0aW9uYXJ5LmgKQEAg
LTQ0LDE0ICs0NCw4IEBAIGNsYXNzIEltbXV0YWJsZURpY3Rpb25hcnkgOiBwdWJsaWMgQVBJOjpP
YmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpEaWN0aW9uYXJ5CiBwdWJsaWM6CiAgICAgdHlw
ZWRlZiBIYXNoTWFwPFN0cmluZywgUmVmUHRyPEFQSTo6T2JqZWN0Pj4gTWFwVHlwZTsKIAotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPEltbXV0YWJsZURpY3Rpb25hcnk+IGNyZWF0ZSgpCi0gICAgewot
ICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEltbXV0YWJsZURpY3Rpb25hcnkpOwotICAgIH0K
LSAgICBzdGF0aWMgUGFzc1JlZlB0cjxJbW11dGFibGVEaWN0aW9uYXJ5PiBhZG9wdChNYXBUeXBl
JiBtYXApCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEltbXV0YWJsZURpY3Rp
b25hcnkobWFwKSk7Ci0gICAgfQorICAgIHN0YXRpYyBSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFy
eT4gY3JlYXRlKCk7CisgICAgc3RhdGljIFJlZlB0cjxJbW11dGFibGVEaWN0aW9uYXJ5PiBjcmVh
dGUoTWFwVHlwZSk7CiAKICAgICB2aXJ0dWFsIH5JbW11dGFibGVEaWN0aW9uYXJ5KCk7CiAKQEAg
LTg5LDggKzgzLDcgQEAgcHVibGljOgogICAgIGNvbnN0IE1hcFR5cGUmIG1hcCgpIGNvbnN0IHsg
cmV0dXJuIG1fbWFwOyB9CiAKIHByb3RlY3RlZDoKLSAgICBJbW11dGFibGVEaWN0aW9uYXJ5KCk7
Ci0gICAgZXhwbGljaXQgSW1tdXRhYmxlRGljdGlvbmFyeShNYXBUeXBlJik7CisgICAgZXhwbGlj
aXQgSW1tdXRhYmxlRGljdGlvbmFyeShNYXBUeXBlKTsKIAogICAgIE1hcFR5cGUgbV9tYXA7CiB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL011dGFibGVEaWN0aW9uYXJ5LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9NdXRhYmxlRGljdGlvbmFyeS5jcHAKaW5kZXggMTA4
NGM2ZTUwYmVjZDhjZWQzZTE3MjFhYWI1ZjE2NTI3MTRkYTM3MS4uMmIzZGY3ZWQwNDUwNmZhNDQz
YzkyZjA5MTA5ZTA1N2RlNWRlYjM5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L011dGFibGVEaWN0aW9uYXJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTXV0YWJs
ZURpY3Rpb25hcnkuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
TXV0YWJsZURpY3Rpb25hcnk6Ok11dGFibGVEaWN0aW9uYXJ5KCkKKyAgICA6IEltbXV0YWJsZURp
Y3Rpb25hcnkoeyB9KQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
UGx1Z2lucy9OZXRzY2FwZS9QbHVnaW5JbmZvcm1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvUGx1Z2lucy9OZXRzY2FwZS9QbHVnaW5JbmZvcm1hdGlvbi5jcHAKaW5kZXggZWI1Njlk
OGU2MTI5YjU1ZmM2ODc2ZGU4ZmE3NWFkNjIzZjkxOTI5Yi4uZDdlYWNlNjE1NzIwZjI3OGQ1OWMx
YTY5NTVjNjkyNjE0YjlhMzk5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1Bs
dWdpbnMvTmV0c2NhcGUvUGx1Z2luSW5mb3JtYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9QbHVnaW5zL05ldHNjYXBlL1BsdWdpbkluZm9ybWF0aW9uLmNwcApAQCAtMTI3LDcg
KzEyNyw3IEBAIFBhc3NSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gY3JlYXRlUGx1Z2luSW5m
b3JtYXRpb25EaWN0aW9uYXJ5KGNvbnN0IFBsdWdpbk1vCiAgICAgSW1tdXRhYmxlRGljdGlvbmFy
eTo6TWFwVHlwZSBtYXA7CiAgICAgZ2V0UGx1Z2luTW9kdWxlSW5mb3JtYXRpb24ocGx1Z2luLCBt
YXApOwogCi0gICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KG1hcCk7CisgICAg
cmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmNyZWF0ZShzdGQ6Om1vdmUobWFwKSk7CiB9CiAK
IFBhc3NSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gY3JlYXRlUGx1Z2luSW5mb3JtYXRpb25E
aWN0aW9uYXJ5KGNvbnN0IFBsdWdpbk1vZHVsZUluZm8mIHBsdWdpbiwgY29uc3QgU3RyaW5nJiBm
cmFtZVVSTFN0cmluZywgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgU3RyaW5nJiBwYWdl
VVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMU3RyaW5nLCBj
b25zdCBTdHJpbmcmIHBsdWdpblVSTFN0cmluZywgYm9vbCByZXBsYWNlbWVudE9ic2N1cmVkKQpA
QCAtMTQ3LDcgKzE0Nyw3IEBAIFBhc3NSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gY3JlYXRl
UGx1Z2luSW5mb3JtYXRpb25EaWN0aW9uYXJ5KGNvbnN0IFBsdWdpbk1vCiAgICAgICAgIG1hcC5z
ZXQocGx1Z2luSW5mb3JtYXRpb25QbHVnaW5VUkxLZXkoKSwgV2ViVVJMOjpjcmVhdGUocGx1Z2lu
VVJMU3RyaW5nKSk7CiAgICAgbWFwLnNldChwbHVnSW5JbmZvcm1hdGlvblJlcGxhY2VtZW50T2Jz
Y3VyZWRLZXkoKSwgQVBJOjpCb29sZWFuOjpjcmVhdGUocmVwbGFjZW1lbnRPYnNjdXJlZCkpOwog
Ci0gICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KG1hcCk7CisgICAgcmV0dXJu
IEltbXV0YWJsZURpY3Rpb25hcnk6OmNyZWF0ZShzdGQ6Om1vdmUobWFwKSk7CiB9CiAKIFBhc3NS
ZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gY3JlYXRlUGx1Z2luSW5mb3JtYXRpb25EaWN0aW9u
YXJ5KGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGNvbnN0IFN0cmluZyYgZnJhbWVVUkxTdHJpbmcs
IGNvbnN0IFN0cmluZyYgcGFnZVVSTFN0cmluZykKQEAgLTE2MSw3ICsxNjEsNyBAQCBQYXNzUmVm
UHRyPEltbXV0YWJsZURpY3Rpb25hcnk+IGNyZWF0ZVBsdWdpbkluZm9ybWF0aW9uRGljdGlvbmFy
eShjb25zdCBTdHJpbmcmCiAgICAgaWYgKCFwYWdlVVJMU3RyaW5nLmlzRW1wdHkoKSkKICAgICAg
ICAgbWFwLnNldChwbHVnaW5JbmZvcm1hdGlvblBhZ2VVUkxLZXkoKSwgV2ViVVJMOjpjcmVhdGUo
cGFnZVVSTFN0cmluZykpOwogCi0gICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0
KG1hcCk7CisgICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25hcnk6OmNyZWF0ZShzdGQ6Om1vdmUo
bWFwKSk7CiB9CiAKICNpZiAhUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL1VzZXJEYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Vc2VyRGF0YS5j
cHAKaW5kZXggZGNiYWJlZjkwZmFkZDU3M2UxNzY4YmNhODQwZmQyZmU3YjU1YzllZi4uZjI0OTgy
NTIyNDg3OTAwYmM5ZmJjMjFkYzY0YjI1OWM5OTc0NmQxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvU2hhcmVkL1VzZXJEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVXNl
ckRhdGEuY3BwCkBAIC03MSw3ICs3MSw3IEBAIFJlZlB0cjxBUEk6Ok9iamVjdD4gVXNlckRhdGE6
OnRyYW5zZm9ybShBUEk6Ok9iamVjdCogb2JqZWN0LCBjb25zdCBzdGQ6OmZ1bmN0aW9uCiAgICAg
ICAgIGZvciAoY29uc3QgYXV0byYga2V5VmFsdWVQYWlyIDogZGljdGlvbmFyeS5tYXAoKSkKICAg
ICAgICAgICAgIG1hcC5hZGQoa2V5VmFsdWVQYWlyLmtleSwgdHJhbnNmb3JtKGtleVZhbHVlUGFp
ci52YWx1ZS5nZXQoKSwgdHJhbnNmb3JtZXIpKTsKIAotICAgICAgICByZXR1cm4gSW1tdXRhYmxl
RGljdGlvbmFyeTo6YWRvcHQobWFwKTsKKyAgICAgICAgcmV0dXJuIEltbXV0YWJsZURpY3Rpb25h
cnk6OmNyZWF0ZShzdGQ6Om1vdmUobWFwKSk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gdHJhbnNm
b3JtZWRPYmplY3QgPSB0cmFuc2Zvcm1lcigqb2JqZWN0KSkKQEAgLTIyMiw3ICsyMjIsNyBAQCBi
b29sIFVzZXJEYXRhOjpkZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBS
ZWZQdHI8QVBJOjpPYmplY3Q+JiByZQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgfQogCi0gICAgICAgIHJlc3VsdCA9IEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KG1h
cCk7CisgICAgICAgIHJlc3VsdCA9IEltbXV0YWJsZURpY3Rpb25hcnk6OmNyZWF0ZShzdGQ6Om1v
dmUobWFwKSk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvU2hhcmVkL1VzZXJNZXNzYWdlQ29kZXJzLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
VXNlck1lc3NhZ2VDb2RlcnMuaAppbmRleCA2MjJiMjhlMzE4ODU5ZTU2YmUzMTUxYzJkNmJkY2Vl
NWRkMzMxZjg4Li5kOTI2ZDQ1ZTA1YmZlMmQ2MWJhZjJjNjI2NjU2YjA5ZWE0NjEyMzkwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvVXNlck1lc3NhZ2VDb2RlcnMuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvVXNlck1lc3NhZ2VDb2RlcnMuaApAQCAtMzA3LDcgKzMwNyw3
IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAg
ICAgfQogCi0gICAgICAgICAgICBjb2Rlci5tX3Jvb3QgPSBJbW11dGFibGVEaWN0aW9uYXJ5Ojph
ZG9wdChtYXApOworICAgICAgICAgICAgY29kZXIubV9yb290ID0gSW1tdXRhYmxlRGljdGlvbmFy
eTo6Y3JlYXRlKHN0ZDo6bW92ZShtYXApKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9
CiAgICAgICAgIGNhc2UgQVBJOjpPYmplY3Q6OlR5cGU6OlN0cmluZzogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z0luQXV0b1N0YXJ0UHJvdmlkZXIu
Y3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z0luQXV0b1N0YXJ0UHJv
dmlkZXIuY3BwCmluZGV4IGZkMWEzMTA4NjBlNGM0Y2U1NjlkNjE0ZDc4NTE0MTIwNzljMjg5ZmIu
LmUxNTc3YmIwZmY0NjllM2NmNWEzZmQ5MmUzYTliMGMxNjZhNWY1NGQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdJbkF1dG9TdGFydFByb3ZpZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnSW5BdXRvU3RhcnRQ
cm92aWRlci5jcHAKQEAgLTkzLDEwICs5MywxMCBAQCBQYXNzUmVmUHRyPEltbXV0YWJsZURpY3Rp
b25hcnk+IFBsdWdJbkF1dG9TdGFydFByb3ZpZGVyOjphdXRvU3RhcnRPcmlnaW5zVGFibGVDbwog
ICAgICAgICB9CiAKICAgICAgICAgaWYgKGhhc2hNYXAuc2l6ZSgpKQotICAgICAgICAgICAgbWFw
LnNldChpdC0+a2V5LCBJbW11dGFibGVEaWN0aW9uYXJ5OjphZG9wdChoYXNoTWFwKSk7CisgICAg
ICAgICAgICBtYXAuc2V0KGl0LT5rZXksIEltbXV0YWJsZURpY3Rpb25hcnk6OmNyZWF0ZShzdGQ6
Om1vdmUoaGFzaE1hcCkpKTsKICAgICB9CiAKLSAgICByZXR1cm4gSW1tdXRhYmxlRGljdGlvbmFy
eTo6YWRvcHQobWFwKTsKKyAgICByZXR1cm4gSW1tdXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRlKHN0
ZDo6bW92ZShtYXApKTsKIH0KIAogdm9pZCBQbHVnSW5BdXRvU3RhcnRQcm92aWRlcjo6c2V0QXV0
b1N0YXJ0T3JpZ2luc1RhYmxlKEltbXV0YWJsZURpY3Rpb25hcnkmIHRhYmxlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCmluZGV4IGU0OWFmYWI3Nzg0MzlkZDVmYTczOWYy
N2FkMDgzMDJkNWZmMzU1NzYuLjVhYjllOTcyMWNjODdlOWViOGNiM2U2YWEzMTBjZDM1MTRjODY3
NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKQEAgLTEyOTMsNyAr
MTI5Myw3IEBAIHZvaWQgV2ViQ29udGV4dDo6cGx1Z2luSW5mb1N0b3JlRGlkTG9hZFBsdWdpbnMo
UGx1Z2luSW5mb1N0b3JlKiBzdG9yZSkKICAgICAgICAgbWFwLnNldChBU0NJSUxpdGVyYWwoInZl
cnNpb24iKSwgV2ViU3RyaW5nOjpjcmVhdGUocGx1Z2luTW9kdWxlLnZlcnNpb25TdHJpbmcpKTsK
ICNlbmRpZgogCi0gICAgICAgIHBsdWdpbnMudW5jaGVja2VkQXBwZW5kKEltbXV0YWJsZURpY3Rp
b25hcnk6OmFkb3B0KG1hcCkpOworICAgICAgICBwbHVnaW5zLnVuY2hlY2tlZEFwcGVuZChJbW11
dGFibGVEaWN0aW9uYXJ5OjpjcmVhdGUoc3RkOjptb3ZlKG1hcCkpKTsKICAgICB9CiAKICAgICBt
X2NsaWVudC5wbHVnSW5JbmZvcm1hdGlvbkJlY2FtZUF2YWlsYWJsZSh0aGlzLCBBUEk6OkFycmF5
OjpjcmVhdGUoc3RkOjptb3ZlKHBsdWdpbnMpKS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5LmNwcAppbmRleCBmNTI4N2Rm
MGMzMWI3ZmYyNWQ1MWMxMmJiNTlkOGYxYjYyMTdhMzhkLi42YzQyMjJlNmUwNDEwMmFmYmI4Y2Yx
OTc4YjM1MDZhYWEzZjY3NzI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJEYXRhYmFzZU1hbmFnZXJQcm94eS5jcHAKQEAgLTE3Myw3ICsxNzMsNyBAQCB2b2lkIFdl
YkRhdGFiYXNlTWFuYWdlclByb3h5OjpkaWRHZXREYXRhYmFzZXNCeU9yaWdpbihjb25zdCBWZWN0
b3I8T3JpZ2luQW5kRGF0YQogICAgICAgICAgICAgZGV0YWlsc01hcC5zZXQoZGF0YWJhc2VEZXRh
aWxzRXhwZWN0ZWRVc2FnZUtleSgpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGRhdGFiYXNlRGV0YWls
cy5leHBlY3RlZFVzYWdlKCkpKTsKICAgICAgICAgICAgIGRldGFpbHNNYXAuc2V0KGRhdGFiYXNl
RGV0YWlsc0N1cnJlbnRVc2FnZUtleSgpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGRhdGFiYXNlRGV0
YWlscy5jdXJyZW50VXNhZ2UoKSkpOwogCi0gICAgICAgICAgICBkYXRhYmFzZXMudW5jaGVja2Vk
QXBwZW5kKEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KGRldGFpbHNNYXApKTsKKyAgICAgICAg
ICAgIGRhdGFiYXNlcy51bmNoZWNrZWRBcHBlbmQoSW1tdXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRl
KHN0ZDo6bW92ZShkZXRhaWxzTWFwKSkpOwogICAgICAgICB9CiAKICAgICAgICAgSGFzaE1hcDxT
dHJpbmcsIFJlZlB0cjxBUEk6Ok9iamVjdD4+IG9yaWdpbkFuZERhdGFiYXNlc01hcDsKQEAgLTE4
Miw3ICsxODIsNyBAQCB2b2lkIFdlYkRhdGFiYXNlTWFuYWdlclByb3h5OjpkaWRHZXREYXRhYmFz
ZXNCeU9yaWdpbihjb25zdCBWZWN0b3I8T3JpZ2luQW5kRGF0YQogICAgICAgICBvcmlnaW5BbmRE
YXRhYmFzZXNNYXAuc2V0KG9yaWdpblVzYWdlS2V5KCksIEFQSTo6VUludDY0OjpjcmVhdGUob3Jp
Z2luQW5kRGF0YWJhc2VzLm9yaWdpblVzYWdlKSk7CiAgICAgICAgIG9yaWdpbkFuZERhdGFiYXNl
c01hcC5zZXQoZGF0YWJhc2VEZXRhaWxzS2V5KCksIEFQSTo6QXJyYXk6OmNyZWF0ZShzdGQ6Om1v
dmUoZGF0YWJhc2VzKSkpOwogCi0gICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoSW1tdXRh
YmxlRGljdGlvbmFyeTo6YWRvcHQob3JpZ2luQW5kRGF0YWJhc2VzTWFwKSk7CisgICAgICAgIHJl
c3VsdC51bmNoZWNrZWRBcHBlbmQoSW1tdXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRlKHN0ZDo6bW92
ZShvcmlnaW5BbmREYXRhYmFzZXNNYXApKSk7CiAgICAgfQogCiAgICAgY2FsbGJhY2stPnBlcmZv
cm1DYWxsYmFja1dpdGhSZXR1cm5WYWx1ZShBUEk6OkFycmF5OjpjcmVhdGUoc3RkOjptb3ZlKHJl
c3VsdCkpLmdldCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJG
b3JtQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGb3JtQ2xpZW50LmNw
cAppbmRleCA3YWI2ZTJmNDkzM2MyM2ViYWJkNDA4MzRmMmVkNjdmYjkyOGU2NDM1Li4wNWJlOTUx
NzM2MDA2ODE0NjIxOTU4ZTRhMjhlZTM1Mzg1N2Y0OTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViRm9ybUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYkZvcm1DbGllbnQuY3BwCkBAIC00MSw3ICs0MSw3IEBAIGJvb2wgV2ViRm9ybUNs
aWVudDo6d2lsbFN1Ym1pdEZvcm0oV2ViUGFnZVByb3h5KiBwYWdlLCBXZWJGcmFtZVByb3h5KiBm
cmFtZSwgV2ViCiAgICAgSW1tdXRhYmxlRGljdGlvbmFyeTo6TWFwVHlwZSBtYXA7CiAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCB0ZXh0RmllbGRWYWx1ZXMuc2l6ZSgpOyArK2kpCiAgICAgICAg
IG1hcC5zZXQodGV4dEZpZWxkVmFsdWVzW2ldLmZpcnN0LCBXZWJTdHJpbmc6OmNyZWF0ZSh0ZXh0
RmllbGRWYWx1ZXNbaV0uc2Vjb25kKSk7Ci0gICAgUmVmUHRyPEltbXV0YWJsZURpY3Rpb25hcnk+
IHRleHRGaWVsZHNNYXAgPSBJbW11dGFibGVEaWN0aW9uYXJ5OjphZG9wdChtYXApOworICAgIFJl
ZlB0cjxJbW11dGFibGVEaWN0aW9uYXJ5PiB0ZXh0RmllbGRzTWFwID0gSW1tdXRhYmxlRGljdGlv
bmFyeTo6Y3JlYXRlKHN0ZDo6bW92ZShtYXApKTsKIAogICAgIG1fY2xpZW50LndpbGxTdWJtaXRG
b3JtKHRvQVBJKHBhZ2UpLCB0b0FQSShmcmFtZSksIHRvQVBJKHNvdXJjZUZyYW1lKSwgdG9BUEko
dGV4dEZpZWxkc01hcC5nZXQoKSksIHRvQVBJKHVzZXJEYXRhKSwgdG9BUEkobGlzdGVuZXIpLCBt
X2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwogICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJVSUNsaWVudC5jcHAKaW5kZXggNWNmN2JlOWUxZGUyMjIwZjFjMTE3ZWZj
ZDU3MjMzNGVlNzllZGE0YS4uZTE4MThmNWMwNjM0MmZlMzkzMjZhOGZjMmRhYjUyOGEyNDM5ZTA4
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlVJQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViVUlDbGllbnQuY3BwCkBAIC03MSw3ICs3
MSw3IEBAIFBhc3NSZWZQdHI8V2ViUGFnZVByb3h5PiBXZWJVSUNsaWVudDo6Y3JlYXRlTmV3UGFn
ZShXZWJQYWdlUHJveHkqIHBhZ2UsIGNvbnN0IFJlCiAgICAgbWFwLnNldCgicmVzaXphYmxlIiwg
QVBJOjpCb29sZWFuOjpjcmVhdGUod2luZG93RmVhdHVyZXMucmVzaXphYmxlKSk7CiAgICAgbWFw
LnNldCgiZnVsbHNjcmVlbiIsIEFQSTo6Qm9vbGVhbjo6Y3JlYXRlKHdpbmRvd0ZlYXR1cmVzLmZ1
bGxzY3JlZW4pKTsKICAgICBtYXAuc2V0KCJkaWFsb2ciLCBBUEk6OkJvb2xlYW46OmNyZWF0ZSh3
aW5kb3dGZWF0dXJlcy5kaWFsb2cpKTsKLSAgICBSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4g
ZmVhdHVyZXNNYXAgPSBJbW11dGFibGVEaWN0aW9uYXJ5OjphZG9wdChtYXApOworICAgIFJlZlB0
cjxJbW11dGFibGVEaWN0aW9uYXJ5PiBmZWF0dXJlc01hcCA9IEltbXV0YWJsZURpY3Rpb25hcnk6
OmNyZWF0ZShzdGQ6Om1vdmUobWFwKSk7CiAKICAgICBpZiAoIW1fY2xpZW50LmJhc2UudmVyc2lv
bikKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKHRvSW1wbChtX2NsaWVudC5jcmVhdGVOZXdQYWdl
X2RlcHJlY2F0ZWRGb3JVc2VXaXRoVjAodG9BUEkocGFnZSksIHRvQVBJKGZlYXR1cmVzTWFwLmdl
dCgpKSwgdG9BUEkobW9kaWZpZXJzKSwgdG9BUEkoYnV0dG9uKSwgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VGb3JtQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlRm9ybUNsaWVudC5j
cHAKaW5kZXggOTY1NDRkOGM2ODJkNGMwOTRjMmZjZTJjNTE5YTFkMTFiYmI3M2FmOS4uNDI4Zjhj
ODVjY2IyNTBlNjkwY2IxMWE1NzdhY2ExYTJiNDI1ZWFkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VGb3JtQ2xp
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlUGFnZUZvcm1DbGllbnQuY3BwCkBAIC0xMDMsNyArMTAzLDcgQEAgdm9pZCBJ
bmplY3RlZEJ1bmRsZVBhZ2VGb3JtQ2xpZW50Ojp3aWxsU2VuZFN1Ym1pdEV2ZW50KFdlYlBhZ2Uq
IHBhZ2UsIEhUTUxGb3JtRWwKICAgICBJbW11dGFibGVEaWN0aW9uYXJ5OjpNYXBUeXBlIG1hcDsK
ICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHZhbHVlcy5zaXplKCk7ICsraSkKICAgICAgICAg
bWFwLnNldCh2YWx1ZXNbaV0uZmlyc3QsIFdlYlN0cmluZzo6Y3JlYXRlKHZhbHVlc1tpXS5zZWNv
bmQpKTsKLSAgICBSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gdGV4dEZpZWxkc01hcCA9IElt
bXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KG1hcCk7CisgICAgYXV0byB0ZXh0RmllbGRzTWFwID0g
SW1tdXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRlKHN0ZDo6bW92ZShtYXApKTsKIAogICAgIG1fY2xp
ZW50LndpbGxTZW5kU3VibWl0RXZlbnQodG9BUEkocGFnZSksIHRvQVBJKG5vZGVIYW5kbGUuZ2V0
KCkpLCB0b0FQSShmcmFtZSksIHRvQVBJKHNvdXJjZUZyYW1lKSwgdG9BUEkodGV4dEZpZWxkc01h
cC5nZXQoKSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CkBAIC0xMTgsNyArMTE4LDcg
QEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VGb3JtQ2xpZW50Ojp3aWxsU3VibWl0Rm9ybShXZWJQ
YWdlKiBwYWdlLCBIVE1MRm9ybUVsZW1lbnQKICAgICBJbW11dGFibGVEaWN0aW9uYXJ5OjpNYXBU
eXBlIG1hcDsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHZhbHVlcy5zaXplKCk7ICsraSkK
ICAgICAgICAgbWFwLnNldCh2YWx1ZXNbaV0uZmlyc3QsIFdlYlN0cmluZzo6Y3JlYXRlKHZhbHVl
c1tpXS5zZWNvbmQpKTsKLSAgICBSZWZQdHI8SW1tdXRhYmxlRGljdGlvbmFyeT4gdGV4dEZpZWxk
c01hcCA9IEltbXV0YWJsZURpY3Rpb25hcnk6OmFkb3B0KG1hcCk7CisgICAgYXV0byB0ZXh0Rmll
bGRzTWFwID0gSW1tdXRhYmxlRGljdGlvbmFyeTo6Y3JlYXRlKHN0ZDo6bW92ZShtYXApKTsKIAog
ICAgIFdLVHlwZVJlZiB1c2VyRGF0YVRvUGFzcyA9IDA7CiAgICAgbV9jbGllbnQud2lsbFN1Ym1p
dEZvcm0odG9BUEkocGFnZSksIHRvQVBJKG5vZGVIYW5kbGUuZ2V0KCkpLCB0b0FQSShmcmFtZSks
IHRvQVBJKHNvdXJjZUZyYW1lKSwgdG9BUEkodGV4dEZpZWxkc01hcC5nZXQoKSksICZ1c2VyRGF0
YVRvUGFzcywgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsK
</data>
<flag name="review"
          id="242684"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>