<?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>146822</bug_id>
          
          <creation_ts>2015-07-09 19:35:06 -0700</creation_ts>
          <short_desc>Track and expose policies for external URL schemes and App Links separately</short_desc>
          <delta_ts>2015-07-09 22:20:30 -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>WebKit API</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>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          <cc>andersca</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>joepeck</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1108515</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-09 19:35:06 -0700</bug_when>
    <thetext>The initial value of the external URL policy should be true for external URL schemes (as it is) but false for App Links, so we need to track the policies separately. We also need to expose the policies in the navigation action.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108517</commentid>
    <comment_count>1</comment_count>
      <attachid>256561</attachid>
    <who name="">mitz</who>
    <bug_when>2015-07-09 20:01:50 -0700</bug_when>
    <thetext>Created attachment 256561
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108518</commentid>
    <comment_count>2</comment_count>
      <attachid>256561</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-09 20:16:21 -0700</bug_when>
    <thetext>Comment on attachment 256561
Patch

r=andersca</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108532</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-09 22:20:30 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r186664&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256561</attachid>
            <date>2015-07-09 20:01:50 -0700</date>
            <delta_ts>2015-07-09 20:16:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146822-20150709200048.patch</filename>
            <type>text/plain</type>
            <size>23053</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4NjY2MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE1LTA3LTA5ICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViQ29yZSBwYXJ0IG9mIFRyYWNr
IGFuZCBleHBvc2UgcG9saWNpZXMgZm9yIGV4dGVybmFsIFVSTCBzY2hlbWVzIGFuZCBBcHAgTGlu
a3Mgc2VwYXJhdGVseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ2ODIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJUeXBlcy5oOiBBZGRlZCBTaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5OjpTaG91bGRBbGxvd0V4dGVybmFsU2NoZW1lcywKKyAgICAgICAgbWVhbmlu
ZyBleHRlcm5hbCBzY2hlbWVzIGFyZSBhbGxvd2VkIGJ1dCBBcHAgTGlua3MgYXJlIG5vdC4gVGhl
IG9wcG9zaXRlIHN0YXRlIGRvZXNu4oCZdAorICAgICAgICBleGlzdC4KKworICAgICAgICAqIHBh
Z2UvQ29udGV4dE1lbnVDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRleHRN
ZW51Q29udHJvbGxlcjo6Y29udGV4dE1lbnVJdGVtU2VsZWN0ZWQpOiBPcGVuaW5nIGEgbGluayBp
biBhIG5ldyB3aW5kb3cKKyAgICAgICAgb3IgaW4gdGhlIGN1cnJlbnQgd2luZG93IHNob3VsZCBu
ZXZlciBvcGVuIGl0IGFzIGFuIEFwcCBMaW5rLgorCiAyMDE1LTA3LTA5ICBCcmFkeSBFaWRzb24g
IDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBGb2xsb3d1cCB0byByMTg2NjQ3CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJUeXBlcy5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlclR5cGVzLmgJKHJldmlzaW9uIDE4NjU5
MikKKysrIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlclR5cGVzLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTczLDYgKzczLDcgQEAgZW51bSBjbGFzcyBOYXZpZ2F0aW9uVHlwZSB7CiAKIGVu
dW0gY2xhc3MgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSB7CiAgICAgU2hvdWxkTm90QWxs
b3csCisgICAgU2hvdWxkQWxsb3dFeHRlcm5hbFNjaGVtZXMsCiAgICAgU2hvdWxkQWxsb3csCiB9
OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIu
Y3BwCShyZXZpc2lvbiAxODY1OTIpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51
Q29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzOCw3ICsyMzgsNyBAQCB2b2lkIENv
bnRleHRNZW51Q29udHJvbGxlcjo6Y29udGV4dE1lbnVJCiAKICAgICBzd2l0Y2ggKGl0ZW0tPmFj
dGlvbigpKSB7CiAgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdPcGVuTGlua0luTmV3V2luZG93
OgotICAgICAgICBvcGVuTmV3V2luZG93KG1fY29udGV4dC5oaXRUZXN0UmVzdWx0KCkuYWJzb2x1
dGVMaW5rVVJMKCksIGZyYW1lLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGRB
bGxvdyk7CisgICAgICAgIG9wZW5OZXdXaW5kb3cobV9jb250ZXh0LmhpdFRlc3RSZXN1bHQoKS5h
YnNvbHV0ZUxpbmtVUkwoKSwgZnJhbWUsIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNo
b3VsZEFsbG93RXh0ZXJuYWxTY2hlbWVzKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb250
ZXh0TWVudUl0ZW1UYWdEb3dubG9hZExpbmtUb0Rpc2s6CiAgICAgICAgIC8vIEZJWE1FOiBTb21l
IGRheSB3ZSBzaG91bGQgYmUgYWJsZSB0byBkbyB0aGlzIGZyb20gd2l0aGluIFdlYkNvcmUuIChC
dWcgMTE3NzA5KQpAQCAtNDA2LDcgKzQwNiw3IEBAIHZvaWQgQ29udGV4dE1lbnVDb250cm9sbGVy
Ojpjb250ZXh0TWVudUkKICAgICAgICAgICAgIG9wZW5OZXdXaW5kb3cobV9jb250ZXh0LmhpdFRl
c3RSZXN1bHQoKS5hYnNvbHV0ZUxpbmtVUkwoKSwgZnJhbWUsIFNob3VsZE9wZW5FeHRlcm5hbFVS
THNQb2xpY3k6OlNob3VsZEFsbG93KTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb250ZXh0
TWVudUl0ZW1UYWdPcGVuTGlua0luVGhpc1dpbmRvdzoKLSAgICAgICAgZnJhbWUtPmxvYWRlcigp
LmxvYWRGcmFtZVJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdChmcmFtZS0+ZG9jdW1lbnQoKS0+c2Vj
dXJpdHlPcmlnaW4oKSwgUmVzb3VyY2VSZXF1ZXN0KG1fY29udGV4dC5oaXRUZXN0UmVzdWx0KCku
YWJzb2x1dGVMaW5rVVJMKCksIGZyYW1lLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpLCBM
b2NrSGlzdG9yeTo6Tm8sIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vLCBNYXliZVNlbmRSZWZlcnJl
ciwgQWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5
OjpTdXBwcmVzcywgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkQWxsb3cpLCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICAgICAgZnJhbWUtPmxvYWRlcigpLmxvYWRGcmFtZVJlcXVl
c3QoRnJhbWVMb2FkUmVxdWVzdChmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwg
UmVzb3VyY2VSZXF1ZXN0KG1fY29udGV4dC5oaXRUZXN0UmVzdWx0KCkuYWJzb2x1dGVMaW5rVVJM
KCksIGZyYW1lLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkpLCBMb2NrSGlzdG9yeTo6Tm8s
IExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZpZ2F0
aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpTdXBwcmVzcywgU2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkQWxsb3dFeHRlcm5hbFNjaGVtZXMpLCBu
dWxscHRyLCBudWxscHRyKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb250ZXh0TWVudUl0
ZW1UYWdCb2xkOgogICAgICAgICBmcmFtZS0+ZWRpdG9yKCkuY29tbWFuZCgiVG9nZ2xlQm9sZCIp
LmV4ZWN1dGUoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4NjY2MSkKKysrIFNvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYzIEBACisyMDE1LTA3
LTA5ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViS2l0MiBw
YXJ0IG9mIFRyYWNrIGFuZCBleHBvc2UgcG9saWNpZXMgZm9yIGV4dGVybmFsIFVSTCBzY2hlbWVz
IGFuZCBBcHAgTGlua3Mgc2VwYXJhdGVseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2ODIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBTaGFyZWQvTmF2aWdhdGlvbkFjdGlvbkRhdGEuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YTo6ZW5jb2RlKToKKyAgICAgICAgKFdl
YktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGE6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL05h
dmlnYXRpb25BY3Rpb25EYXRhLmg6CisgICAgICAgICAgUmVwbGFjZWQgdGhlIHNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3kgYm9vbGVhbiBtZW1iZXIgd2l0aCBhCisgICAgICAgICAgc2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSBtZW1iZXIgd2hvc2UgdHlwZSBpcyBTaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5LCBhbmQKKyAgICAgICAgICB1cGRhdGVkIGVuY29kaW5nIGFuZCBkZWNv
ZGluZzoKKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkFjdGlvbi5oOgor
ICAgICAgICAgIEFkZGVkIHNob3VsZE9wZW5BcHBMaW5rcyBib29sZWFuIHRvIE5hdmlnYXRpb25B
Y3Rpb246OmNyZWF0ZSBhbmQgdGhlIGNvbnN0cnVjdG9yLiBJdAorICAgICAgICAgIGF1Z21lbnRz
IHRoZSBwb2xpY3kgaW4gdGhlIE5hdmlnYXRpb25BY3Rpb25EYXRhIHdpdGggYSB2YWx1ZGUgZGVj
aWRlZCBpbiB0aGUgVUkgcHJvY2Vzcy4KKyAgICAgICAgICBSZXBsYWNlZCBzaG91bGRPcGVuRXh0
ZXJuYWxVUkxzKCkgd2l0aCBzaG91bGRPcGVuRXh0ZXJuYWxTY2hlbWVzKCkgYW5kCisgICAgICAg
ICAgc2hvdWxkT3BlbkFwcExpbmtzKCkgd2hpY2ggY2hlY2sgdGhlIHBvbGljeSBhbmQgdGhlIG5l
dyBtX3Nob3VsZE9wZW5BcHBMaW5rcyBib29sZWFuLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS05hdmlnYXRpb25BY3Rpb24ubW06CisgICAgICAgICgtW1dLTmF2aWdhdGlvbkFj
dGlvbiBfc2hvdWxkT3BlbkV4dGVybmFsU2NoZW1lc10pOiBHZXR0ZXIgZm9yIG5ldyBwcm9wZXJ0
eSwgY2FsbHMgdGhyb3VnaAorICAgICAgICAgIHRvIHRoZSBOYXZpZ2F0aW9uQWN0aW9uLgorICAg
ICAgICAoLVtXS05hdmlnYXRpb25BY3Rpb24gX3Nob3VsZE9wZW5BcHBMaW5rc10pOiBEaXR0by4K
KyAgICAgICAgKC1bV0tOYXZpZ2F0aW9uQWN0aW9uIF9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzXSk6
IE5vdyBkZXByZWNhdGVkIGFuZCByZXR1cm5zIHRoZQorICAgICAgICAgIF9zaG91bGRPcGVuRXh0
ZXJuYWxTY2hlbWVzIHZhbHVlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZp
Z2F0aW9uQWN0aW9uUHJpdmF0ZS5oOiBEZWNsYXJlZCBuZXcgcHJvcGVydGllcyBmb3IgdGhlIHR3
bworICAgICAgICAgIHBvbGljaWVzIGFuZCBkZXByZWNhdGVkIG9sZCBwcm9wZXJ0eS4KKworICAg
ICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUubW06CisgICAgICAgIChXZWJL
aXQ6OnRyeUFwcExpbmspOiBDaGFuZ2VkIHRvIHVzZSBOYXZpZ2F0aW9uQWN0aW9uOjpzaG91bGRP
cGVuQXBwTGlua3MsIHdoaWNoCisgICAgICAgICAgZW5jYXBzdWxhdGVzIGxvZ2ljIHRoYXQgdXNl
ZCB0byBiZSBoZXJlLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1VJRGVsZWdhdGUubW06
CisgICAgICAgIChXZWJLaXQ6OlVJRGVsZWdhdGU6OlVJQ2xpZW50OjpjcmVhdGVOZXdQYWdlKTog
QWxsb3cgQXBwIExpbmtzIChpZiBhbHJlYWR5IGFsbG93ZWQgYnkgcG9saWN5KS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBNb3ZlZCBsb2dpYyBmcm9t
IHRyeUFwcExpbmsgaW4KKyAgICAgICAgICBOYXZpZ2F0aW9uU3RhdGUubW0gaGVyZSBhbmQgcGFz
cyB0aGUgcmVzdWx0IHRvIE5hdmlnYXRpb25BY3Rpb246OmNyZWF0ZS4KKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24pOiBBbGxvdyBB
cHAgTGlua3MgKGlmIGFscmVhZHkgYWxsb3dlZAorICAgICAgICAgIGJ5IHBvbGljeSkuCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OmxvYWRSZXF1ZXN0KTogQ2hhbmdlZCB0aGUgZGVmYXVsdCBwb2xpY3kgdG8gbm90IGFs
bG93IEFwcCBMaW5rcyAoYnV0CisgICAgICAgICAgc3RpbGwgYWxsb3cgZXh0ZXJuYWwgc2NoZW1l
cykuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxl
TmF2aWdhdGlvbkFjdGlvbi5jcHA6CisgICAgICAgIChXS0J1bmRsZU5hdmlnYXRpb25BY3Rpb25H
ZXRTaG91bGRUcnlBcHBMaW5rcyk6IEFkZGVkIHRoaXMgZ2V0dGVyLgorICAgICAgICAqIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uUHJpdmF0
ZS5oOgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZU5hdmlnYXRpb25BY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb246OkluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbik6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rp
b24uaDoKKyAgICAgICAgICBBZGRlZCBtX3Nob3VsZFRyeUFwcExpbmtzIGJvb2xlYW4gbWVtYmVy
LCBpbml0aWFsaXplZCBmcm9tIHRoZSBwb2xpY3kuIFVwZGF0ZWQgdGhlCisgICAgICAgICAgaW5p
dGlhbGl6YXRpb24gb2YgbV9zaG91bGRPcGVuRXh0ZXJuYWxVUkxzIHRvIGFjY291bnQgZm9yIHRo
ZSBuZXcgcG9saWN5LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24pOiBQYXNzIHRoZSBw
b2xpY3kKKyAgICAgICAgICBpbiB0aGUgbmF2aWdhdGlvbiBkYXRhLgorCiAyMDE1LTA3LTA5ICBN
aWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RL
XSBDcmFzaCB3aGVuIHNwZWxsIGNoZWNrZXIgcmV0dXJucyBubyBndWVzc2VzCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvTmF2aWdhdGlvbkFjdGlvbkRhdGEuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9OYXZpZ2F0aW9uQWN0aW9uRGF0YS5jcHAJKHJldmlzaW9u
IDE4NjU5MikKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9OYXZpZ2F0aW9uQWN0aW9uRGF0YS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDcgKzQwLDcgQEAgdm9pZCBOYXZpZ2F0aW9uQWN0aW9u
RGF0YTo6ZW5jb2RlKElQQzo6QQogICAgIGVuY29kZXIuZW5jb2RlRW51bShtb3VzZUJ1dHRvbik7
CiAgICAgZW5jb2RlciA8PCBpc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZTsKICAgICBlbmNvZGVyIDw8
IGNhbkhhbmRsZVJlcXVlc3Q7Ci0gICAgZW5jb2RlciA8PCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxz
OworICAgIGVuY29kZXIuZW5jb2RlRW51bShzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsK
IH0KIAogYm9vbCBOYXZpZ2F0aW9uQWN0aW9uRGF0YTo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNv
ZGVyJiBkZWNvZGVyLCBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYgcmVzdWx0KQpAQCAtNTUsNyArNTUs
NyBAQCBib29sIE5hdmlnYXRpb25BY3Rpb25EYXRhOjpkZWNvZGUoSVBDOjpBCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW5IYW5kbGVSZXF1
ZXN0KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVz
dWx0LnNob3VsZE9wZW5FeHRlcm5hbFVSTHMpKQorICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVt
KHJlc3VsdC5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KSkKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogCiAgICAgcmV0dXJuIHRydWU7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmF2
aWdhdGlvbkFjdGlvbkRhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
TmF2aWdhdGlvbkFjdGlvbkRhdGEuaAkocmV2aXNpb24gMTg2NTkyKQorKysgU291cmNlL1dlYktp
dDIvU2hhcmVkL05hdmlnYXRpb25BY3Rpb25EYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDcg
KzQ1LDcgQEAgc3RydWN0IE5hdmlnYXRpb25BY3Rpb25EYXRhIHsKICAgICBXZWJNb3VzZUV2ZW50
OjpCdXR0b24gbW91c2VCdXR0b24geyBXZWJNb3VzZUV2ZW50OjpOb0J1dHRvbiB9OwogICAgIGJv
b2wgaXNQcm9jZXNzaW5nVXNlckdlc3R1cmUgeyBmYWxzZSB9OwogICAgIGJvb2wgY2FuSGFuZGxl
UmVxdWVzdCB7IGZhbHNlIH07Ci0gICAgYm9vbCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzIHsgZmFs
c2UgfTsKKyAgICBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kgeyBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5OjpTaG91bGROb3RBbGxvdyB9OwogfTsKIAogfQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHJldmlzaW9uIDE4NjU5MikKKysrIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjU1LDcg
KzMyNTUsOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhCiAgICAg
ICAgIGVsc2UgaWYgKG9yaWdpbmF0aW5nRnJhbWUpCiAgICAgICAgICAgICBzb3VyY2VGcmFtZUlu
Zm8gPSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKCpvcmlnaW5hdGluZ0ZyYW1lLCBvcmlnaW5hdGlu
Z0ZyYW1lU2VjdXJpdHlPcmlnaW4uc2VjdXJpdHlPcmlnaW4oKSk7CiAKLSAgICAgICAgYXV0byBu
YXZpZ2F0aW9uQWN0aW9uID0gQVBJOjpOYXZpZ2F0aW9uQWN0aW9uOjpjcmVhdGUobmF2aWdhdGlv
bkFjdGlvbkRhdGEsIHNvdXJjZUZyYW1lSW5mby5nZXQoKSwgZGVzdGluYXRpb25GcmFtZUluZm8u
Z2V0KCksIHJlcXVlc3QsIG9yaWdpbmFsUmVxdWVzdC51cmwoKSk7CisgICAgICAgIGJvb2wgc2hv
dWxkT3BlbkFwcExpbmtzID0gKCFkZXN0aW5hdGlvbkZyYW1lSW5mbyB8fCBkZXN0aW5hdGlvbkZy
YW1lSW5mby0+aXNNYWluRnJhbWUoKSkgJiYgIXByb3RvY29sSG9zdEFuZFBvcnRBcmVFcXVhbChV
UkwoUGFyc2VkVVJMU3RyaW5nLCBtX21haW5GcmFtZS0+dXJsKCkpLCByZXF1ZXN0LnVybCgpKTsK
KworICAgICAgICBhdXRvIG5hdmlnYXRpb25BY3Rpb24gPSBBUEk6Ok5hdmlnYXRpb25BY3Rpb246
OmNyZWF0ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc291cmNlRnJhbWVJbmZvLmdldCgpLCBkZXN0
aW5hdGlvbkZyYW1lSW5mby5nZXQoKSwgcmVxdWVzdCwgb3JpZ2luYWxSZXF1ZXN0LnVybCgpLCBz
aG91bGRPcGVuQXBwTGlua3MpOwogCiAgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGVjaWRl
UG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbigqdGhpcywgbmF2aWdhdGlvbkFjdGlvbi5nZXQoKSwg
V1RGOjptb3ZlKGxpc3RlbmVyKSwgbV9wcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3Rz
KHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CiAgICAgfSBlbHNlCkBAIC0zMjg0LDcgKzMyODYs
NyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yTmV3V2luCiAgICAgICAgIGlm
IChmcmFtZSkKICAgICAgICAgICAgIHNvdXJjZUZyYW1lSW5mbyA9IEFQSTo6RnJhbWVJbmZvOjpj
cmVhdGUoKmZyYW1lLCBmcmFtZVNlY3VyaXR5T3JpZ2luLnNlY3VyaXR5T3JpZ2luKCkpOwogCi0g
ICAgICAgIGF1dG8gbmF2aWdhdGlvbkFjdGlvbiA9IEFQSTo6TmF2aWdhdGlvbkFjdGlvbjo6Y3Jl
YXRlKG5hdmlnYXRpb25BY3Rpb25EYXRhLCBzb3VyY2VGcmFtZUluZm8uZ2V0KCksIG51bGxwdHIs
IHJlcXVlc3QsIHJlcXVlc3QudXJsKCkpOworICAgICAgICBhdXRvIG5hdmlnYXRpb25BY3Rpb24g
PSBBUEk6Ok5hdmlnYXRpb25BY3Rpb246OmNyZWF0ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc291
cmNlRnJhbWVJbmZvLmdldCgpLCBudWxscHRyLCByZXF1ZXN0LCByZXF1ZXN0LnVybCgpLCB0cnVl
KTsKIAogICAgICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRlY2lkZVBvbGljeUZvck5hdmlnYXRp
b25BY3Rpb24oKnRoaXMsIG5hdmlnYXRpb25BY3Rpb24uZ2V0KCksIFdURjo6bW92ZShsaXN0ZW5l
ciksIG1fcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3Qo
KSkuZ2V0KCkpOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CShyZXZpc2lvbiAxODY1OTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTM2Myw3ICszNjMsNyBAQCBwdWJsaWM6CiAgICAgYm9v
bCB0cnlDbG9zZSgpOwogICAgIGJvb2wgaXNDbG9zZWQoKSBjb25zdCB7IHJldHVybiBtX2lzQ2xv
c2VkOyB9CiAKLSAgICBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBsb2FkUmVxdWVzdChjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5ID0gV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkQWxs
b3csIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSA9IG51bGxwdHIpOworICAgIFJlZlB0cjxBUEk6Ok5h
dmlnYXRpb24+IGxvYWRSZXF1ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdl
YkNvcmU6OlNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJDb3JlOjpTaG91bGRPcGVu
RXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGRBbGxvd0V4dGVybmFsU2NoZW1lcywgQVBJOjpPYmpl
Y3QqIHVzZXJEYXRhID0gbnVsbHB0cik7CiAgICAgUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gbG9h
ZEZpbGUoY29uc3QgU3RyaW5nJiBmaWxlVVJMLCBjb25zdCBTdHJpbmcmIHJlc291cmNlRGlyZWN0
b3J5VVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEgPSBudWxscHRyKTsKICAgICBSZWZQdHI8QVBJ
OjpOYXZpZ2F0aW9uPiBsb2FkRGF0YShBUEk6OkRhdGEqLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBl
LCBjb25zdCBTdHJpbmcmIGVuY29kaW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6T2Jq
ZWN0KiB1c2VyRGF0YSA9IG51bGxwdHIpOwogICAgIFJlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IGxv
YWRIVE1MU3RyaW5nKGNvbnN0IFN0cmluZyYgaHRtbFN0cmluZywgY29uc3QgU3RyaW5nJiBiYXNl
VVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEgPSBudWxscHRyKTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkFjdGlvbi5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJTmF2aWdhdGlvbkFjdGlvbi5oCShyZXZpc2lv
biAxODY1OTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSU5hdmlnYXRpb25B
Y3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMzgsMTYgKzM4LDE3IEBAIGNsYXNzIEZyYW1lSW5m
bzsKIAogY2xhc3MgTmF2aWdhdGlvbkFjdGlvbiBmaW5hbCA6IHB1YmxpYyBPYmplY3RJbXBsPE9i
amVjdDo6VHlwZTo6TmF2aWdhdGlvbkFjdGlvbj4gewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8
TmF2aWdhdGlvbkFjdGlvbj4gY3JlYXRlKGNvbnN0IFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbkRh
dGEmIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBBUEk6OkZyYW1lSW5mbyogc291cmNlRnJhbWUsIEFQ
STo6RnJhbWVJbmZvKiB0YXJnZXRGcmFtZSwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBjb25zdCBXZWJDb3JlOjpVUkwmIG9yaWdpbmFsVVJMKQorICAgIHN0YXRpYyBS
ZWY8TmF2aWdhdGlvbkFjdGlvbj4gY3JlYXRlKGNvbnN0IFdlYktpdDo6TmF2aWdhdGlvbkFjdGlv
bkRhdGEmIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBBUEk6OkZyYW1lSW5mbyogc291cmNlRnJhbWUs
IEFQSTo6RnJhbWVJbmZvKiB0YXJnZXRGcmFtZSwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJDb3JlOjpVUkwmIG9yaWdpbmFsVVJMLCBib29sIHNob3Vs
ZE9wZW5BcHBMaW5rcykKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IE5hdmln
YXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbkRhdGEsIHNvdXJjZUZyYW1lLCB0YXJnZXRGcmFt
ZSwgcmVxdWVzdCwgb3JpZ2luYWxVUkwpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
TmF2aWdhdGlvbkFjdGlvbihuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc291cmNlRnJhbWUsIHRhcmdl
dEZyYW1lLCByZXF1ZXN0LCBvcmlnaW5hbFVSTCwgc2hvdWxkT3BlbkFwcExpbmtzKSk7CiAgICAg
fQogCi0gICAgTmF2aWdhdGlvbkFjdGlvbihjb25zdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25E
YXRhJiBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgQVBJOjpGcmFtZUluZm8qIHNvdXJjZUZyYW1lLCBB
UEk6OkZyYW1lSW5mbyogdGFyZ2V0RnJhbWUsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgY29uc3QgV2ViQ29yZTo6VVJMJiBvcmlnaW5hbFVSTCkKKyAgICBOYXZpZ2F0
aW9uQWN0aW9uKGNvbnN0IFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEmIG5hdmlnYXRpb25B
Y3Rpb25EYXRhLCBBUEk6OkZyYW1lSW5mbyogc291cmNlRnJhbWUsIEFQSTo6RnJhbWVJbmZvKiB0
YXJnZXRGcmFtZSwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25z
dCBXZWJDb3JlOjpVUkwmIG9yaWdpbmFsVVJMLCBib29sIHNob3VsZE9wZW5BcHBMaW5rcykKICAg
ICAgICAgOiBtX3NvdXJjZUZyYW1lKHNvdXJjZUZyYW1lKQogICAgICAgICAsIG1fdGFyZ2V0RnJh
bWUodGFyZ2V0RnJhbWUpCiAgICAgICAgICwgbV9yZXF1ZXN0KHJlcXVlc3QpCiAgICAgICAgICwg
bV9vcmlnaW5hbFVSTChvcmlnaW5hbFVSTCkKKyAgICAgICAgLCBtX3Nob3VsZE9wZW5BcHBMaW5r
cyhzaG91bGRPcGVuQXBwTGlua3MpCiAgICAgICAgICwgbV9uYXZpZ2F0aW9uQWN0aW9uRGF0YShu
YXZpZ2F0aW9uQWN0aW9uRGF0YSkKICAgICB7CiAgICAgfQpAQCAtNjMsNyArNjQsOCBAQCBwdWJs
aWM6CiAgICAgV2ViS2l0OjpXZWJNb3VzZUV2ZW50OjpCdXR0b24gbW91c2VCdXR0b24oKSBjb25z
dCB7IHJldHVybiBtX25hdmlnYXRpb25BY3Rpb25EYXRhLm1vdXNlQnV0dG9uOyB9CiAgICAgYm9v
bCBpc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmF2aWdhdGlvbkFj
dGlvbkRhdGEuaXNQcm9jZXNzaW5nVXNlckdlc3R1cmU7IH0KICAgICBib29sIGNhbkhhbmRsZVJl
cXVlc3QoKSBjb25zdCB7IHJldHVybiBtX25hdmlnYXRpb25BY3Rpb25EYXRhLmNhbkhhbmRsZVJl
cXVlc3Q7IH0KLSAgICBib29sIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSBjb25zdCB7IHJldHVy
biBtX25hdmlnYXRpb25BY3Rpb25EYXRhLnNob3VsZE9wZW5FeHRlcm5hbFVSTHM7IH0KKyAgICBi
b29sIHNob3VsZE9wZW5FeHRlcm5hbFNjaGVtZXMoKSBjb25zdCB7IHJldHVybiBtX25hdmlnYXRp
b25BY3Rpb25EYXRhLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPT0gV2ViQ29yZTo6U2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkQWxsb3cgfHwgbV9uYXZpZ2F0aW9uQWN0
aW9uRGF0YS5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID09IFdlYkNvcmU6OlNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZEFsbG93RXh0ZXJuYWxTY2hlbWVzOyB9CisgICAg
Ym9vbCBzaG91bGRPcGVuQXBwTGlua3MoKSBjb25zdCB7IHJldHVybiBtX3Nob3VsZE9wZW5BcHBM
aW5rcyAmJiBtX25hdmlnYXRpb25BY3Rpb25EYXRhLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3kgPT0gV2ViQ29yZTo6U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkQWxsb3c7
IH0KIAogcHJpdmF0ZToKICAgICBSZWZQdHI8RnJhbWVJbmZvPiBtX3NvdXJjZUZyYW1lOwpAQCAt
NzIsNiArNzQsOCBAQCBwcml2YXRlOgogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3Jl
cXVlc3Q7CiAgICAgV2ViQ29yZTo6VVJMIG1fb3JpZ2luYWxVUkw7CiAKKyAgICBib29sIG1fc2hv
dWxkT3BlbkFwcExpbmtzOworCiAgICAgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YSBtX25h
dmlnYXRpb25BY3Rpb25EYXRhOwogfTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS05hdmlnYXRpb25BY3Rpb24ubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25BY3Rpb24ubW0JKHJldmlzaW9u
IDE4NjU5MikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0
aW9uQWN0aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsOSArMTcyLDE5IEBAIC0gKEJPT0wp
X2NhbkhhbmRsZVJlcXVlc3QKICAgICByZXR1cm4gX25hdmlnYXRpb25BY3Rpb24tPmNhbkhhbmRs
ZVJlcXVlc3QoKTsKIH0KIAorLSAoQk9PTClfc2hvdWxkT3BlbkV4dGVybmFsU2NoZW1lcworewor
ICAgIHJldHVybiBfbmF2aWdhdGlvbkFjdGlvbi0+c2hvdWxkT3BlbkV4dGVybmFsU2NoZW1lcygp
OworfQorCistIChCT09MKV9zaG91bGRPcGVuQXBwTGlua3MKK3sKKyAgICByZXR1cm4gX25hdmln
YXRpb25BY3Rpb24tPnNob3VsZE9wZW5BcHBMaW5rcygpOworfQorCiAtIChCT09MKV9zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzCiB7Ci0gICAgcmV0dXJuIF9uYXZpZ2F0aW9uQWN0aW9uLT5zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzKCk7CisgICAgcmV0dXJuIFtzZWxmIF9zaG91bGRPcGVuRXh0ZXJuYWxT
Y2hlbWVzXTsKIH0KIAogQGVuZApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS05hdmlnYXRpb25BY3Rpb25Qcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25BY3Rpb25Qcml2YXRlLmgJKHJl
dmlzaW9uIDE4NjU5MikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tO
YXZpZ2F0aW9uQWN0aW9uUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiwxMCBA
QAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU1VSTCAqX29yaWdpbmFsVVJMOwog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9X2lzVXNlckluaXRpYXRlZCkg
Qk9PTCBfdXNlckluaXRpYXRlZDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9P
TCBfY2FuSGFuZGxlUmVxdWVzdDsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9P
TCBfc2hvdWxkT3BlbkV4dGVybmFsVVJMczsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25s
eSkgQk9PTCBfc2hvdWxkT3BlbkV4dGVybmFsU2NoZW1lcyBXS19BVkFJTEFCTEUoV0tfTUFDX1RC
QSwgV0tfSU9TX1RCQSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgX3No
b3VsZE9wZW5BcHBMaW5rcyBXS19BVkFJTEFCTEUoV0tfTUFDX1RCQSwgV0tfSU9TX1RCQSk7CisK
K0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBfc2hvdWxkT3BlbkV4dGVybmFs
VVJMcyBXS19ERVBSRUNBVEVEKFdLX01BQ19UQkEsIFdLX01BQ19UQkEsIFdLX0lPU19UQkEsIFdL
X0lPU19UQkEsICJ1c2UgX3Nob3VsZE9wZW5FeHRlcm5hbFNjaGVtZXMgYW5kIF9zaG91bGRPcGVu
QXBwTGlua3MiKTsKIAogQGVuZAogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29j
b2EvTmF2aWdhdGlvblN0YXRlLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUubW0JKHJldmlzaW9uIDE4NjU5MikKKysrIFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTI0OCwxNiArMjQ4LDcgQEAgTmF2aWdhdGlvblN0YXRlOjpOYXZpZ2F0aW9uQ2xpZW50
Ojp+TmF2aQogc3RhdGljIHZvaWQgdHJ5QXBwTGluayhSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uQWN0
aW9uPiBuYXZpZ2F0aW9uQWN0aW9uLCBjb25zdCBTdHJpbmcmIGN1cnJlbnRNYWluRnJhbWVVUkws
IHN0ZDo6ZnVuY3Rpb248dm9pZCAoYm9vbCk+IGNvbXBsZXRpb25IYW5kbGVyKQogewogI2lmIEhB
VkUoQVBQX0xJTktTKQotICAgIGJvb2wgbWFpbkZyYW1lTmF2aWdhdGlvbiA9ICFuYXZpZ2F0aW9u
QWN0aW9uLT50YXJnZXRGcmFtZSgpIHx8IG5hdmlnYXRpb25BY3Rpb24tPnRhcmdldEZyYW1lKCkt
PmlzTWFpbkZyYW1lKCk7Ci0gICAgYm9vbCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzID0gbmF2aWdh
dGlvbkFjdGlvbi0+c2hvdWxkT3BlbkV4dGVybmFsVVJMcygpOwotICAgIGlmICghbWFpbkZyYW1l
TmF2aWdhdGlvbiB8fCAhc2hvdWxkT3BlbkV4dGVybmFsVVJMcykgewotICAgICAgICBjb21wbGV0
aW9uSGFuZGxlcihmYWxzZSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICAvLyBJZiB0
aGUgbmV3IFVSTCBpcyB3aXRoaW4gdGhlIHNhbWUgb3JpZ2luIGFzIHRoZSBjdXJyZW50IFVSTCwg
ZG8gbm90IHRyeSB0byBvcGVuIGl0IGV4dGVybmFsbHkuCi0gICAgVVJMIGN1cnJlbnRVUkwgPSBV
UkwoUGFyc2VkVVJMU3RyaW5nLCBjdXJyZW50TWFpbkZyYW1lVVJMKTsKLSAgICBpZiAocHJvdG9j
b2xIb3N0QW5kUG9ydEFyZUVxdWFsKGN1cnJlbnRVUkwsIG5hdmlnYXRpb25BY3Rpb24tPnJlcXVl
c3QoKS51cmwoKSkpIHsKKyAgICBpZiAoIW5hdmlnYXRpb25BY3Rpb24tPnNob3VsZE9wZW5BcHBM
aW5rcygpKSB7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9VSURlbGVn
YXRlLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9VSURl
bGVnYXRlLm1tCShyZXZpc2lvbiAxODY1OTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
Q29jb2EvVUlEZWxlZ2F0ZS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTA1LDcgKzEwNSw3IEBAIFBh
c3NSZWZQdHI8V2ViS2l0OjpXZWJQYWdlUHJveHk+IFVJRGVsZWcKICAgICBbY29uZmlndXJhdGlv
biBfc2V0UmVsYXRlZFdlYlZpZXc6bV91aURlbGVnYXRlLm1fd2ViVmlld107CiAKICAgICBhdXRv
IHNvdXJjZUZyYW1lSW5mbyA9IEFQSTo6RnJhbWVJbmZvOjpjcmVhdGUoKmluaXRpYXRpbmdGcmFt
ZSwgc2VjdXJpdHlPcmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCkpOwotICAgIGF1dG8gbmF2aWdh
dGlvbkFjdGlvbiA9IEFQSTo6TmF2aWdhdGlvbkFjdGlvbjo6Y3JlYXRlKG5hdmlnYXRpb25BY3Rp
b25EYXRhLCBzb3VyY2VGcmFtZUluZm8ucHRyKCksIG51bGxwdHIsIHJlcXVlc3QsIFdlYkNvcmU6
OlVSTCgpKTsKKyAgICBhdXRvIG5hdmlnYXRpb25BY3Rpb24gPSBBUEk6Ok5hdmlnYXRpb25BY3Rp
b246OmNyZWF0ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc291cmNlRnJhbWVJbmZvLnB0cigpLCBu
dWxscHRyLCByZXF1ZXN0LCBXZWJDb3JlOjpVUkwoKSwgdHJ1ZSk7CiAKICAgICBSZXRhaW5QdHI8
V0tXZWJWaWV3PiB3ZWJWaWV3ID0gW2RlbGVnYXRlLmdldCgpIHdlYlZpZXc6bV91aURlbGVnYXRl
Lm1fd2ViVmlldyBjcmVhdGVXZWJWaWV3V2l0aENvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5n
ZXQoKSBmb3JOYXZpZ2F0aW9uQWN0aW9uOndyYXBwZXIobmF2aWdhdGlvbkFjdGlvbikgd2luZG93
RmVhdHVyZXM6YWRvcHROUyhbW1dLV2luZG93RmVhdHVyZXMgYWxsb2NdIF9pbml0V2l0aFdpbmRv
d0ZlYXR1cmVzOndpbmRvd0ZlYXR1cmVzXSkuZ2V0KCldOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlv
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwCShyZXZpc2lvbiAxODY1OTIp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkwLDcgKzkwLDggQEAg
SW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uOjpJbmplY3RlZAogICAgIDogbV9uYXZpZ2F0
aW9uVHlwZShuYXZpZ2F0aW9uQWN0aW9uLnR5cGUoKSkKICAgICAsIG1fbW9kaWZpZXJzKG1vZGlm
aWVyc0Zvck5hdmlnYXRpb25BY3Rpb24obmF2aWdhdGlvbkFjdGlvbikpCiAgICAgLCBtX21vdXNl
QnV0dG9uKFdlYk1vdXNlRXZlbnQ6Ok5vQnV0dG9uKQotICAgICwgbV9zaG91bGRPcGVuRXh0ZXJu
YWxVUkxzKG5hdmlnYXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpID09
IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZEFsbG93KQorICAgICwgbV9zaG91
bGRPcGVuRXh0ZXJuYWxVUkxzKG5hdmlnYXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeSgpID09IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZEFsbG93IHx8
IG5hdmlnYXRpb25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpID09IFNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZEFsbG93RXh0ZXJuYWxTY2hlbWVzKQorICAg
ICwgbV9zaG91bGRUcnlBcHBMaW5rcyhuYXZpZ2F0aW9uQWN0aW9uLnNob3VsZE9wZW5FeHRlcm5h
bFVSTHNQb2xpY3koKSA9PSBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGRBbGxv
dykKIHsKICAgICBpZiAoY29uc3QgTW91c2VFdmVudCogbW91c2VFdmVudCA9IG1vdXNlRXZlbnRG
b3JOYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb24pKSB7CiAgICAgICAgIG1faGl0VGVz
dFJlc3VsdCA9IEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdDo6Y3JlYXRlKGZyYW1lLT5jb3Jl
RnJhbWUoKS0+ZXZlbnRIYW5kbGVyKCkuaGl0VGVzdFJlc3VsdEF0UG9pbnQobW91c2VFdmVudC0+
YWJzb2x1dGVMb2NhdGlvbigpKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVOYXZpZ2F0aW9uQWN0aW9uLmgJKHJldmlzaW9uIDE4NjU5MikKKysrIFNvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDYgKzU3LDcgQEAgcHVibGljOgogICAgIEluamVjdGVk
QnVuZGxlTm9kZUhhbmRsZSogZm9ybUVsZW1lbnQoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1FbGVt
ZW50LmdldCgpOyB9CiAKICAgICBib29sIHNob3VsZE9wZW5FeHRlcm5hbFVSTHMoKSBjb25zdCB7
IHJldHVybiBtX3Nob3VsZE9wZW5FeHRlcm5hbFVSTHM7IH0KKyAgICBib29sIHNob3VsZFRyeUFw
cExpbmtzKCkgY29uc3QgeyByZXR1cm4gbV9zaG91bGRUcnlBcHBMaW5rczsgfQogCiBwcml2YXRl
OgogICAgIEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbihXZWJGcmFtZSosIGNvbnN0IFdl
YkNvcmU6Ok5hdmlnYXRpb25BY3Rpb24mLCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZvcm1TdGF0ZT4p
OwpAQCAtNjcsNiArNjgsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxJbmplY3RlZEJ1bmRsZUhp
dFRlc3RSZXN1bHQ+IG1faGl0VGVzdFJlc3VsdDsKICAgICBSZWZQdHI8SW5qZWN0ZWRCdW5kbGVO
b2RlSGFuZGxlPiBtX2Zvcm1FbGVtZW50OwogICAgIGJvb2wgbV9zaG91bGRPcGVuRXh0ZXJuYWxV
UkxzOworICAgIGJvb2wgbV9zaG91bGRUcnlBcHBMaW5rczsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVOYXZpZ2F0aW9u
QWN0aW9uLmNwcAkocmV2aXNpb24gMTg2NTkyKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC03MSwzICs3MSw4IEBAIGJvb2wgV0tCdW5kbGVOYXZpZ2F0aW9uQWN0aW9u
R2V0U2hvdWxkT3AKIHsKICAgICByZXR1cm4gdG9JbXBsKG5hdmlnYXRpb25BY3Rpb25SZWYpLT5z
aG91bGRPcGVuRXh0ZXJuYWxVUkxzKCk7CiB9CisKK2Jvb2wgV0tCdW5kbGVOYXZpZ2F0aW9uQWN0
aW9uR2V0U2hvdWxkVHJ5QXBwTGlua3MoV0tCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uUmVmIG5hdmln
YXRpb25BY3Rpb25SZWYpCit7CisgICAgcmV0dXJuIHRvSW1wbChuYXZpZ2F0aW9uQWN0aW9uUmVm
KS0+c2hvdWxkVHJ5QXBwTGlua3MoKTsKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uUHJpdmF0ZS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL2MvV0tCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uUHJpdmF0ZS5oCShyZXZpc2lvbiAxODY1OTIp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlTmF2aWdhdGlvbkFjdGlvblByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMs
NyBAQCBleHRlcm4gIkMiIHsKICNlbmRpZgogCiBXS19FWFBPUlQgYm9vbCBXS0J1bmRsZU5hdmln
YXRpb25BY3Rpb25HZXRTaG91bGRPcGVuRXh0ZXJuYWxVUkxzKFdLQnVuZGxlTmF2aWdhdGlvbkFj
dGlvblJlZik7CitXS19FWFBPUlQgYm9vbCBXS0J1bmRsZU5hdmlnYXRpb25BY3Rpb25HZXRTaG91
bGRUcnlBcHBMaW5rcyhXS0J1bmRsZU5hdmlnYXRpb25BY3Rpb25SZWYpOwogCiAjaWZkZWYgX19j
cGx1c3BsdXMKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCShyZXZp
c2lvbiAxODY1OTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtODAxLDcgKzgwMSw3
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWQKICAgICBuYXZpZ2F0
aW9uQWN0aW9uRGF0YS5tb3VzZUJ1dHRvbiA9IGFjdGlvbi0+bW91c2VCdXR0b24oKTsKICAgICBu
YXZpZ2F0aW9uQWN0aW9uRGF0YS5pc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZSA9IG5hdmlnYXRpb25B
Y3Rpb24ucHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCk7CiAgICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEu
Y2FuSGFuZGxlUmVxdWVzdCA9IHdlYlBhZ2UtPmNhbkhhbmRsZVJlcXVlc3QocmVxdWVzdCk7Ci0g
ICAgbmF2aWdhdGlvbkFjdGlvbkRhdGEuc2hvdWxkT3BlbkV4dGVybmFsVVJMcyA9IG5hdmlnYXRp
b25BY3Rpb24uc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSgpID09IFNob3VsZE9wZW5FeHRl
cm5hbFVSTHNQb2xpY3k6OlNob3VsZEFsbG93OworICAgIG5hdmlnYXRpb25BY3Rpb25EYXRhLnNo
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBuYXZpZ2F0aW9uQWN0aW9uLnNob3VsZE9wZW5F
eHRlcm5hbFVSTHNQb2xpY3koKTsKIAogICAgIFdlYkNvcmU6OkZyYW1lKiBjb3JlRnJhbWUgPSBt
X2ZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBXZWJEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2Fk
ZXIgPSBzdGF0aWNfY2FzdDxXZWJEb2N1bWVudExvYWRlcio+KGNvcmVGcmFtZS0+bG9hZGVyKCku
cG9saWN5RG9jdW1lbnRMb2FkZXIoKSk7Cg==
</data>
<flag name="review"
          id="281663"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>