<?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>39437</bug_id>
          
          <creation_ts>2010-05-20 11:14:48 -0700</creation_ts>
          <short_desc>Rename GenericTask* to CrossThreadTask* in CrossThreadTask.h</short_desc>
          <delta_ts>2010-05-20 12:39:54 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Jian Li">jianli</reporter>
          <assigned_to name="Jian Li">jianli</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>levin</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>228473</commentid>
    <comment_count>0</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-20 11:14:48 -0700</bug_when>
    <thetext>Need to rename all occurrences of GenericTask* to CrossThreadTask* in CrossThreadTask.h, per the latest naming discussion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228479</commentid>
    <comment_count>1</comment_count>
      <attachid>56614</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-20 11:22:33 -0700</bug_when>
    <thetext>Created attachment 56614
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228484</commentid>
    <comment_count>2</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-05-20 11:33:53 -0700</bug_when>
    <thetext>Committed as http://trac.webkit.org/changeset/59851.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228507</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-20 12:39:54 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59851 might have broken Tiger Intel Release
The following changes are on the blame list:
http://trac.webkit.org/changeset/59850
http://trac.webkit.org/changeset/59851
http://trac.webkit.org/changeset/59852
http://trac.webkit.org/changeset/59853
http://trac.webkit.org/changeset/59854</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56614</attachid>
            <date>2010-05-20 11:22:33 -0700</date>
            <delta_ts>2010-05-20 11:23:58 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>39437</filename>
            <type>text/plain</type>
            <size>24586</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDljY2RmZi4uMGM5YjAwMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwzMiBAQAogMjAxMC0wNS0yMCAgSmlhbiBMaSAgPGpp
YW5saUBjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVuYW1lIEdlbmVyaWNUYXNrKiB0byBDcm9zc1RocmVhZFRhc2sqIGluIENy
b3NzVGhyZWFkVGFzay5oLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9Mzk0MzcKKworICAgICAgICAqIGRvbS9Dcm9zc1RocmVhZFRhc2suaDoKKyAgICAg
ICAgKFdlYkNvcmU6Oik6CisgICAgICAgIChXZWJDb3JlOjpDcm9zc1RocmVhZFRhc2sxOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NUaHJlYWRUYXNrMTo6Q3Jvc3NUaHJlYWRUYXNr
MSk6CisgICAgICAgIChXZWJDb3JlOjpDcm9zc1RocmVhZFRhc2syOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q3Jvc3NUaHJlYWRUYXNrMjo6Q3Jvc3NUaHJlYWRUYXNrMik6CisgICAgICAg
IChXZWJDb3JlOjpDcm9zc1RocmVhZFRhc2szOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q3Jvc3NUaHJlYWRUYXNrMzo6Q3Jvc3NUaHJlYWRUYXNrMyk6CisgICAgICAgIChXZWJDb3JlOjpD
cm9zc1RocmVhZFRhc2s0OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NUaHJlYWRU
YXNrNDo6Q3Jvc3NUaHJlYWRUYXNrNCk6CisgICAgICAgIChXZWJDb3JlOjpDcm9zc1RocmVhZFRh
c2s1OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NUaHJlYWRUYXNrNTo6Q3Jvc3NU
aHJlYWRUYXNrNSk6CisgICAgICAgIChXZWJDb3JlOjpDcm9zc1RocmVhZFRhc2s2OjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NUaHJlYWRUYXNrNjo6Q3Jvc3NUaHJlYWRUYXNrNik6
CisgICAgICAgIChXZWJDb3JlOjpDcm9zc1RocmVhZFRhc2s3OjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6Q3Jvc3NUaHJlYWRUYXNrNzo6Q3Jvc3NUaHJlYWRUYXNrNyk6CisgICAgICAgIChX
ZWJDb3JlOjpDcm9zc1RocmVhZFRhc2s4OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q3Jv
c3NUaHJlYWRUYXNrODo6Q3Jvc3NUaHJlYWRUYXNrOCk6CisgICAgICAgIChXZWJDb3JlOjpjcmVh
dGVDYWxsYmFja1Rhc2spOgorCisyMDEwLTA1LTIwICBKaWFuIExpICA8amlhbmxpQGNocm9taXVt
Lm9yZz4KKwogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KIAogICAgICAgICBSZW5h
bWUgR2VuZXJpY1dvcmtlclRhc2suaCB0byBDcm9zc1RocmVhZFRhc2suaCBhbmQgbW92ZSBpdCB0
byBkb20gZGlyZWN0b3J5LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vQ3Jvc3NUaHJlYWRUYXNr
LmggYi9XZWJDb3JlL2RvbS9Dcm9zc1RocmVhZFRhc2suaAppbmRleCBhZDE2YjQ1Li5lZTA1YmVj
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Dcm9zc1RocmVhZFRhc2suaAorKysgYi9XZWJDb3Jl
L2RvbS9Dcm9zc1RocmVhZFRhc2suaApAQCAtMjgsOCArMjgsOCBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIEdlbmVyaWNUYXNrX2gKLSNkZWZpbmUgR2VuZXJpY1Rhc2tfaAorI2lm
bmRlZiBDcm9zc1RocmVhZFRhc2tfaAorI2RlZmluZSBDcm9zc1RocmVhZFRhc2tfaAogCiAjaW5j
bHVkZSAiQ3Jvc3NUaHJlYWRDb3BpZXIuaCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250
ZXh0LmgiCkBAIC00MCwzNyArNDAsMzcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0vLyBU
cmFpdHMgZm9yIHRoZSBHZW5lcmljVGFzay4KLXRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBH
ZW5lcmljVGFza1RyYWl0cyB7CisvLyBUcmFpdHMgZm9yIHRoZSBDcm9zc1RocmVhZFRhc2suCit0
ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzIHsKICAgICB0
eXBlZGVmIGNvbnN0IFQmIFBhcmFtVHlwZTsKIH07CiAKLXRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0
cnVjdCBHZW5lcmljVGFza1RyYWl0czxUKj4gewordGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0
IENyb3NzVGhyZWFkVGFza1RyYWl0czxUKj4gewogICAgIHR5cGVkZWYgVCogUGFyYW1UeXBlOwog
fTsKIAotdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IEdlbmVyaWNUYXNrVHJhaXRzPFBhc3NS
ZWZQdHI8VD4gPiB7Cit0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRUYXNr
VHJhaXRzPFBhc3NSZWZQdHI8VD4gPiB7CiAgICAgdHlwZWRlZiBQYXNzUmVmUHRyPFQ+IFBhcmFt
VHlwZTsKIH07CiAKLXRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBHZW5lcmljVGFza1RyYWl0
czxQYXNzT3duUHRyPFQ+ID4gewordGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IENyb3NzVGhy
ZWFkVGFza1RyYWl0czxQYXNzT3duUHRyPFQ+ID4gewogICAgIHR5cGVkZWYgUGFzc093blB0cjxU
PiBQYXJhbVR5cGU7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBQMSwgdHlwZW5hbWUgTVAxPgot
Y2xhc3MgR2VuZXJpY1Rhc2sxIDogcHVibGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2sg
eworY2xhc3MgQ3Jvc3NUaHJlYWRUYXNrMSA6IHB1YmxpYyBTY3JpcHRFeGVjdXRpb25Db250ZXh0
OjpUYXNrIHsKIHB1YmxpYzoKICAgICB0eXBlZGVmIHZvaWQgKCpNZXRob2QpKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBNUDEpOwotICAgIHR5cGVkZWYgR2VuZXJpY1Rhc2sxPFAxLCBNUDE+IEdl
bmVyaWNUYXNrOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDE+OjpQ
YXJhbVR5cGUgUGFyYW0xOworICAgIHR5cGVkZWYgQ3Jvc3NUaHJlYWRUYXNrMTxQMSwgTVAxPiBD
cm9zc1RocmVhZFRhc2s7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFp
dHM8UDE+OjpQYXJhbVR5cGUgUGFyYW0xOwogCi0gICAgc3RhdGljIFBhc3NPd25QdHI8R2VuZXJp
Y1Rhc2s+IGNyZWF0ZShNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSkKKyAgICBzdGF0
aWMgUGFzc093blB0cjxDcm9zc1RocmVhZFRhc2s+IGNyZWF0ZShNZXRob2QgbWV0aG9kLCBQYXJh
bTEgcGFyYW1ldGVyMSkKICAgICB7Ci0gICAgICAgIHJldHVybiBuZXcgR2VuZXJpY1Rhc2sobWV0
aG9kLCBwYXJhbWV0ZXIxKTsKKyAgICAgICAgcmV0dXJuIG5ldyBDcm9zc1RocmVhZFRhc2sobWV0
aG9kLCBwYXJhbWV0ZXIxKTsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgR2VuZXJpY1Rhc2sxKE1l
dGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxKQorICAgIENyb3NzVGhyZWFkVGFzazEoTWV0
aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEpCiAgICAgICAgIDogbV9tZXRob2QobWV0aG9k
KQogICAgICAgICAsIG1fcGFyYW1ldGVyMShwYXJhbWV0ZXIxKQogICAgIHsKQEAgLTg3LDIwICs4
NywyMCBAQCBwcml2YXRlOgogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgUDEsIHR5cGVuYW1lIE1Q
MSwgdHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1QMj4KLWNsYXNzIEdlbmVyaWNUYXNrMiA6IHB1Ymxp
YyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpUYXNrIHsKK2NsYXNzIENyb3NzVGhyZWFkVGFzazIg
OiBwdWJsaWMgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzayB7CiBwdWJsaWM6CiAgICAgdHlw
ZWRlZiB2b2lkICgqTWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIpOwot
ICAgIHR5cGVkZWYgR2VuZXJpY1Rhc2syPFAxLCBNUDEsIFAyLCBNUDI+IEdlbmVyaWNUYXNrOwot
ICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDE+OjpQYXJhbVR5cGUgUGFy
YW0xOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDI+OjpQYXJhbVR5
cGUgUGFyYW0yOworICAgIHR5cGVkZWYgQ3Jvc3NUaHJlYWRUYXNrMjxQMSwgTVAxLCBQMiwgTVAy
PiBDcm9zc1RocmVhZFRhc2s7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tU
cmFpdHM8UDE+OjpQYXJhbVR5cGUgUGFyYW0xOworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRUYXNrVHJhaXRzPFAyPjo6UGFyYW1UeXBlIFBhcmFtMjsKIAotICAgIHN0YXRpYyBQYXNz
T3duUHRyPEdlbmVyaWNUYXNrPiBjcmVhdGUoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRl
cjEsIFBhcmFtMiBwYXJhbWV0ZXIyKQorICAgIHN0YXRpYyBQYXNzT3duUHRyPENyb3NzVGhyZWFk
VGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFy
YW1ldGVyMikKICAgICB7Ci0gICAgICAgIHJldHVybiBuZXcgR2VuZXJpY1Rhc2sobWV0aG9kLCBw
YXJhbWV0ZXIxLCBwYXJhbWV0ZXIyKTsKKyAgICAgICAgcmV0dXJuIG5ldyBDcm9zc1RocmVhZFRh
c2sobWV0aG9kLCBwYXJhbWV0ZXIxLCBwYXJhbWV0ZXIyKTsKICAgICB9CiAKIHByaXZhdGU6Ci0g
ICAgR2VuZXJpY1Rhc2syKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIg
cGFyYW1ldGVyMikKKyAgICBDcm9zc1RocmVhZFRhc2syKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBw
YXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMikKICAgICAgICAgOiBtX21ldGhvZChtZXRob2Qp
CiAgICAgICAgICwgbV9wYXJhbWV0ZXIxKHBhcmFtZXRlcjEpCiAgICAgICAgICwgbV9wYXJhbWV0
ZXIyKHBhcmFtZXRlcjIpCkBAIC0xMTksMjEgKzExOSwyMSBAQCBwcml2YXRlOgogfTsKIAogdGVt
cGxhdGU8dHlwZW5hbWUgUDEsIHR5cGVuYW1lIE1QMSwgdHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1Q
MiwgdHlwZW5hbWUgUDMsIHR5cGVuYW1lIE1QMz4KLWNsYXNzIEdlbmVyaWNUYXNrMyA6IHB1Ymxp
YyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpUYXNrIHsKK2NsYXNzIENyb3NzVGhyZWFkVGFzazMg
OiBwdWJsaWMgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzayB7CiBwdWJsaWM6CiAgICAgdHlw
ZWRlZiB2b2lkICgqTWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1Q
Myk7Ci0gICAgdHlwZWRlZiBHZW5lcmljVGFzazM8UDEsIE1QMSwgUDIsIE1QMiwgUDMsIE1QMz4g
R2VuZXJpY1Rhc2s7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBHZW5lcmljVGFza1RyYWl0czxQMT46
OlBhcmFtVHlwZSBQYXJhbTE7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBHZW5lcmljVGFza1RyYWl0
czxQMj46OlBhcmFtVHlwZSBQYXJhbTI7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBHZW5lcmljVGFz
a1RyYWl0czxQMz46OlBhcmFtVHlwZSBQYXJhbTM7CisgICAgdHlwZWRlZiBDcm9zc1RocmVhZFRh
c2szPFAxLCBNUDEsIFAyLCBNUDIsIFAzLCBNUDM+IENyb3NzVGhyZWFkVGFzazsKKyAgICB0eXBl
ZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQMT46OlBhcmFtVHlwZSBQYXJhbTE7
CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDI+OjpQYXJhbVR5
cGUgUGFyYW0yOworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFAz
Pjo6UGFyYW1UeXBlIFBhcmFtMzsKIAotICAgIHN0YXRpYyBQYXNzT3duUHRyPEdlbmVyaWNUYXNr
PiBjcmVhdGUoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0
ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMykKKyAgICBzdGF0aWMgUGFzc093blB0cjxDcm9zc1RocmVh
ZFRhc2s+IGNyZWF0ZShNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0yIHBh
cmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzKQogICAgIHsKLSAgICAgICAgcmV0dXJuIG5ldyBH
ZW5lcmljVGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMpOwor
ICAgICAgICByZXR1cm4gbmV3IENyb3NzVGhyZWFkVGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBh
cmFtZXRlcjIsIHBhcmFtZXRlcjMpOwogICAgIH0KIAogcHJpdmF0ZToKLSAgICBHZW5lcmljVGFz
azMoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQ
YXJhbTMgcGFyYW1ldGVyMykKKyAgICBDcm9zc1RocmVhZFRhc2szKE1ldGhvZCBtZXRob2QsIFBh
cmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMpCiAg
ICAgICAgIDogbV9tZXRob2QobWV0aG9kKQogICAgICAgICAsIG1fcGFyYW1ldGVyMShwYXJhbWV0
ZXIxKQogICAgICAgICAsIG1fcGFyYW1ldGVyMihwYXJhbWV0ZXIyKQpAQCAtMTU0LDIyICsxNTQs
MjIgQEAgcHJpdmF0ZToKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFAxLCB0eXBlbmFtZSBNUDEs
IHR5cGVuYW1lIFAyLCB0eXBlbmFtZSBNUDIsIHR5cGVuYW1lIFAzLCB0eXBlbmFtZSBNUDMsIHR5
cGVuYW1lIFA0LCB0eXBlbmFtZSBNUDQ+Ci1jbGFzcyBHZW5lcmljVGFzazQgOiBwdWJsaWMgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzayB7CitjbGFzcyBDcm9zc1RocmVhZFRhc2s0IDogcHVi
bGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2sgewogcHVibGljOgogICAgIHR5cGVkZWYg
dm9pZCAoKk1ldGhvZCkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIE1QMSwgTVAyLCBNUDMsIE1Q
NCk7Ci0gICAgdHlwZWRlZiBHZW5lcmljVGFzazQ8UDEsIE1QMSwgUDIsIE1QMiwgUDMsIE1QMywg
UDQsIE1QND4gR2VuZXJpY1Rhc2s7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBHZW5lcmljVGFza1Ry
YWl0czxQMT46OlBhcmFtVHlwZSBQYXJhbTE7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBHZW5lcmlj
VGFza1RyYWl0czxQMj46OlBhcmFtVHlwZSBQYXJhbTI7Ci0gICAgdHlwZWRlZiB0eXBlbmFtZSBH
ZW5lcmljVGFza1RyYWl0czxQMz46OlBhcmFtVHlwZSBQYXJhbTM7Ci0gICAgdHlwZWRlZiB0eXBl
bmFtZSBHZW5lcmljVGFza1RyYWl0czxQND46OlBhcmFtVHlwZSBQYXJhbTQ7CisgICAgdHlwZWRl
ZiBDcm9zc1RocmVhZFRhc2s0PFAxLCBNUDEsIFAyLCBNUDIsIFAzLCBNUDMsIFA0LCBNUDQ+IENy
b3NzVGhyZWFkVGFzazsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0
czxQMT46OlBhcmFtVHlwZSBQYXJhbTE7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVh
ZFRhc2tUcmFpdHM8UDI+OjpQYXJhbVR5cGUgUGFyYW0yOworICAgIHR5cGVkZWYgdHlwZW5hbWUg
Q3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFAzPjo6UGFyYW1UeXBlIFBhcmFtMzsKKyAgICB0eXBlZGVm
IHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQND46OlBhcmFtVHlwZSBQYXJhbTQ7CiAK
LSAgICBzdGF0aWMgUGFzc093blB0cjxHZW5lcmljVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2Qs
IFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMs
IFBhcmFtNCBwYXJhbWV0ZXI0KQorICAgIHN0YXRpYyBQYXNzT3duUHRyPENyb3NzVGhyZWFkVGFz
az4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1l
dGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0KQogICAgIHsKLSAgICAg
ICAgcmV0dXJuIG5ldyBHZW5lcmljVGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIs
IHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQpOworICAgICAgICByZXR1cm4gbmV3IENyb3NzVGhyZWFk
VGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRl
cjQpOwogICAgIH0KIAogcHJpdmF0ZToKLSAgICBHZW5lcmljVGFzazQoTWV0aG9kIG1ldGhvZCwg
UGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMywg
UGFyYW00IHBhcmFtZXRlcjQpCisgICAgQ3Jvc3NUaHJlYWRUYXNrNChNZXRob2QgbWV0aG9kLCBQ
YXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0yIHBhcmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzLCBQ
YXJhbTQgcGFyYW1ldGVyNCkKICAgICAgICAgOiBtX21ldGhvZChtZXRob2QpCiAgICAgICAgICwg
bV9wYXJhbWV0ZXIxKHBhcmFtZXRlcjEpCiAgICAgICAgICwgbV9wYXJhbWV0ZXIyKHBhcmFtZXRl
cjIpCkBAIC0xOTIsMjMgKzE5MiwyMyBAQCBwcml2YXRlOgogfTsKIAogdGVtcGxhdGU8dHlwZW5h
bWUgUDEsIHR5cGVuYW1lIE1QMSwgdHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1QMiwgdHlwZW5hbWUg
UDMsIHR5cGVuYW1lIE1QMywgdHlwZW5hbWUgUDQsIHR5cGVuYW1lIE1QNCwgdHlwZW5hbWUgUDUs
IHR5cGVuYW1lIE1QNT4KLWNsYXNzIEdlbmVyaWNUYXNrNSA6IHB1YmxpYyBTY3JpcHRFeGVjdXRp
b25Db250ZXh0OjpUYXNrIHsKK2NsYXNzIENyb3NzVGhyZWFkVGFzazUgOiBwdWJsaWMgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDo6VGFzayB7CiBwdWJsaWM6CiAgICAgdHlwZWRlZiB2b2lkICgqTWV0
aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1QMywgTVA0LCBNUDUpOwot
ICAgIHR5cGVkZWYgR2VuZXJpY1Rhc2s1PFAxLCBNUDEsIFAyLCBNUDIsIFAzLCBNUDMsIFA0LCBN
UDQsIFA1LCBNUDU+IEdlbmVyaWNUYXNrOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rh
c2tUcmFpdHM8UDE+OjpQYXJhbVR5cGUgUGFyYW0xOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2Vu
ZXJpY1Rhc2tUcmFpdHM8UDI+OjpQYXJhbVR5cGUgUGFyYW0yOwotICAgIHR5cGVkZWYgdHlwZW5h
bWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDM+OjpQYXJhbVR5cGUgUGFyYW0zOwotICAgIHR5cGVkZWYg
dHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDQ+OjpQYXJhbVR5cGUgUGFyYW00OwotICAgIHR5
cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDU+OjpQYXJhbVR5cGUgUGFyYW01Owot
Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8R2VuZXJpY1Rhc2s+IGNyZWF0ZShNZXRob2QgbWV0aG9k
LCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0yIHBhcmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIz
LCBQYXJhbTQgcGFyYW1ldGVyNCwgUGFyYW01IHBhcmFtZXRlcjUpCisgICAgdHlwZWRlZiBDcm9z
c1RocmVhZFRhc2s1PFAxLCBNUDEsIFAyLCBNUDIsIFAzLCBNUDMsIFA0LCBNUDQsIFA1LCBNUDU+
IENyb3NzVGhyZWFkVGFzazsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1Ry
YWl0czxQMT46OlBhcmFtVHlwZSBQYXJhbTE7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1Ro
cmVhZFRhc2tUcmFpdHM8UDI+OjpQYXJhbVR5cGUgUGFyYW0yOworICAgIHR5cGVkZWYgdHlwZW5h
bWUgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFAzPjo6UGFyYW1UeXBlIFBhcmFtMzsKKyAgICB0eXBl
ZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQND46OlBhcmFtVHlwZSBQYXJhbTQ7
CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDU+OjpQYXJhbVR5
cGUgUGFyYW01OworCisgICAgc3RhdGljIFBhc3NPd25QdHI8Q3Jvc3NUaHJlYWRUYXNrPiBjcmVh
dGUoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQ
YXJhbTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1KQog
ICAgIHsKLSAgICAgICAgcmV0dXJuIG5ldyBHZW5lcmljVGFzayhtZXRob2QsIHBhcmFtZXRlcjEs
IHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBhcmFtZXRlcjUpOworICAgICAg
ICByZXR1cm4gbmV3IENyb3NzVGhyZWFkVGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRl
cjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBhcmFtZXRlcjUpOwogICAgIH0KIAogcHJpdmF0
ZToKLSAgICBHZW5lcmljVGFzazUoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBh
cmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBh
cmFtNSBwYXJhbWV0ZXI1KQorICAgIENyb3NzVGhyZWFkVGFzazUoTWV0aG9kIG1ldGhvZCwgUGFy
YW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMywgUGFy
YW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1KQogICAgICAgICA6IG1fbWV0aG9kKG1l
dGhvZCkKICAgICAgICAgLCBtX3BhcmFtZXRlcjEocGFyYW1ldGVyMSkKICAgICAgICAgLCBtX3Bh
cmFtZXRlcjIocGFyYW1ldGVyMikKQEAgLTIzMywyNCArMjMzLDI0IEBAIHByaXZhdGU6CiB9Owog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBQMSwgdHlwZW5hbWUgTVAxLCB0eXBlbmFtZSBQMiwgdHlwZW5h
bWUgTVAyLCB0eXBlbmFtZSBQMywgdHlwZW5hbWUgTVAzLCB0eXBlbmFtZSBQNCwgdHlwZW5hbWUg
TVA0LCB0eXBlbmFtZSBQNSwgdHlwZW5hbWUgTVA1LCB0eXBlbmFtZSBQNiwgdHlwZW5hbWUgTVA2
PgotY2xhc3MgR2VuZXJpY1Rhc2s2IDogcHVibGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRh
c2sgeworY2xhc3MgQ3Jvc3NUaHJlYWRUYXNrNiA6IHB1YmxpYyBTY3JpcHRFeGVjdXRpb25Db250
ZXh0OjpUYXNrIHsKIHB1YmxpYzoKICAgICB0eXBlZGVmIHZvaWQgKCpNZXRob2QpKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqLCBNUDEsIE1QMiwgTVAzLCBNUDQsIE1QNSwgTVA2KTsKLSAgICB0eXBl
ZGVmIEdlbmVyaWNUYXNrNjxQMSwgTVAxLCBQMiwgTVAyLCBQMywgTVAzLCBQNCwgTVA0LCBQNSwg
TVA1LCBQNiwgTVA2PiBHZW5lcmljVGFzazsKLSAgICB0eXBlZGVmIHR5cGVuYW1lIEdlbmVyaWNU
YXNrVHJhaXRzPFAxPjo6UGFyYW1UeXBlIFBhcmFtMTsKLSAgICB0eXBlZGVmIHR5cGVuYW1lIEdl
bmVyaWNUYXNrVHJhaXRzPFAyPjo6UGFyYW1UeXBlIFBhcmFtMjsKLSAgICB0eXBlZGVmIHR5cGVu
YW1lIEdlbmVyaWNUYXNrVHJhaXRzPFAzPjo6UGFyYW1UeXBlIFBhcmFtMzsKLSAgICB0eXBlZGVm
IHR5cGVuYW1lIEdlbmVyaWNUYXNrVHJhaXRzPFA0Pjo6UGFyYW1UeXBlIFBhcmFtNDsKLSAgICB0
eXBlZGVmIHR5cGVuYW1lIEdlbmVyaWNUYXNrVHJhaXRzPFA1Pjo6UGFyYW1UeXBlIFBhcmFtNTsK
LSAgICB0eXBlZGVmIHR5cGVuYW1lIEdlbmVyaWNUYXNrVHJhaXRzPFA2Pjo6UGFyYW1UeXBlIFBh
cmFtNjsKLQotICAgIHN0YXRpYyBQYXNzT3duUHRyPEdlbmVyaWNUYXNrPiBjcmVhdGUoTWV0aG9k
IG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFy
YW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1LCBQYXJhbTYgcGFy
YW1ldGVyNikKKyAgICB0eXBlZGVmIENyb3NzVGhyZWFkVGFzazY8UDEsIE1QMSwgUDIsIE1QMiwg
UDMsIE1QMywgUDQsIE1QNCwgUDUsIE1QNSwgUDYsIE1QNj4gQ3Jvc3NUaHJlYWRUYXNrOworICAg
IHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFAxPjo6UGFyYW1UeXBlIFBh
cmFtMTsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQMj46OlBh
cmFtVHlwZSBQYXJhbTI7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFp
dHM8UDM+OjpQYXJhbVR5cGUgUGFyYW0zOworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJl
YWRUYXNrVHJhaXRzPFA0Pjo6UGFyYW1UeXBlIFBhcmFtNDsKKyAgICB0eXBlZGVmIHR5cGVuYW1l
IENyb3NzVGhyZWFkVGFza1RyYWl0czxQNT46OlBhcmFtVHlwZSBQYXJhbTU7CisgICAgdHlwZWRl
ZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDY+OjpQYXJhbVR5cGUgUGFyYW02Owor
CisgICAgc3RhdGljIFBhc3NPd25QdHI8Q3Jvc3NUaHJlYWRUYXNrPiBjcmVhdGUoTWV0aG9kIG1l
dGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1l
dGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1LCBQYXJhbTYgcGFyYW1l
dGVyNikKICAgICB7Ci0gICAgICAgIHJldHVybiBuZXcgR2VuZXJpY1Rhc2sobWV0aG9kLCBwYXJh
bWV0ZXIxLCBwYXJhbWV0ZXIyLCBwYXJhbWV0ZXIzLCBwYXJhbWV0ZXI0LCBwYXJhbWV0ZXI1LCBw
YXJhbWV0ZXI2KTsKKyAgICAgICAgcmV0dXJuIG5ldyBDcm9zc1RocmVhZFRhc2sobWV0aG9kLCBw
YXJhbWV0ZXIxLCBwYXJhbWV0ZXIyLCBwYXJhbWV0ZXIzLCBwYXJhbWV0ZXI0LCBwYXJhbWV0ZXI1
LCBwYXJhbWV0ZXI2KTsKICAgICB9CiAKIHByaXZhdGU6Ci0gICAgR2VuZXJpY1Rhc2s2KE1ldGhv
ZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBh
cmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0LCBQYXJhbTUgcGFyYW1ldGVyNSwgUGFyYW02IHBh
cmFtZXRlcjYpCisgICAgQ3Jvc3NUaHJlYWRUYXNrNihNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFy
YW1ldGVyMSwgUGFyYW0yIHBhcmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzLCBQYXJhbTQgcGFy
YW1ldGVyNCwgUGFyYW01IHBhcmFtZXRlcjUsIFBhcmFtNiBwYXJhbWV0ZXI2KQogICAgICAgICA6
IG1fbWV0aG9kKG1ldGhvZCkKICAgICAgICAgLCBtX3BhcmFtZXRlcjEocGFyYW1ldGVyMSkKICAg
ICAgICAgLCBtX3BhcmFtZXRlcjIocGFyYW1ldGVyMikKQEAgLTI3NywyNSArMjc3LDI1IEBAIHBy
aXZhdGU6CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBQMSwgdHlwZW5hbWUgTVAxLCB0eXBlbmFt
ZSBQMiwgdHlwZW5hbWUgTVAyLCB0eXBlbmFtZSBQMywgdHlwZW5hbWUgTVAzLCB0eXBlbmFtZSBQ
NCwgdHlwZW5hbWUgTVA0LCB0eXBlbmFtZSBQNSwgdHlwZW5hbWUgTVA1LCB0eXBlbmFtZSBQNiwg
dHlwZW5hbWUgTVA2LCB0eXBlbmFtZSBQNywgdHlwZW5hbWUgTVA3PgotY2xhc3MgR2VuZXJpY1Rh
c2s3IDogcHVibGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2sgeworY2xhc3MgQ3Jvc3NU
aHJlYWRUYXNrNyA6IHB1YmxpYyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpUYXNrIHsKIHB1Ymxp
YzoKICAgICB0eXBlZGVmIHZvaWQgKCpNZXRob2QpKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBN
UDEsIE1QMiwgTVAzLCBNUDQsIE1QNSwgTVA2LCBNUDcpOwotICAgIHR5cGVkZWYgR2VuZXJpY1Rh
c2s3PFAxLCBNUDEsIFAyLCBNUDIsIFAzLCBNUDMsIFA0LCBNUDQsIFA1LCBNUDUsIFA2LCBNUDYs
IFA3LCBNUDc+IEdlbmVyaWNUYXNrOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tU
cmFpdHM8UDE+OjpQYXJhbVR5cGUgUGFyYW0xOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJp
Y1Rhc2tUcmFpdHM8UDI+OjpQYXJhbVR5cGUgUGFyYW0yOwotICAgIHR5cGVkZWYgdHlwZW5hbWUg
R2VuZXJpY1Rhc2tUcmFpdHM8UDM+OjpQYXJhbVR5cGUgUGFyYW0zOwotICAgIHR5cGVkZWYgdHlw
ZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDQ+OjpQYXJhbVR5cGUgUGFyYW00OwotICAgIHR5cGVk
ZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDU+OjpQYXJhbVR5cGUgUGFyYW01OwotICAg
IHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDY+OjpQYXJhbVR5cGUgUGFyYW02
OwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDc+OjpQYXJhbVR5cGUg
UGFyYW03OwotCi0gICAgc3RhdGljIFBhc3NPd25QdHI8R2VuZXJpY1Rhc2s+IGNyZWF0ZShNZXRo
b2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0yIHBhcmFtZXRlcjIsIFBhcmFtMyBw
YXJhbWV0ZXIzLCBQYXJhbTQgcGFyYW1ldGVyNCwgUGFyYW01IHBhcmFtZXRlcjUsIFBhcmFtNiBw
YXJhbWV0ZXI2LCBQYXJhbTcgcGFyYW1ldGVyNykKKyAgICB0eXBlZGVmIENyb3NzVGhyZWFkVGFz
azc8UDEsIE1QMSwgUDIsIE1QMiwgUDMsIE1QMywgUDQsIE1QNCwgUDUsIE1QNSwgUDYsIE1QNiwg
UDcsIE1QNz4gQ3Jvc3NUaHJlYWRUYXNrOworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJl
YWRUYXNrVHJhaXRzPFAxPjo6UGFyYW1UeXBlIFBhcmFtMTsKKyAgICB0eXBlZGVmIHR5cGVuYW1l
IENyb3NzVGhyZWFkVGFza1RyYWl0czxQMj46OlBhcmFtVHlwZSBQYXJhbTI7CisgICAgdHlwZWRl
ZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDM+OjpQYXJhbVR5cGUgUGFyYW0zOwor
ICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFA0Pjo6UGFyYW1UeXBl
IFBhcmFtNDsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQNT46
OlBhcmFtVHlwZSBQYXJhbTU7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tU
cmFpdHM8UDY+OjpQYXJhbVR5cGUgUGFyYW02OworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRUYXNrVHJhaXRzPFA3Pjo6UGFyYW1UeXBlIFBhcmFtNzsKKworICAgIHN0YXRpYyBQYXNz
T3duUHRyPENyb3NzVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJh
bWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJh
bWV0ZXI0LCBQYXJhbTUgcGFyYW1ldGVyNSwgUGFyYW02IHBhcmFtZXRlcjYsIFBhcmFtNyBwYXJh
bWV0ZXI3KQogICAgIHsKLSAgICAgICAgcmV0dXJuIG5ldyBHZW5lcmljVGFzayhtZXRob2QsIHBh
cmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBhcmFtZXRlcjUs
IHBhcmFtZXRlcjYsIHBhcmFtZXRlcjcpOworICAgICAgICByZXR1cm4gbmV3IENyb3NzVGhyZWFk
VGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRl
cjQsIHBhcmFtZXRlcjUsIHBhcmFtZXRlcjYsIHBhcmFtZXRlcjcpOwogICAgIH0KIAogcHJpdmF0
ZToKLSAgICBHZW5lcmljVGFzazcoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBh
cmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBh
cmFtNSBwYXJhbWV0ZXI1LCBQYXJhbTYgcGFyYW1ldGVyNiwgUGFyYW03IHBhcmFtZXRlcjcpCisg
ICAgQ3Jvc3NUaHJlYWRUYXNrNyhNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFy
YW0yIHBhcmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzLCBQYXJhbTQgcGFyYW1ldGVyNCwgUGFy
YW01IHBhcmFtZXRlcjUsIFBhcmFtNiBwYXJhbWV0ZXI2LCBQYXJhbTcgcGFyYW1ldGVyNykKICAg
ICAgICAgOiBtX21ldGhvZChtZXRob2QpCiAgICAgICAgICwgbV9wYXJhbWV0ZXIxKHBhcmFtZXRl
cjEpCiAgICAgICAgICwgbV9wYXJhbWV0ZXIyKHBhcmFtZXRlcjIpCkBAIC0zMjQsMjYgKzMyNCwy
NiBAQCBwcml2YXRlOgogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgUDEsIHR5cGVuYW1lIE1QMSwg
dHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1QMiwgdHlwZW5hbWUgUDMsIHR5cGVuYW1lIE1QMywgdHlw
ZW5hbWUgUDQsIHR5cGVuYW1lIE1QNCwgdHlwZW5hbWUgUDUsIHR5cGVuYW1lIE1QNSwgdHlwZW5h
bWUgUDYsIHR5cGVuYW1lIE1QNiwgdHlwZW5hbWUgUDcsIHR5cGVuYW1lIE1QNywgdHlwZW5hbWUg
UDgsIHR5cGVuYW1lIE1QOD4KLWNsYXNzIEdlbmVyaWNUYXNrOCA6IHB1YmxpYyBTY3JpcHRFeGVj
dXRpb25Db250ZXh0OjpUYXNrIHsKK2NsYXNzIENyb3NzVGhyZWFkVGFzazggOiBwdWJsaWMgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzayB7CiBwdWJsaWM6CiAgICAgdHlwZWRlZiB2b2lkICgq
TWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1QMywgTVA0LCBNUDUs
IE1QNiwgTVA3LCBNUDgpOwotICAgIHR5cGVkZWYgR2VuZXJpY1Rhc2s4PFAxLCBNUDEsIFAyLCBN
UDIsIFAzLCBNUDMsIFA0LCBNUDQsIFA1LCBNUDUsIFA2LCBNUDYsIFA3LCBNUDcsIFA4LCBNUDg+
IEdlbmVyaWNUYXNrOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDE+
OjpQYXJhbVR5cGUgUGFyYW0xOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFp
dHM8UDI+OjpQYXJhbVR5cGUgUGFyYW0yOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rh
c2tUcmFpdHM8UDM+OjpQYXJhbVR5cGUgUGFyYW0zOwotICAgIHR5cGVkZWYgdHlwZW5hbWUgR2Vu
ZXJpY1Rhc2tUcmFpdHM8UDQ+OjpQYXJhbVR5cGUgUGFyYW00OwotICAgIHR5cGVkZWYgdHlwZW5h
bWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDU+OjpQYXJhbVR5cGUgUGFyYW01OwotICAgIHR5cGVkZWYg
dHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDY+OjpQYXJhbVR5cGUgUGFyYW02OwotICAgIHR5
cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDc+OjpQYXJhbVR5cGUgUGFyYW03Owot
ICAgIHR5cGVkZWYgdHlwZW5hbWUgR2VuZXJpY1Rhc2tUcmFpdHM8UDg+OjpQYXJhbVR5cGUgUGFy
YW04OworICAgIHR5cGVkZWYgQ3Jvc3NUaHJlYWRUYXNrODxQMSwgTVAxLCBQMiwgTVAyLCBQMywg
TVAzLCBQNCwgTVA0LCBQNSwgTVA1LCBQNiwgTVA2LCBQNywgTVA3LCBQOCwgTVA4PiBDcm9zc1Ro
cmVhZFRhc2s7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDE+
OjpQYXJhbVR5cGUgUGFyYW0xOworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRUYXNr
VHJhaXRzPFAyPjo6UGFyYW1UeXBlIFBhcmFtMjsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3Nz
VGhyZWFkVGFza1RyYWl0czxQMz46OlBhcmFtVHlwZSBQYXJhbTM7CisgICAgdHlwZWRlZiB0eXBl
bmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8UDQ+OjpQYXJhbVR5cGUgUGFyYW00OworICAgIHR5
cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRUYXNrVHJhaXRzPFA1Pjo6UGFyYW1UeXBlIFBhcmFt
NTsKKyAgICB0eXBlZGVmIHR5cGVuYW1lIENyb3NzVGhyZWFkVGFza1RyYWl0czxQNj46OlBhcmFt
VHlwZSBQYXJhbTY7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9zc1RocmVhZFRhc2tUcmFpdHM8
UDc+OjpQYXJhbVR5cGUgUGFyYW03OworICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRU
YXNrVHJhaXRzPFA4Pjo6UGFyYW1UeXBlIFBhcmFtODsKICAgICAKLSAgICBzdGF0aWMgUGFzc093
blB0cjxHZW5lcmljVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIx
LCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0
LCBQYXJhbTUgcGFyYW1ldGVyNSwgUGFyYW02IHBhcmFtZXRlcjYsIFBhcmFtNyBwYXJhbWV0ZXI3
LCBQYXJhbTggcGFyYW1ldGVyOCkKKyAgICBzdGF0aWMgUGFzc093blB0cjxDcm9zc1RocmVhZFRh
c2s+IGNyZWF0ZShNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0yIHBhcmFt
ZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzLCBQYXJhbTQgcGFyYW1ldGVyNCwgUGFyYW01IHBhcmFt
ZXRlcjUsIFBhcmFtNiBwYXJhbWV0ZXI2LCBQYXJhbTcgcGFyYW1ldGVyNywgUGFyYW04IHBhcmFt
ZXRlcjgpCiAgICAgewotICAgICAgICByZXR1cm4gbmV3IEdlbmVyaWNUYXNrKG1ldGhvZCwgcGFy
YW1ldGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVyMywgcGFyYW1ldGVyNCwgcGFyYW1ldGVyNSwg
cGFyYW1ldGVyNiwgcGFyYW1ldGVyNywgcGFyYW1ldGVyOCk7CisgICAgICAgIHJldHVybiBuZXcg
Q3Jvc3NUaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVy
MywgcGFyYW1ldGVyNCwgcGFyYW1ldGVyNSwgcGFyYW1ldGVyNiwgcGFyYW1ldGVyNywgcGFyYW1l
dGVyOCk7CiAgICAgfQogICAgIAogcHJpdmF0ZToKLSAgICBHZW5lcmljVGFzazgoTWV0aG9kIG1l
dGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1l
dGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1LCBQYXJhbTYgcGFyYW1l
dGVyNiwgUGFyYW03IHBhcmFtZXRlcjcsIFBhcmFtOCBwYXJhbWV0ZXI4KQorICAgIENyb3NzVGhy
ZWFkVGFzazgoTWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0
ZXIyLCBQYXJhbTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0
ZXI1LCBQYXJhbTYgcGFyYW1ldGVyNiwgUGFyYW03IHBhcmFtZXRlcjcsIFBhcmFtOCBwYXJhbWV0
ZXI4KQogICAgIDogbV9tZXRob2QobWV0aG9kKQogICAgICwgbV9wYXJhbWV0ZXIxKHBhcmFtZXRl
cjEpCiAgICAgLCBtX3BhcmFtZXRlcjIocGFyYW1ldGVyMikKQEAgLTM3OCw3ICszNzgsNyBAQCBQ
YXNzT3duUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFz
aygKICAgICB2b2lkICgqbWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxKSwKICAg
ICBjb25zdCBQMSYgcGFyYW1ldGVyMSkKIHsKLSAgICByZXR1cm4gR2VuZXJpY1Rhc2sxPHR5cGVu
YW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAxPjo6Y3JlYXRlKAorICAgIHJldHVy
biBDcm9zc1RocmVhZFRhc2sxPHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6VHlwZSwg
TVAxPjo6Y3JlYXRlKAogICAgICAgICBtZXRob2QsCiAgICAgICAgIENyb3NzVGhyZWFkQ29waWVy
PFAxPjo6Y29weShwYXJhbWV0ZXIxKSk7CiB9CkBAIC0zODgsNyArMzg4LDcgQEAgUGFzc093blB0
cjxTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpUYXNrPiBjcmVhdGVDYWxsYmFja1Rhc2soCiAgICAg
dm9pZCAoKm1ldGhvZCkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIE1QMSwgTVAyKSwKICAgICBj
b25zdCBQMSYgcGFyYW1ldGVyMSwgY29uc3QgUDImIHBhcmFtZXRlcjIpCiB7Ci0gICAgcmV0dXJu
IEdlbmVyaWNUYXNrMjx0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMT46OlR5cGUsIE1QMSwg
dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDI+OjpUeXBlLCBNUDI+OjpjcmVhdGUoCisgICAg
cmV0dXJuIENyb3NzVGhyZWFkVGFzazI8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpU
eXBlLCBNUDEsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAyPjo6Y3Jl
YXRlKAogICAgICAgICBtZXRob2QsCiAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6Y29w
eShwYXJhbWV0ZXIxKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDI+Ojpjb3B5KHBhcmFtZXRlcjIpKTsK
IH0KQEAgLTM5OCw3ICszOTgsNyBAQCBQYXNzT3duUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6
OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFzaygKICAgICB2b2lkICgqbWV0aG9kKShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1QMyksCiAgICAgY29uc3QgUDEmIHBhcmFtZXRlcjEs
IGNvbnN0IFAyJiBwYXJhbWV0ZXIyLCBjb25zdCBQMyYgcGFyYW1ldGVyMykKIHsKLSAgICByZXR1
cm4gR2VuZXJpY1Rhc2szPHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAx
LCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMj46OlR5cGUsIE1QMiwgdHlwZW5hbWUgQ3Jv
c3NUaHJlYWRDb3BpZXI8UDM+OjpUeXBlLCBNUDM+OjpjcmVhdGUoCisgICAgcmV0dXJuIENyb3Nz
VGhyZWFkVGFzazM8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpUeXBlLCBNUDEsIHR5
cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAyLCB0eXBlbmFtZSBDcm9zc1Ro
cmVhZENvcGllcjxQMz46OlR5cGUsIE1QMz46OmNyZWF0ZSgKICAgICAgICAgbWV0aG9kLAogICAg
ICAgICBDcm9zc1RocmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSksIENyb3NzVGhyZWFk
Q29waWVyPFAyPjo6Y29weShwYXJhbWV0ZXIyKSwKICAgICAgICAgQ3Jvc3NUaHJlYWRDb3BpZXI8
UDM+Ojpjb3B5KHBhcmFtZXRlcjMpKTsKQEAgLTQwOSw3ICs0MDksNyBAQCBQYXNzT3duUHRyPFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFzaygKICAgICB2b2lk
ICgqbWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1QMywgTVA0KSwK
ICAgICBjb25zdCBQMSYgcGFyYW1ldGVyMSwgY29uc3QgUDImIHBhcmFtZXRlcjIsIGNvbnN0IFAz
JiBwYXJhbWV0ZXIzLCBjb25zdCBQNCYgcGFyYW1ldGVyNCkKIHsKLSAgICByZXR1cm4gR2VuZXJp
Y1Rhc2s0PHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAxLCB0eXBlbmFt
ZSBDcm9zc1RocmVhZENvcGllcjxQMj46OlR5cGUsIE1QMiwgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRD
b3BpZXI8UDM+OjpUeXBlLCBNUDMsCisgICAgcmV0dXJuIENyb3NzVGhyZWFkVGFzazQ8dHlwZW5h
bWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpUeXBlLCBNUDEsIHR5cGVuYW1lIENyb3NzVGhyZWFk
Q29waWVyPFAyPjo6VHlwZSwgTVAyLCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMz46OlR5
cGUsIE1QMywKICAgICAgICAgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDQ+OjpUeXBlLCBN
UDQ+OjpjcmVhdGUoCiAgICAgICAgICAgICBtZXRob2QsCiAgICAgICAgICAgICBDcm9zc1RocmVh
ZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSksIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6Y29w
eShwYXJhbWV0ZXIyKSwKQEAgLTQyMSw3ICs0MjEsNyBAQCBQYXNzT3duUHRyPFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQ6OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFzaygKICAgICB2b2lkICgqbWV0aG9k
KShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIsIE1QMywgTVA0LCBNUDUpLAogICAg
IGNvbnN0IFAxJiBwYXJhbWV0ZXIxLCBjb25zdCBQMiYgcGFyYW1ldGVyMiwgY29uc3QgUDMmIHBh
cmFtZXRlcjMsIGNvbnN0IFA0JiBwYXJhbWV0ZXI0LCBjb25zdCBQNSYgcGFyYW1ldGVyNSkKIHsK
LSAgICByZXR1cm4gR2VuZXJpY1Rhc2s1PHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6
VHlwZSwgTVAxLCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMj46OlR5cGUsIE1QMiwgdHlw
ZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDM+OjpUeXBlLCBNUDMsCisgICAgcmV0dXJuIENyb3Nz
VGhyZWFkVGFzazU8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpUeXBlLCBNUDEsIHR5
cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAyLCB0eXBlbmFtZSBDcm9zc1Ro
cmVhZENvcGllcjxQMz46OlR5cGUsIE1QMywKICAgICAgICAgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRD
b3BpZXI8UDQ+OjpUeXBlLCBNUDQsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA1Pjo6VHlw
ZSwgTVA1Pjo6Y3JlYXRlKAogICAgICAgICAgICAgbWV0aG9kLAogICAgICAgICAgICAgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDE+Ojpjb3B5KHBhcmFtZXRlcjEpLCBDcm9zc1RocmVhZENvcGllcjxQMj46
OmNvcHkocGFyYW1ldGVyMiksCkBAIC00MzQsNyArNDM0LDcgQEAgUGFzc093blB0cjxTY3JpcHRF
eGVjdXRpb25Db250ZXh0OjpUYXNrPiBjcmVhdGVDYWxsYmFja1Rhc2soCiAgICAgdm9pZCAoKm1l
dGhvZCkoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIE1QMSwgTVAyLCBNUDMsIE1QNCwgTVA1LCBN
UDYpLAogICAgIGNvbnN0IFAxJiBwYXJhbWV0ZXIxLCBjb25zdCBQMiYgcGFyYW1ldGVyMiwgY29u
c3QgUDMmIHBhcmFtZXRlcjMsIGNvbnN0IFA0JiBwYXJhbWV0ZXI0LCBjb25zdCBQNSYgcGFyYW1l
dGVyNSwgY29uc3QgUDYmIHBhcmFtZXRlcjYpCiB7Ci0gICAgcmV0dXJuIEdlbmVyaWNUYXNrNjx0
eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMT46OlR5cGUsIE1QMSwgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDI+OjpUeXBlLCBNUDIsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAz
Pjo6VHlwZSwgTVAzLAorICAgIHJldHVybiBDcm9zc1RocmVhZFRhc2s2PHR5cGVuYW1lIENyb3Nz
VGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAxLCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQ
Mj46OlR5cGUsIE1QMiwgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDM+OjpUeXBlLCBNUDMs
CiAgICAgICAgIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA0Pjo6VHlwZSwgTVA0LCB0eXBl
bmFtZSBDcm9zc1RocmVhZENvcGllcjxQNT46OlR5cGUsIE1QNSwgdHlwZW5hbWUgQ3Jvc3NUaHJl
YWRDb3BpZXI8UDY+OjpUeXBlLCBNUDY+OjpjcmVhdGUoCiAgICAgICAgICAgICBtZXRob2QsCiAg
ICAgICAgICAgICBDcm9zc1RocmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSksIENyb3Nz
VGhyZWFkQ29waWVyPFAyPjo6Y29weShwYXJhbWV0ZXIyKSwKQEAgLTQ0Nyw3ICs0NDcsNyBAQCBQ
YXNzT3duUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFz
aygKICAgICB2b2lkICgqbWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIs
IE1QMywgTVA0LCBNUDUsIE1QNiwgTVA3KSwKICAgICBjb25zdCBQMSYgcGFyYW1ldGVyMSwgY29u
c3QgUDImIHBhcmFtZXRlcjIsIGNvbnN0IFAzJiBwYXJhbWV0ZXIzLCBjb25zdCBQNCYgcGFyYW1l
dGVyNCwgY29uc3QgUDUmIHBhcmFtZXRlcjUsIGNvbnN0IFA2JiBwYXJhbWV0ZXI2LCBjb25zdCBQ
NyYgcGFyYW1ldGVyNykKIHsKLSAgICByZXR1cm4gR2VuZXJpY1Rhc2s3PHR5cGVuYW1lIENyb3Nz
VGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAxLCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQ
Mj46OlR5cGUsIE1QMiwgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDM+OjpUeXBlLCBNUDMs
CisgICAgcmV0dXJuIENyb3NzVGhyZWFkVGFzazc8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8
UDE+OjpUeXBlLCBNUDEsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAy
LCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMz46OlR5cGUsIE1QMywKICAgICAgICAgdHlw
ZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDQ+OjpUeXBlLCBNUDQsIHR5cGVuYW1lIENyb3NzVGhy
ZWFkQ29waWVyPFA1Pjo6VHlwZSwgTVA1LCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQNj46
OlR5cGUsIE1QNiwKICAgICAgICAgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDc+OjpUeXBl
LCBNUDc+OjpjcmVhdGUoCiAgICAgICAgICAgICBtZXRob2QsCkBAIC00NjIsNyArNDYyLDcgQEAg
UGFzc093blB0cjxTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpUYXNrPiBjcmVhdGVDYWxsYmFja1Rh
c2soCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB2b2lkICgqbWV0aG9kKShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgTVAxLCBNUDIs
IE1QMywgTVA0LCBNUDUsIE1QNiwgTVA3LCBNUDgpLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUDEmIHBhcmFtZXRlcjEs
IGNvbnN0IFAyJiBwYXJhbWV0ZXIyLCBjb25zdCBQMyYgcGFyYW1ldGVyMywgY29uc3QgUDQmIHBh
cmFtZXRlcjQsIGNvbnN0IFA1JiBwYXJhbWV0ZXI1LCBjb25zdCBQNiYgcGFyYW1ldGVyNiwgY29u
c3QgUDcmIHBhcmFtZXRlcjcsIGNvbnN0IFA4JiBwYXJhbWV0ZXI4KQogewotICAgIHJldHVybiBH
ZW5lcmljVGFzazg8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpUeXBlLCBNUDEsIHR5
cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAyLCB0eXBlbmFtZSBDcm9zc1Ro
cmVhZENvcGllcjxQMz46OlR5cGUsIE1QMywKKyAgICByZXR1cm4gQ3Jvc3NUaHJlYWRUYXNrODx0
eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMT46OlR5cGUsIE1QMSwgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDI+OjpUeXBlLCBNUDIsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAz
Pjo6VHlwZSwgTVAzLAogICAgIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA0Pjo6VHlwZSwg
TVA0LCB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQNT46OlR5cGUsIE1QNSwgdHlwZW5hbWUg
Q3Jvc3NUaHJlYWRDb3BpZXI8UDY+OjpUeXBlLCBNUDYsCiAgICAgdHlwZW5hbWUgQ3Jvc3NUaHJl
YWRDb3BpZXI8UDc+OjpUeXBlLCBNUDcsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA4Pjo6
VHlwZSwgTVA4Pjo6Y3JlYXRlKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1ldGhvZCwKQEAgLTQ3NCw0ICs0NzQsNCBAQCBQYXNzT3duUHRy
PFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OlRhc2s+IGNyZWF0ZUNhbGxiYWNrVGFzaygKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gR2VuZXJpY1Rhc2tfaAorI2VuZGlmIC8v
IENyb3NzVGhyZWFkVGFza19oCg==
</data>
<flag name="review"
          id="41071"
          type_id="1"
          status="+"
          setter="levin"
    />
    <flag name="commit-queue"
          id="41072"
          type_id="3"
          status="-"
          setter="jianli"
    />
          </attachment>
      

    </bug>

</bugzilla>