<?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>146670</bug_id>
          
          <creation_ts>2015-07-06 21:29:56 -0700</creation_ts>
          <short_desc>Cleanup: Make ContentSecurityPolicy::ReportingStatus an enum class</short_desc>
          <delta_ts>2015-07-08 21:11:14 -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 Misc.</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="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>mkwst</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1107364</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-07-06 21:29:56 -0700</bug_when>
    <thetext>We should make calling the various CSP allow* functions less error prone. One idea is to make ContentSecurityPolicy::ReportingStatus an enum class so as to prevent implicit conversion to an integral value (as implied in the fix for &lt;https://trac.webkit.org/changeset/186395&gt;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1107460</commentid>
    <comment_count>1</comment_count>
      <attachid>256303</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-07-07 09:51:00 -0700</bug_when>
    <thetext>Created attachment 256303
Patch

I&apos;m open to suggestions on how we can make using the various ContentSecurityPolicy::allow* functions less error prone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108098</commentid>
    <comment_count>2</comment_count>
      <attachid>256303</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-07-08 21:11:08 -0700</bug_when>
    <thetext>Comment on attachment 256303
Patch

Clearing flags on attachment: 256303

Committed r186574: &lt;http://trac.webkit.org/changeset/186574&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108099</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-07-08 21:11:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256303</attachid>
            <date>2015-07-07 09:51:00 -0700</date>
            <delta_ts>2015-07-08 21:11:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146670-20150707095001.patch</filename>
            <type>text/plain</type>
            <size>23159</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2Mzk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTlhYTI5NzhiZTk4ZjY2
MDU0Y2RhODVkYTRmOGE1Y2Y4YTMzMzFjZC4uZmE0MzI1NWYwYzg2MDA3NWIyYmEwYjA5MDRhNjMy
M2QwODUxNmZlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE1LTA3LTA3ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhbnVwOiBNYWtlIENv
bnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzIGFuIGVudW0gY2xhc3MKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NjY3MAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2UgY2FsbGluZyB0
aGUgQ29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvdyogZnVuY3Rpb25zIGxlc3MgZXJyb3IgcHJv
bmUgYnkgbWFraW5nCisgICAgICAgIENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3Rh
dHVzIGFuIGVudW0gY2xhc3MuIEFtb25nIG90aGVyIGJlbmVmaXRzIHRoaXMgd2lsbAorICAgICAg
ICBwcmV2ZW50IGEgY2FsbGVyIGZyb20gaW5hZHZlcnRlbnRseSBwYXNzaW5nIGFuIGVudW1lcmF0
b3Igb2YgQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMKKyAgICAgICAgYXMg
dGhlIGJvb2xlYW4gYXJndW1lbnQgb3ZlcnJpZGluZ0NvbnRlbnRTZWN1cml0eVBvbGljeSwgd2hp
Y2ggaXMgdGFrZW4gYnkgdGhlIHZhcmlvdXMKKyAgICAgICAgQ29udGVudFNlY3VyaXR5UG9saWN5
OjphbGxvdyogZnVuY3Rpb25zLCBieSBjYXVzaW5nIGEgY29tcGlsZS10aW1lIGVycm9yIChzaW5j
ZSBhbiBlbnVtIGNsYXNzCisgICAgICAgIGVudW1lcmF0b3IgY2Fubm90IGJlIGltcGxpY2l0bHkg
Y29udmVydGVkIHRvIGFuIGludGVncmFsIHR5cGUpLgorCisgICAgICAgICogYmluZGluZ3MvanMv
U2NyaXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRDb250cm9sbGVy
Ojppbml0U2NyaXB0KToKKyAgICAgICAgKiBwYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0phdmFTY3JpcHRVUkxz
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRI
YW5kbGVycyk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVNjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGlu
ZVN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93RXZhbCk6
CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd1BsdWdpblR5cGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dTY3JpcHRGcm9tU291cmNl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93T2JqZWN0RnJvbVNv
dXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0NoaWxkRnJh
bWVGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFsbG93
SW1hZ2VGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6OmFs
bG93U3R5bGVGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2ZUxpc3Q6
OmFsbG93Rm9udEZyb21Tb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZlTGlz
dDo6YWxsb3dNZWRpYUZyb21Tb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0aXZl
TGlzdDo6YWxsb3dDb25uZWN0VG9Tb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NQRGlyZWN0
aXZlTGlzdDo6YWxsb3dGb3JtQWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTUERpcmVjdGl2
ZUxpc3Q6OmFsbG93QmFzZVVSSSk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OmRpZFJlY2VpdmVIZWFkZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudFNlY3Vy
aXR5UG9saWN5OjpldmFsRGlzYWJsZWRFcnJvck1lc3NhZ2UpOgorICAgICAgICAqIHBhZ2UvQ29u
dGVudFNlY3VyaXR5UG9saWN5Lmg6CisgICAgICAgICogcGFnZS9ET01TZWN1cml0eVBvbGljeS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpET01TZWN1cml0eVBvbGljeTo6YWxsb3dzRXZhbCk6CisK
IDIwMTUtMDctMDYgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IElzb2xhdGVkIHdvcmxkcyBzaG91bGQgcmVzcGVjdCBDb250ZW50IFNlY3VyaXR5IFBvbGljeTsg
VXNlciBBZ2VudCBTaGFkb3cgRE9NCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Nj
cmlwdENvbnRyb2xsZXIuY3BwCmluZGV4IDE0MDNkMGE2Mzk0OGZiNmNlZmM1YTdhNDYzNjU1NTE2
YzE2MWU5OWMuLmVkZTk5OTc4MTNiZTI5YzhhOGNjMmJiZDY0OGJiZjljNDNiNTVmMzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCkBAIC0y
NTgsNyArMjU4LDcgQEAgSlNET01XaW5kb3dTaGVsbCogU2NyaXB0Q29udHJvbGxlcjo6aW5pdFNj
cmlwdChET01XcmFwcGVyV29ybGQmIHdvcmxkKQogICAgICAgICBpZiAoc2hvdWxkQnlwYXNzTWFp
bldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KQogICAgICAgICAgICAgd2luZG93U2hlbGwtPndp
bmRvdygpLT5zZXRFdmFsRW5hYmxlZCh0cnVlKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAg
d2luZG93U2hlbGwtPndpbmRvdygpLT5zZXRFdmFsRW5hYmxlZChtX2ZyYW1lLmRvY3VtZW50KCkt
PmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0V2YWwoMCwgc2hvdWxkQnlwYXNzTWFpbldv
cmxkQ29udGVudFNlY3VyaXR5UG9saWN5LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlN1cHByZXNz
UmVwb3J0KSwgbV9mcmFtZS5kb2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+ZXZh
bERpc2FibGVkRXJyb3JNZXNzYWdlKCkpOworICAgICAgICAgICAgd2luZG93U2hlbGwtPndpbmRv
dygpLT5zZXRFdmFsRW5hYmxlZChtX2ZyYW1lLmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBv
bGljeSgpLT5hbGxvd0V2YWwoMCwgc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5
UG9saWN5LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U3VwcHJlc3NS
ZXBvcnQpLCBtX2ZyYW1lLmRvY3VtZW50KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5ldmFs
RGlzYWJsZWRFcnJvck1lc3NhZ2UoKSk7CiAgICAgfQogCiAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBt
X2ZyYW1lLnBhZ2UoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50
U2VjdXJpdHlQb2xpY3kuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZW50U2VjdXJpdHlQ
b2xpY3kuY3BwCmluZGV4IGQxYTM2NDBkYzdmY2U4ZTJlMjU1MDA4ZGEyM2M3ZWM3YTYxZGQxNzku
LjAxYTMzZGQ5MWM5NDFjNzQ0MWE2NTYyYjkxNzFlY2JlNWVkOTcxN2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5jcHAKQEAgLTk5NCw3ICs5OTQsNyBA
QCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKFNv
dXJjZUxpc3REaXJlY3RpdmUqIGRpcmVjdAogYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0ph
dmFTY3JpcHRVUkxzKGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFs
TnVtYmVyJiBjb250ZXh0TGluZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0
dXMgcmVwb3J0aW5nU3RhdHVzKSBjb25zdAogewogICAgIERFUFJFQ0FURURfREVGSU5FX1NUQVRJ
Q19MT0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoQVNDSUlMaXRlcmFsKCJSZWZ1c2VkIHRv
IGV4ZWN1dGUgSmF2YVNjcmlwdCBVUkwgYmVjYXVzZSBpdCB2aW9sYXRlcyB0aGUgZm9sbG93aW5n
IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpKTsKLSAgICByZXR1cm4gcmVw
b3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U2VuZFJlcG9ydCA/CisgICAg
cmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGlu
Z1N0YXR1czo6U2VuZFJlcG9ydCA/CiAgICAgICAgIGNoZWNrSW5saW5lQW5kUmVwb3J0VmlvbGF0
aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIGNvbnNvbGVNZXNzYWdl
LCBjb250ZXh0VVJMLCBjb250ZXh0TGluZSwgdHJ1ZSkKICAgICAgICAgOiAobV9yZXBvcnRPbmx5
IHx8IGNoZWNrSW5saW5lKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSkpKTsK
IH0KQEAgLTEwMDIsNyArMTAwMiw3IEBAIGJvb2wgQ1NQRGlyZWN0aXZlTGlzdDo6YWxsb3dKYXZh
U2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6CiBib29sIENT
UERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyhjb25zdCBTdHJpbmcmIGNv
bnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUsIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzIHJlcG9ydGluZ1N0YXR1cykgY29uc3QKIHsK
ICAgICBERVBSRUNBVEVEX0RFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2Fn
ZSwgKEFTQ0lJTGl0ZXJhbCgiUmVmdXNlZCB0byBleGVjdXRlIGlubGluZSBldmVudCBoYW5kbGVy
IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eSBkaXJlY3RpdmU6ICIpKSk7Ci0gICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OlNlbmRSZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMg
PT0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwog
ICAgICAgICBjaGVja0lubGluZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUo
bV9zY3JpcHRTcmMuZ2V0KCkpLCBjb25zb2xlTWVzc2FnZSwgY29udGV4dFVSTCwgY29udGV4dExp
bmUsIHRydWUpCiAgICAgICAgIDogKG1fcmVwb3J0T25seSB8fCBjaGVja0lubGluZShvcGVyYXRp
dmVEaXJlY3RpdmUobV9zY3JpcHRTcmMuZ2V0KCkpKSk7CiB9CkBAIC0xMDEwLDcgKzEwMTAsNyBA
QCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5saW5lRXZlbnRIYW5kbGVycyhjb25zdCBT
dHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0CiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93SW5s
aW5lU2NyaXB0KGNvbnN0IFN0cmluZyYgY29udGV4dFVSTCwgY29uc3QgV1RGOjpPcmRpbmFsTnVt
YmVyJiBjb250ZXh0TGluZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMg
cmVwb3J0aW5nU3RhdHVzKSBjb25zdAogewogICAgIERFUFJFQ0FURURfREVGSU5FX1NUQVRJQ19M
T0NBTChTdHJpbmcsIGNvbnNvbGVNZXNzYWdlLCAoQVNDSUlMaXRlcmFsKCJSZWZ1c2VkIHRvIGV4
ZWN1dGUgaW5saW5lIHNjcmlwdCBiZWNhdXNlIGl0IHZpb2xhdGVzIHRoZSBmb2xsb3dpbmcgQ29u
dGVudCBTZWN1cml0eSBQb2xpY3kgZGlyZWN0aXZlOiAiKSkpOwotICAgIHJldHVybiByZXBvcnRp
bmdTdGF0dXMgPT0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpTZW5kUmVwb3J0ID8KKyAgICByZXR1
cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3Rh
dHVzOjpTZW5kUmVwb3J0ID8KICAgICAgICAgY2hlY2tJbmxpbmVBbmRSZXBvcnRWaW9sYXRpb24o
b3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIGNv
bnRleHRVUkwsIGNvbnRleHRMaW5lLCB0cnVlKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwg
Y2hlY2tJbmxpbmUob3BlcmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSkpOwogfQpA
QCAtMTAxOCw3ICsxMDE4LDcgQEAgYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0lubGluZVNj
cmlwdChjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3IKIGJvb2wgQ1NQRGly
ZWN0aXZlTGlzdDo6YWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNv
bnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUsIENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6UmVwb3J0aW5nU3RhdHVzIHJlcG9ydGluZ1N0YXR1cykgY29uc3QKIHsKICAgICBERVBSRUNB
VEVEX0RFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBjb25zb2xlTWVzc2FnZSwgKEFTQ0lJTGl0
ZXJhbCgiUmVmdXNlZCB0byBhcHBseSBpbmxpbmUgc3R5bGUgYmVjYXVzZSBpdCB2aW9sYXRlcyB0
aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGRpcmVjdGl2ZTogIikpKTsKLSAg
ICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U2VuZFJl
cG9ydCA/CisgICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xp
Y3k6OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCA/CiAgICAgICAgIGNoZWNrSW5saW5lQW5k
UmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3N0eWxlU3JjLmdldCgpKSwgY29u
c29sZU1lc3NhZ2UsIGNvbnRleHRVUkwsIGNvbnRleHRMaW5lLCBmYWxzZSkgOgogICAgICAgICAo
bV9yZXBvcnRPbmx5IHx8IGNoZWNrSW5saW5lKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3N0eWxlU3Jj
LmdldCgpKSkpOwogfQpAQCAtMTAyNiwyMSArMTAyNiwyMSBAQCBib29sIENTUERpcmVjdGl2ZUxp
c3Q6OmFsbG93SW5saW5lU3R5bGUoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6
Ok9yZAogYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0V2YWwoSlNDOjpFeGVjU3RhdGUqIHN0
YXRlLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyByZXBvcnRpbmdTdGF0
dXMpIGNvbnN0CiB7CiAgICAgREVQUkVDQVRFRF9ERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywg
Y29uc29sZU1lc3NhZ2UsIChBU0NJSUxpdGVyYWwoIlJlZnVzZWQgdG8gZXZhbHVhdGUgc2NyaXB0
IGJlY2F1c2UgaXQgdmlvbGF0ZXMgdGhlIGZvbGxvd2luZyBDb250ZW50IFNlY3VyaXR5IFBvbGlj
eSBkaXJlY3RpdmU6ICIpKSk7Ci0gICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OlNlbmRSZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMg
PT0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwog
ICAgICAgICBjaGVja0V2YWxBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1f
c2NyaXB0U3JjLmdldCgpKSwgY29uc29sZU1lc3NhZ2UsIFN0cmluZygpLCBXVEY6Ok9yZGluYWxO
dW1iZXI6OmJlZm9yZUZpcnN0KCksIHN0YXRlKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwg
Y2hlY2tFdmFsKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSkpKTsKIH0KIAog
Ym9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd1BsdWdpblR5cGUoY29uc3QgU3RyaW5nJiB0eXBl
LCBjb25zdCBTdHJpbmcmIHR5cGVBdHRyaWJ1dGUsIGNvbnN0IFVSTCYgdXJsLCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyByZXBvcnRpbmdTdGF0dXMpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlNlbmRS
ZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVudFNlY3VyaXR5UG9s
aWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwogICAgICAgICBjaGVja01lZGlhVHlw
ZUFuZFJlcG9ydFZpb2xhdGlvbihtX3BsdWdpblR5cGVzLmdldCgpLCB0eXBlLCB0eXBlQXR0cmli
dXRlLCAiUmVmdXNlZCB0byBsb2FkICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xl
bmd0aCgpICsgIicgKE1JTUUgdHlwZSAnIiArIHR5cGVBdHRyaWJ1dGUgKyAiJykgYmVjYXVzZSBp
dCB2aW9sYXRlcyB0aGUgZm9sbG93aW5nIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IERpcmVjdGl2
ZTogIikgOgogICAgICAgICAobV9yZXBvcnRPbmx5IHx8IGNoZWNrTWVkaWFUeXBlKG1fcGx1Z2lu
VHlwZXMuZ2V0KCksIHR5cGUsIHR5cGVBdHRyaWJ1dGUpKTsKIH0KIAogYm9vbCBDU1BEaXJlY3Rp
dmVMaXN0OjphbGxvd1NjcmlwdEZyb21Tb3VyY2UoY29uc3QgVVJMJiB1cmwsIENvbnRlbnRTZWN1
cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzIHJlcG9ydGluZ1N0YXR1cykgY29uc3QKIHsKLSAg
ICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U2VuZFJl
cG9ydCA/CisgICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xp
Y3k6OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCA/CiAgICAgICAgIGNoZWNrU291cmNlQW5k
UmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2ZURpcmVjdGl2ZShtX3NjcmlwdFNyYy5nZXQoKSksIHVy
bCwgc2NyaXB0U3JjKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tTb3VyY2Uob3Bl
cmF0aXZlRGlyZWN0aXZlKG1fc2NyaXB0U3JjLmdldCgpKSwgdXJsKSk7CiB9CkBAIC0xMDQ5LDcg
KzEwNDksNyBAQCBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93T2JqZWN0RnJvbVNvdXJjZShj
b25zdCBVUkwmIHVybCwgQ29udGVudFNlY3VyaXR5UG9saQogewogICAgIGlmICh1cmwuaXNCbGFu
a1VSTCgpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXR1cm4gcmVwb3J0aW5nU3RhdHVz
ID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U2VuZFJlcG9ydCA/CisgICAgcmV0dXJuIHJlcG9y
dGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U2Vu
ZFJlcG9ydCA/CiAgICAgICAgIGNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKG9wZXJhdGl2
ZURpcmVjdGl2ZShtX29iamVjdFNyYy5nZXQoKSksIHVybCwgb2JqZWN0U3JjKSA6CiAgICAgICAg
IChtX3JlcG9ydE9ubHkgfHwgY2hlY2tTb3VyY2Uob3BlcmF0aXZlRGlyZWN0aXZlKG1fb2JqZWN0
U3JjLmdldCgpKSwgdXJsKSk7CiB9CkBAIC0xMDU4LDQyICsxMDU4LDQyIEBAIGJvb2wgQ1NQRGly
ZWN0aXZlTGlzdDo6YWxsb3dDaGlsZEZyYW1lRnJvbVNvdXJjZShjb25zdCBVUkwmIHVybCwgQ29u
dGVudFNlY3VyaXR5CiB7CiAgICAgaWYgKHVybC5pc0JsYW5rVVJMKCkpCiAgICAgICAgIHJldHVy
biB0cnVlOwotICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVudFNlY3VyaXR5UG9s
aWN5OjpTZW5kUmVwb3J0ID8KKyAgICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0ID8KICAgICAgICAgY2hl
Y2tTb3VyY2VBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fZnJhbWVTcmMu
Z2V0KCkpLCB1cmwsIGZyYW1lU3JjKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tT
b3VyY2Uob3BlcmF0aXZlRGlyZWN0aXZlKG1fZnJhbWVTcmMuZ2V0KCkpLCB1cmwpKTsKIH0KIAog
Ym9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0ltYWdlRnJvbVNvdXJjZShjb25zdCBVUkwmIHVy
bCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMgcmVwb3J0aW5nU3RhdHVz
KSBjb25zdAogewotICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVudFNlY3VyaXR5
UG9saWN5OjpTZW5kUmVwb3J0ID8KKyAgICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRl
bnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0ID8KICAgICAgICAg
Y2hlY2tTb3VyY2VBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1faW1nU3Jj
LmdldCgpKSwgdXJsLCBpbWdTcmMpIDoKICAgICAgICAgKG1fcmVwb3J0T25seSB8fCBjaGVja1Nv
dXJjZShvcGVyYXRpdmVEaXJlY3RpdmUobV9pbWdTcmMuZ2V0KCkpLCB1cmwpKTsKIH0KIAogYm9v
bCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd1N0eWxlRnJvbVNvdXJjZShjb25zdCBVUkwmIHVybCwg
Q29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMgcmVwb3J0aW5nU3RhdHVzKSBj
b25zdAogewotICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVudFNlY3VyaXR5UG9s
aWN5OjpTZW5kUmVwb3J0ID8KKyAgICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0ID8KICAgICAgICAgY2hl
Y2tTb3VyY2VBbmRSZXBvcnRWaW9sYXRpb24ob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMu
Z2V0KCkpLCB1cmwsIHN0eWxlU3JjKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tT
b3VyY2Uob3BlcmF0aXZlRGlyZWN0aXZlKG1fc3R5bGVTcmMuZ2V0KCkpLCB1cmwpKTsKIH0KIAog
Ym9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0ZvbnRGcm9tU291cmNlKGNvbnN0IFVSTCYgdXJs
LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyByZXBvcnRpbmdTdGF0dXMp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OlNlbmRSZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwogICAgICAgICBj
aGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9mb250U3Jj
LmdldCgpKSwgdXJsLCBmb250U3JjKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tT
b3VyY2Uob3BlcmF0aXZlRGlyZWN0aXZlKG1fZm9udFNyYy5nZXQoKSksIHVybCkpOwogfQogCiBi
b29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93TWVkaWFGcm9tU291cmNlKGNvbnN0IFVSTCYgdXJs
LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyByZXBvcnRpbmdTdGF0dXMp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OlNlbmRSZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwogICAgICAgICBj
aGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9tZWRpYVNy
Yy5nZXQoKSksIHVybCwgbWVkaWFTcmMpIDoKICAgICAgICAgKG1fcmVwb3J0T25seSB8fCBjaGVj
a1NvdXJjZShvcGVyYXRpdmVEaXJlY3RpdmUobV9tZWRpYVNyYy5nZXQoKSksIHVybCkpOwogfQog
CiBib29sIENTUERpcmVjdGl2ZUxpc3Q6OmFsbG93Q29ubmVjdFRvU291cmNlKGNvbnN0IFVSTCYg
dXJsLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyByZXBvcnRpbmdTdGF0
dXMpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OlNlbmRSZXBvcnQgPworICAgIHJldHVybiByZXBvcnRpbmdTdGF0dXMgPT0gQ29u
dGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQgPwogICAgICAg
ICBjaGVja1NvdXJjZUFuZFJlcG9ydFZpb2xhdGlvbihvcGVyYXRpdmVEaXJlY3RpdmUobV9jb25u
ZWN0U3JjLmdldCgpKSwgdXJsLCBjb25uZWN0U3JjKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkg
fHwgY2hlY2tTb3VyY2Uob3BlcmF0aXZlRGlyZWN0aXZlKG1fY29ubmVjdFNyYy5nZXQoKSksIHVy
bCkpOwogfQpAQCAtMTEwNiwxNCArMTEwNiwxNCBAQCB2b2lkIENTUERpcmVjdGl2ZUxpc3Q6Omdh
dGhlclJlcG9ydFVSSXMoRE9NU3RyaW5nTGlzdCYgbGlzdCkgY29uc3QKIAogYm9vbCBDU1BEaXJl
Y3RpdmVMaXN0OjphbGxvd0Zvcm1BY3Rpb24oY29uc3QgVVJMJiB1cmwsIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzIHJlcG9ydGluZ1N0YXR1cykgY29uc3QKIHsKLSAgICBy
ZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U2VuZFJlcG9y
dCA/CisgICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250ZW50U2VjdXJpdHlQb2xpY3k6
OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCA/CiAgICAgICAgIGNoZWNrU291cmNlQW5kUmVw
b3J0VmlvbGF0aW9uKG1fZm9ybUFjdGlvbi5nZXQoKSwgdXJsLCBmb3JtQWN0aW9uKSA6CiAgICAg
ICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tTb3VyY2UobV9mb3JtQWN0aW9uLmdldCgpLCB1cmwp
KTsKIH0KIAogYm9vbCBDU1BEaXJlY3RpdmVMaXN0OjphbGxvd0Jhc2VVUkkoY29uc3QgVVJMJiB1
cmwsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzIHJlcG9ydGluZ1N0YXR1
cykgY29uc3QKIHsKLSAgICByZXR1cm4gcmVwb3J0aW5nU3RhdHVzID09IENvbnRlbnRTZWN1cml0
eVBvbGljeTo6U2VuZFJlcG9ydCA/CisgICAgcmV0dXJuIHJlcG9ydGluZ1N0YXR1cyA9PSBDb250
ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCA/CiAgICAgICAg
IGNoZWNrU291cmNlQW5kUmVwb3J0VmlvbGF0aW9uKG1fYmFzZVVSSS5nZXQoKSwgdXJsLCBiYXNl
VVJJKSA6CiAgICAgICAgIChtX3JlcG9ydE9ubHkgfHwgY2hlY2tTb3VyY2UobV9iYXNlVVJJLmdl
dCgpLCB1cmwpKTsKIH0KQEAgLTEzNzEsNyArMTM3MSw3IEBAIHZvaWQgQ29udGVudFNlY3VyaXR5
UG9saWN5OjpkaWRSZWNlaXZlSGVhZGVyKGNvbnN0IFN0cmluZyYgaGVhZGVyLCBIZWFkZXJUeXBl
IHR5CiAgICAgICAgIC8vIGhlYWRlcjEsaGVhZGVyMiBPUiBoZWFkZXIxCiAgICAgICAgIC8vICAg
ICAgICBeICAgICAgICAgICAgICAgICAgXgogICAgICAgICBzdGQ6OnVuaXF1ZV9wdHI8Q1NQRGly
ZWN0aXZlTGlzdD4gcG9saWN5ID0gQ1NQRGlyZWN0aXZlTGlzdDo6Y3JlYXRlKHRoaXMsIFN0cmlu
ZyhiZWdpbiwgcG9zaXRpb24gLSBiZWdpbiksIHR5cGUpOwotICAgICAgICBpZiAoIXBvbGljeS0+
YWxsb3dFdmFsKDAsIFN1cHByZXNzUmVwb3J0KSkKKyAgICAgICAgaWYgKCFwb2xpY3ktPmFsbG93
RXZhbCgwLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U3VwcHJlc3NS
ZXBvcnQpKQogICAgICAgICAgICAgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5kaXNhYmxlRXZh
bChwb2xpY3ktPmV2YWxEaXNhYmxlZEVycm9yTWVzc2FnZSgpKTsKIAogICAgICAgICBtX3BvbGlj
aWVzLmFwcGVuZChwb2xpY3kucmVsZWFzZSgpKTsKQEAgLTE0NjksNyArMTQ2OSw3IEBAIGJvb2wg
Q29udGVudFNlY3VyaXR5UG9saWN5OjphbGxvd0V2YWwoSlNDOjpFeGVjU3RhdGUqIHN0YXRlLCBi
b29sIG92ZXJyaWRlQ29udGVuCiBTdHJpbmcgQ29udGVudFNlY3VyaXR5UG9saWN5OjpldmFsRGlz
YWJsZWRFcnJvck1lc3NhZ2UoKSBjb25zdAogewogICAgIGZvciAoYXV0byYgcG9saWN5IDogbV9w
b2xpY2llcykgewotICAgICAgICBpZiAoIXBvbGljeS0+YWxsb3dFdmFsKDAsIFN1cHByZXNzUmVw
b3J0KSkKKyAgICAgICAgaWYgKCFwb2xpY3ktPmFsbG93RXZhbCgwLCBDb250ZW50U2VjdXJpdHlQ
b2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U3VwcHJlc3NSZXBvcnQpKQogICAgICAgICAgICAgcmV0
dXJuIHBvbGljeS0+ZXZhbERpc2FibGVkRXJyb3JNZXNzYWdlKCk7CiAgICAgfQogICAgIHJldHVy
biBTdHJpbmcoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGVudFNlY3Vy
aXR5UG9saWN5LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRlbnRTZWN1cml0eVBvbGljeS5o
CmluZGV4IGE3MWI1ZmMwZGM0ZGE4MjMyMGE3NTYwZGVjOWI2Y2ZhODExMTMzMjEuLmRjM2M5NTEw
M2I3MTc0NDhiNzQzZjQwYjI1OTJkZWM4NDIxZmY2MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvQ29udGVudFNlY3VyaXR5UG9saWN5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9Db250ZW50U2VjdXJpdHlQb2xpY3kuaApAQCAtNjMsNyArNjMsNyBAQCBwdWJsaWM6CiAgICAg
ICAgIFByZWZpeGVkRW5mb3JjZQogICAgIH07CiAKLSAgICBlbnVtIFJlcG9ydGluZ1N0YXR1cyB7
CisgICAgZW51bSBjbGFzcyBSZXBvcnRpbmdTdGF0dXMgewogICAgICAgICBTZW5kUmVwb3J0LAog
ICAgICAgICBTdXBwcmVzc1JlcG9ydAogICAgIH07CkBAIC04NCwyMyArODQsMjMgQEAgcHVibGlj
OgogICAgIGNvbnN0IFN0cmluZyYgZGVwcmVjYXRlZEhlYWRlcigpIGNvbnN0OwogICAgIEhlYWRl
clR5cGUgZGVwcmVjYXRlZEhlYWRlclR5cGUoKSBjb25zdDsKIAotICAgIGJvb2wgYWxsb3dKYXZh
U2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51
bWJlciYgY29udGV4dExpbmUsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBm
YWxzZSwgUmVwb3J0aW5nU3RhdHVzID0gU2VuZFJlcG9ydCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxv
d0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6
Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5
UG9saWN5ID0gZmFsc2UsIFJlcG9ydGluZ1N0YXR1cyA9IFNlbmRSZXBvcnQpIGNvbnN0OwotICAg
IGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3RyaW5nJiBjb250ZXh0VVJMLCBjb25zdCBX
VEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3Vy
aXR5UG9saWN5ID0gZmFsc2UsIFJlcG9ydGluZ1N0YXR1cyA9IFNlbmRSZXBvcnQpIGNvbnN0Owot
ICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0
IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2Vj
dXJpdHlQb2xpY3kgPSBmYWxzZSwgUmVwb3J0aW5nU3RhdHVzID0gU2VuZFJlcG9ydCkgY29uc3Q7
Ci0gICAgYm9vbCBhbGxvd0V2YWwoSlNDOjpFeGVjU3RhdGUqID0gbnVsbHB0ciwgYm9vbCBvdmVy
cmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBSZXBvcnRpbmdTdGF0dXMgPSBTZW5k
UmVwb3J0KSBjb25zdDsKLSAgICBib29sIGFsbG93UGx1Z2luVHlwZShjb25zdCBTdHJpbmcmIHR5
cGUsIGNvbnN0IFN0cmluZyYgdHlwZUF0dHJpYnV0ZSwgY29uc3QgVVJMJiwgYm9vbCBvdmVycmlk
ZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBSZXBvcnRpbmdTdGF0dXMgPSBTZW5kUmVw
b3J0KSBjb25zdDsKLQotICAgIGJvb2wgYWxsb3dTY3JpcHRGcm9tU291cmNlKGNvbnN0IFVSTCYs
IGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgUmVwb3J0aW5nU3Rh
dHVzID0gU2VuZFJlcG9ydCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxvd09iamVjdEZyb21Tb3VyY2Uo
Y29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBS
ZXBvcnRpbmdTdGF0dXMgPSBTZW5kUmVwb3J0KSBjb25zdDsKLSAgICBib29sIGFsbG93Q2hpbGRG
cmFtZUZyb21Tb3VyY2UoY29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBv
bGljeSA9IGZhbHNlLCBSZXBvcnRpbmdTdGF0dXMgPSBTZW5kUmVwb3J0KSBjb25zdDsKLSAgICBi
b29sIGFsbG93SW1hZ2VGcm9tU291cmNlKGNvbnN0IFVSTCYsIGJvb2wgb3ZlcnJpZGVDb250ZW50
U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgUmVwb3J0aW5nU3RhdHVzID0gU2VuZFJlcG9ydCkgY29u
c3Q7Ci0gICAgYm9vbCBhbGxvd1N0eWxlRnJvbVNvdXJjZShjb25zdCBVUkwmLCBib29sIG92ZXJy
aWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2UsIFJlcG9ydGluZ1N0YXR1cyA9IFNlbmRS
ZXBvcnQpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dGb250RnJvbVNvdXJjZShjb25zdCBVUkwmLCBi
b29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2UsIFJlcG9ydGluZ1N0YXR1
cyA9IFNlbmRSZXBvcnQpIGNvbnN0OwotICAgIGJvb2wgYWxsb3dNZWRpYUZyb21Tb3VyY2UoY29u
c3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBSZXBv
cnRpbmdTdGF0dXMgPSBTZW5kUmVwb3J0KSBjb25zdDsKLSAgICBib29sIGFsbG93Q29ubmVjdFRv
U291cmNlKGNvbnN0IFVSTCYsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBm
YWxzZSwgUmVwb3J0aW5nU3RhdHVzID0gU2VuZFJlcG9ydCkgY29uc3Q7Ci0gICAgYm9vbCBhbGxv
d0Zvcm1BY3Rpb24oY29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGlj
eSA9IGZhbHNlLCBSZXBvcnRpbmdTdGF0dXMgPSBTZW5kUmVwb3J0KSBjb25zdDsKLSAgICBib29s
IGFsbG93QmFzZVVSSShjb25zdCBVUkwmLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9s
aWN5ID0gZmFsc2UsIFJlcG9ydGluZ1N0YXR1cyA9IFNlbmRSZXBvcnQpIGNvbnN0OworICAgIGJv
b2wgYWxsb3dKYXZhU2NyaXB0VVJMcyhjb25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdU
Rjo6T3JkaW5hbE51bWJlciYgY29udGV4dExpbmUsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJp
dHlQb2xpY3kgPSBmYWxzZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMg
PSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCkgY29u
c3Q7CisgICAgYm9vbCBhbGxvd0lubGluZUV2ZW50SGFuZGxlcnMoY29uc3QgU3RyaW5nJiBjb250
ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lLCBib29sIG92ZXJy
aWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2UsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
UmVwb3J0aW5nU3RhdHVzID0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6
OlNlbmRSZXBvcnQpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTY3JpcHQoY29uc3QgU3Ry
aW5nJiBjb250ZXh0VVJMLCBjb25zdCBXVEY6Ok9yZGluYWxOdW1iZXImIGNvbnRleHRMaW5lLCBi
b29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2UsIENvbnRlbnRTZWN1cml0
eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzID0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpSZXBvcnRp
bmdTdGF0dXM6OlNlbmRSZXBvcnQpIGNvbnN0OworICAgIGJvb2wgYWxsb3dJbmxpbmVTdHlsZShj
b25zdCBTdHJpbmcmIGNvbnRleHRVUkwsIGNvbnN0IFdURjo6T3JkaW5hbE51bWJlciYgY29udGV4
dExpbmUsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgQ29udGVu
dFNlY3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXMgPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6
OlJlcG9ydGluZ1N0YXR1czo6U2VuZFJlcG9ydCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0V2YWwo
SlNDOjpFeGVjU3RhdGUqID0gbnVsbHB0ciwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBv
bGljeSA9IGZhbHNlLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyA9IENv
bnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0KSBjb25zdDsK
KyAgICBib29sIGFsbG93UGx1Z2luVHlwZShjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFN0cmlu
ZyYgdHlwZUF0dHJpYnV0ZSwgY29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0
eVBvbGljeSA9IGZhbHNlLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyA9
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0KSBjb25z
dDsKKworICAgIGJvb2wgYWxsb3dTY3JpcHRGcm9tU291cmNlKGNvbnN0IFVSTCYsIGJvb2wgb3Zl
cnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgQ29udGVudFNlY3VyaXR5UG9saWN5
OjpSZXBvcnRpbmdTdGF0dXMgPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1
czo6U2VuZFJlcG9ydCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd09iamVjdEZyb21Tb3VyY2UoY29u
c3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBDb250
ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyA9IENvbnRlbnRTZWN1cml0eVBvbGlj
eTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0KSBjb25zdDsKKyAgICBib29sIGFsbG93Q2hp
bGRGcmFtZUZyb21Tb3VyY2UoY29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0
eVBvbGljeSA9IGZhbHNlLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyA9
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0KSBjb25z
dDsKKyAgICBib29sIGFsbG93SW1hZ2VGcm9tU291cmNlKGNvbnN0IFVSTCYsIGJvb2wgb3ZlcnJp
ZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpS
ZXBvcnRpbmdTdGF0dXMgPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1czo6
U2VuZFJlcG9ydCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd1N0eWxlRnJvbVNvdXJjZShjb25zdCBV
UkwmLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2UsIENvbnRlbnRT
ZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzID0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpS
ZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQpIGNvbnN0OworICAgIGJvb2wgYWxsb3dGb250RnJv
bVNvdXJjZShjb25zdCBVUkwmLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0g
ZmFsc2UsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzID0gQ29udGVudFNl
Y3VyaXR5UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQpIGNvbnN0OworICAgIGJv
b2wgYWxsb3dNZWRpYUZyb21Tb3VyY2UoY29uc3QgVVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRT
ZWN1cml0eVBvbGljeSA9IGZhbHNlLCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0
YXR1cyA9IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0
KSBjb25zdDsKKyAgICBib29sIGFsbG93Q29ubmVjdFRvU291cmNlKGNvbnN0IFVSTCYsIGJvb2wg
b3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBmYWxzZSwgQ29udGVudFNlY3VyaXR5UG9s
aWN5OjpSZXBvcnRpbmdTdGF0dXMgPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0
YXR1czo6U2VuZFJlcG9ydCkgY29uc3Q7CisgICAgYm9vbCBhbGxvd0Zvcm1BY3Rpb24oY29uc3Qg
VVJMJiwgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlLCBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OlJlcG9ydGluZ1N0YXR1cyA9IENvbnRlbnRTZWN1cml0eVBvbGljeTo6
UmVwb3J0aW5nU3RhdHVzOjpTZW5kUmVwb3J0KSBjb25zdDsKKyAgICBib29sIGFsbG93QmFzZVVS
SShjb25zdCBVUkwmLCBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2Us
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzID0gQ29udGVudFNlY3VyaXR5
UG9saWN5OjpSZXBvcnRpbmdTdGF0dXM6OlNlbmRSZXBvcnQpIGNvbnN0OwogCiAgICAgUmVmbGVj
dGVkWFNTRGlzcG9zaXRpb24gcmVmbGVjdGVkWFNTRGlzcG9zaXRpb24oKSBjb25zdDsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWN1cml0eVBvbGljeS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RPTVNlY3VyaXR5UG9saWN5LmNwcAppbmRleCBhYzc2MGJmMDQ0NDFh
ZTRiNGU1YjQ5NTQyNzUyMTBlZmQzNmViMWNkLi4yNzkyNzZjMzkxZmQ4YjM5N2U0NTU4M2Q0NDA2
ZGNmZTdiN2NjZjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlY3VyaXR5
UG9saWN5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlY3VyaXR5UG9saWN5LmNw
cApAQCAtNTQsNyArNTQsNyBAQCBib29sIGlzQWxsb3dlZFdpdGhUeXBlKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgdHlwZSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAKICAgICBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5ID0gZmFsc2U7Ci0g
ICAgcmV0dXJuIChjb250ZXh0LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+KmFsbG93V2l0aFR5
cGUpKHR5cGUsIHR5cGUsIFVSTCgpLCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSwgQ29u
dGVudFNlY3VyaXR5UG9saWN5OjpTdXBwcmVzc1JlcG9ydCk7CisgICAgcmV0dXJuIChjb250ZXh0
LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+KmFsbG93V2l0aFR5cGUpKHR5cGUsIHR5cGUsIFVS
TCgpLCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSwgQ29udGVudFNlY3VyaXR5UG9saWN5
OjpSZXBvcnRpbmdTdGF0dXM6OlN1cHByZXNzUmVwb3J0KTsKIH0KIAogdGVtcGxhdGU8Ym9vbCAo
Q29udGVudFNlY3VyaXR5UG9saWN5OjoqYWxsb3dXaXRoVVJMKShjb25zdCBVUkwmLCBib29sIG92
ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlJlcG9y
dGluZ1N0YXR1cykgY29uc3Q+CkBAIC02OCw3ICs2OCw3IEBAIGJvb2wgaXNBbGxvd2VkV2l0aFVS
TChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHVybCkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOyAvLyBGSVhNRTogRmlndXJlIG91dCBob3cgdG8gdGhyb3cgYSBK
YXZhU2NyaXB0IGVycm9yLgogCiAgICAgYm9vbCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGlj
eSA9IGZhbHNlOwotICAgIHJldHVybiAoY29udGV4dC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCkt
PiphbGxvd1dpdGhVUkwpKHBhcnNlZFVSTCwgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3ks
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6U3VwcHJlc3NSZXBvcnQpOworICAgIHJldHVybiAoY29u
dGV4dC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPiphbGxvd1dpdGhVUkwpKHBhcnNlZFVSTCwg
b3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3ksIENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVw
b3J0aW5nU3RhdHVzOjpTdXBwcmVzc1JlcG9ydCk7CiB9CiAKIHRlbXBsYXRlPGJvb2wgKENvbnRl
bnRTZWN1cml0eVBvbGljeTo6KmFsbG93V2l0aENvbnRleHQpKGNvbnN0IFN0cmluZyYsIGNvbnN0
IFdURjo6T3JkaW5hbE51bWJlciYsIGJvb2wgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3ks
IENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzKSBjb25zdD4KQEAgLTc4LDcg
Kzc4LDcgQEAgYm9vbCBpc0FsbG93ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkK
ICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICBib29sIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5
UG9saWN5ID0gZmFsc2U7Ci0gICAgcmV0dXJuIChjb250ZXh0LT5jb250ZW50U2VjdXJpdHlQb2xp
Y3koKS0+KmFsbG93V2l0aENvbnRleHQpKFN0cmluZygpLCBXVEY6Ok9yZGluYWxOdW1iZXI6OmJl
Zm9yZUZpcnN0KCksIG92ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5LCBDb250ZW50U2VjdXJp
dHlQb2xpY3k6OlN1cHByZXNzUmVwb3J0KTsKKyAgICByZXR1cm4gKGNvbnRleHQtPmNvbnRlbnRT
ZWN1cml0eVBvbGljeSgpLT4qYWxsb3dXaXRoQ29udGV4dCkoU3RyaW5nKCksIFdURjo6T3JkaW5h
bE51bWJlcjo6YmVmb3JlRmlyc3QoKSwgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3ksIENv
bnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTdXBwcmVzc1JlcG9ydCk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlCkBAIC0xMjMsNyArMTIzLDcgQEAgYm9vbCBET01TZWN1cml0eVBv
bGljeTo6YWxsb3dzRXZhbCgpIGNvbnN0CiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgYm9v
bCBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSA9IGZhbHNlOwotICAgIHJldHVybiBzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCktPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0V2YWwo
MCwgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3ksIENvbnRlbnRTZWN1cml0eVBvbGljeTo6
U3VwcHJlc3NSZXBvcnQpOworICAgIHJldHVybiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmNv
bnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0V2YWwoMCwgb3ZlcnJpZGVDb250ZW50U2VjdXJp
dHlQb2xpY3ksIENvbnRlbnRTZWN1cml0eVBvbGljeTo6UmVwb3J0aW5nU3RhdHVzOjpTdXBwcmVz
c1JlcG9ydCk7CiB9CiAKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>