<?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>75808</bug_id>
          
          <creation_ts>2012-01-08 15:05:40 -0800</creation_ts>
          <short_desc>The JIT&apos;s protocol for exception handling should be available to other parts of the system</short_desc>
          <delta_ts>2012-01-08 20:32:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>531824</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-01-08 15:05:40 -0800</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531825</commentid>
    <comment_count>1</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-01-08 15:06:00 -0800</bug_when>
    <thetext>&lt;rdar://problem/10661025&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531834</commentid>
    <comment_count>2</comment_count>
      <attachid>121594</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-01-08 15:22:12 -0800</bug_when>
    <thetext>Created attachment 121594
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531836</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-08 15:24:22 -0800</bug_when>
    <thetext>Attachment 121594 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/CMakeLists.txt&apos;, u&apos;S...&quot; exit_code: 1

Source/JavaScriptCore/jit/JITExceptions.h:45:  The parameter name &quot;globalData&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/JavaScriptCore/jit/JITExceptions.h:47:  The parameter name &quot;globalData&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531840</commentid>
    <comment_count>4</comment_count>
      <attachid>121595</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-01-08 15:28:02 -0800</bug_when>
    <thetext>Created attachment 121595
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531850</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-01-08 15:47:43 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/104415</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531942</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-08 20:32:27 -0800</bug_when>
    <thetext>WinCE build fix landed in http://trac.webkit.org/changeset/104429.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121594</attachid>
            <date>2012-01-08 15:22:12 -0800</date>
            <delta_ts>2012-01-08 15:28:02 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>refactorexceptions_patch_1.diff</filename>
            <type>text/plain</type>
            <size>15294</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTA0NDExKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBA
CisyMDEyLTAxLTA4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
VGhlIEpJVCdzIHByb3RvY29sIGZvciBleGNlcHRpb24gaGFuZGxpbmcgc2hvdWxkIGJlIGF2YWls
YWJsZSB0byBvdGhlciBwYXJ0cyBvZiB0aGUgc3lzdGVtCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTgwOAorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
MTA2NjEwMjU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAg
ICAgICAqIEphdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS52Y3Byb2o6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAqIGppdC9KSVRFeGNlcHRpb25z
LmNwcDogQWRkZWQuCisgICAgICAgIChKU0M6OmdlbmVyaWNUaHJvdyk6CisgICAgICAgIChKU0M6
OmppdFRocm93KToKKyAgICAgICAgKiBqaXQvSklURXhjZXB0aW9ucy5oOiBBZGRlZC4KKyAgICAg
ICAgKiBqaXQvSklUU3R1YnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNHbG9iYWxEYXRhLmg6
CisKIDIwMTItMDEtMDYgIEhhamltZSBNb3JyaXRhICA8bW9ycml0YUBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc1Mjk2Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CShyZXZpc2lvbiAxMDQ0MTApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTkyLDYgKzkyLDcgQEAgU0VUKEphdmFTY3JpcHRDb3JlX1NPVVJDRVMKICAgICBqaXQvSklUQ2Fs
bDMyXzY0LmNwcAogICAgIGppdC9KSVRDYWxsLmNwcAogICAgIGppdC9KSVQuY3BwCisgICAgaml0
L0pJVEV4Y2VwdGlvbnMuY3BwCiAgICAgaml0L0pJVE9wY29kZXMzMl82NC5jcHAKICAgICBqaXQv
SklUT3Bjb2Rlcy5jcHAKICAgICBqaXQvSklUUHJvcGVydHlBY2Nlc3MzMl82NC5jcHAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCShyZXZpc2lvbiAxMDQ0
MTApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQkod29ya2lu
ZyBjb3B5KQpAQCAtMjYwLDYgKzI2MCw4IEBAIGphdmFzY3JpcHRjb3JlX3NvdXJjZXMgKz0gXAog
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ29kZS5oIFwKIAlTb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0pJVC5jcHAgXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggXAor
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAgXAorCVNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVElubGluZU1ldGhvZHMuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRPcGNvZGVzMzJfNjQuY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wY29k
ZXMuY3BwIFwKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9UYXJnZXQucHJpCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9UYXJnZXQucHJpCShyZXZpc2lvbiAxMDQ0MTAp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvVGFyZ2V0LnByaQkod29ya2luZyBjb3B5KQpAQCAt
MTA0LDYgKzEwNCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGppdC9KSVRDYWxsLmNwcCBcCiAgICAg
aml0L0pJVENhbGwzMl82NC5jcHAgXAogICAgIGppdC9KSVQuY3BwIFwKKyAgICBqaXQvSklURXhj
ZXB0aW9ucy5jcHAgXAogICAgIGppdC9KSVRPcGNvZGVzLmNwcCBcCiAgICAgaml0L0pJVE9wY29k
ZXMzMl82NC5jcHAgXAogICAgIGppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHAgXApJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS52Y3Byb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3By
b2oJKHJldmlzaW9uIDEwNDQxMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNwcm9qCSh3b3JraW5n
IGNvcHkpCkBAIC0xNzEwLDYgKzE3MTAsMTQgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8Rmls
ZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5caml0XEpJVEV4Y2VwdGlvbnMuY3BwIgorCQkJCT4K
KwkJCTwvRmlsZT4KKwkJCTxGaWxlCisJCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxqaXRcSklURXhj
ZXB0aW9ucy5oIgorCQkJCT4KKwkJCTwvRmlsZT4KKwkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRo
PSIuLlwuLlxqaXRcSklUU3R1YnMuY3BwIgogCQkJCT4KIAkJCTwvRmlsZT4KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxMDQ0MTApCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTgsNiArNTgsOCBAQAogCQkwRjQyNkE0OTE0NjBDQkI3MDAxMzFGOEYgLyog
VmlydHVhbFJlZ2lzdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwRjQyNkE0NjE0NjBDQkFCMDAxMzFGOEYgLyogVmlydHVhbFJlZ2lzdGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMEY0MjZBNEIx
NDYwQ0Q2RTAwMTMxRjhGIC8qIERhdGFGb3JtYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNDI2QTRBMTQ2MENENkIwMDEzMUY4RiAvKiBEYXRhRm9y
bWF0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
MEY0MzE3MzgxNDZCQUM2OTAwN0UzODkwIC8qIExpc3RhYmxlSGFuZGxlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0MzE3MzYxNDZCQUM2NTAwN0Uz
ODkwIC8qIExpc3RhYmxlSGFuZGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTBGNDY4MDgyMTRCQTU3MkQwMEJGRTI3MiAvKiBKSVRFeGNlcHRp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjQ2
ODA4MDE0QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNDY4MDgzMTRCQTU3MzEwMEJGRTI3
MiAvKiBKSVRFeGNlcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDBGNDY4MDdGMTRCQTU3MjcwMEJGRTI3MiAvKiBKSVRFeGNlcHRpb25zLmNw
cCAqLzsgfTsKIAkJMEY1RjA4Q0YxNDZDNzYzMzAwMDQ3MkE5IC8qIFVuY29uZGl0aW9uYWxGaW5h
bGl6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBG
NUYwOENFMTQ2Qzc2MkYwMDA0NzJBOSAvKiBVbmNvbmRpdGlvbmFsRmluYWxpemVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMEY2MjAxNzQxNDNG
Q0QzMzAwNjhCNzdDIC8qIERGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2MjAxNzIxNDNGQ0QyRjAwNjhCNzdDIC8q
IERGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTBGNjIwMTc1MTQzRkNEMzcwMDY4Qjc3QyAvKiBERkdPcGVyYW5k
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2MjAx
NzExNDNGQ0QyRjAwNjhCNzdDIC8qIERGR09wZXJhbmRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTg0MSw2ICs4NDMsOCBAQAogCQkwRjQyNkE0
NjE0NjBDQkFCMDAxMzFGOEYgLyogVmlydHVhbFJlZ2lzdGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFZpcnR1YWxSZWdpc3Rlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkwRjQyNkE0QTE0NjBDRDZCMDAxMzFGOEYgLyogRGF0YUZvcm1hdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhRm9ybWF0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTBGNDMxNzM2MTQ2QkFDNjUwMDdFMzg5MCAvKiBMaXN0YWJsZUhhbmRsZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlzdGFibGVIYW5kbGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDY4MDdGMTRCQTU3MjcwMEJGRTI3MiAvKiBK
SVRFeGNlcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpJ
VEV4Y2VwdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ2ODA4MDE0
QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKSVRFeGNlcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTBGNUYwOENDMTQ2QkU2MDIwMDA0NzJBOSAvKiBERkdCeXRlQ29kZUNhY2hlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IERGR0J5dGVDb2RlQ2FjaGUuaDsgcGF0aCA9IGRmZy9E
RkdCeXRlQ29kZUNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTBGNUYwOENF
MTQ2Qzc2MkYwMDA0NzJBOSAvKiBVbmNvbmRpdGlvbmFsRmluYWxpemVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVuY29uZGl0aW9uYWxGaW5hbGl6ZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMEY2MjAxNkQxNDNGQ0QyRjAwNjhCNzdDIC8qIERGR0Fic3Ry
YWN0U3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gREZHQWJz
dHJhY3RTdGF0ZS5jcHA7IHBhdGggPSBkZmcvREZHQWJzdHJhY3RTdGF0ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjk4LDYgKzE3MDIsOCBAQAogCQkxNDI5RDkyQzBFRDIy
RDcwMDBCODk2MTkgLyogaml0ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJl
biA9ICgKKwkJCQkwRjQ2ODA3RjE0QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5jcHAg
Ki8sCisJCQkJMEY0NjgwODAxNEJBNTcyNzAwQkZFMjcyIC8qIEpJVEV4Y2VwdGlvbnMuaCAqLywK
IAkJCQkwRkQ4MkUzNzE0MUFCMTQyMDAxNzlDOTQgLyogQ29tcGFjdEpJVENvZGVNYXAuaCAqLywK
IAkJCQlBN0I0OERCNjBFRTc0Q0ZDMDBEQ0JEQjYgLyogRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAg
Ki8sCiAJCQkJQTdCNDhEQjUwRUU3NENGQzAwRENCREI2IC8qIEV4ZWN1dGFibGVBbGxvY2F0b3Iu
aCAqLywKQEAgLTMwMDQsNiArMzAxMCw3IEBACiAJCQkJODY3MDRCOEExMkRCQTMzNzAwQTlGRTdC
IC8qIFlhcnJQYXR0ZXJuLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NjcwNEI0MzEyREI4QTgxMDBB
OUZFN0IgLyogWWFyclN5bnRheENoZWNrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMTVGMTVG
MTRCN0E3M0UwMDVERTM3RCAvKiBDb21tb25TbG93UGF0aHMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTBGNDY4MDgyMTRCQTU3MkQwMEJGRTI3MiAvKiBKSVRFeGNlcHRpb25zLmggaW4gSGVhZGVycyAq
LywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJ
fTsKQEAgLTM1NDIsNiArMzU0OSw3IEBACiAJCQkJODY3MDRCODYxMkRCQTMzNzAwQTlGRTdCIC8q
IFlhcnJKSVQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODY3MDRCODkxMkRCQTMzNzAwQTlGRTdC
IC8qIFlhcnJQYXR0ZXJuLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg2NzA0QjQyMTJEQjhBODEw
MEE5RkU3QiAvKiBZYXJyU3ludGF4Q2hlY2tlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkwRjQ2
ODA4MzE0QkE1NzMxMDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRFeGNlcHRpb25zLmNwcAkocmV2
aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpJVEV4
Y2VwdGlvbnMuaCIKKworI2luY2x1ZGUgIkNhbGxGcmFtZS5oIgorI2luY2x1ZGUgIkNvZGVCbG9j
ay5oIgorI2luY2x1ZGUgIkludGVycHJldGVyLmgiCisjaW5jbHVkZSAiSlNHbG9iYWxEYXRhLmgi
CisjaW5jbHVkZSAiSlNWYWx1ZS5oIgorCituYW1lc3BhY2UgSlNDIHsKKworRXhjZXB0aW9uSGFu
ZGxlciBnZW5lcmljVGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBFeGVjU3RhdGUqIGNh
bGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgdW5zaWduZWQgdlBDSW5kZXgpCit7Cisg
ICAgQVNTRVJUKGV4Y2VwdGlvblZhbHVlKTsKKworICAgIGdsb2JhbERhdGEtPmV4Y2VwdGlvbiA9
IEpTVmFsdWUoKTsKKyAgICBIYW5kbGVySW5mbyogaGFuZGxlciA9IGdsb2JhbERhdGEtPmludGVy
cHJldGVyLT50aHJvd0V4Y2VwdGlvbihjYWxsRnJhbWUsIGV4Y2VwdGlvblZhbHVlLCB2UENJbmRl
eCk7IC8vIFRoaXMgbWF5IHVwZGF0ZSBjYWxsRnJhbWUgJiBleGNlcHRpb25WYWx1ZSEKKyAgICBn
bG9iYWxEYXRhLT5leGNlcHRpb24gPSBleGNlcHRpb25WYWx1ZTsKKworICAgIHZvaWQqIGNhdGNo
Um91dGluZTsKKyAgICBJbnN0cnVjdGlvbiogY2F0Y2hQQ0ZvckludGVycHJldGVyID0gMDsKKyAg
ICBpZiAoaGFuZGxlcikgeworICAgICAgICBjYXRjaFJvdXRpbmUgPSBoYW5kbGVyLT5uYXRpdmVD
b2RlLmV4ZWN1dGFibGVBZGRyZXNzKCk7CisgICAgICAgIGlmIChjYWxsRnJhbWUtPmNvZGVCbG9j
aygpLT5oYXNJbnN0cnVjdGlvbnMoKSkKKyAgICAgICAgICAgIGNhdGNoUENGb3JJbnRlcnByZXRl
ciA9ICZjYWxsRnJhbWUtPmNvZGVCbG9jaygpLT5pbnN0cnVjdGlvbnMoKVtoYW5kbGVyLT50YXJn
ZXRdOworICAgIH0gZWxzZQorICAgICAgICBjYXRjaFJvdXRpbmUgPSBGdW5jdGlvblB0cihjdGlP
cFRocm93Tm90Q2F1Z2h0KS52YWx1ZSgpOworICAgIAorICAgIGdsb2JhbERhdGEtPmNhbGxGcmFt
ZUZvclRocm93ID0gY2FsbEZyYW1lOworICAgIGdsb2JhbERhdGEtPnRhcmdldE1hY2hpbmVQQ0Zv
clRocm93ID0gY2F0Y2hSb3V0aW5lOworICAgIGdsb2JhbERhdGEtPnRhcmdldEludGVycHJldGVy
UENGb3JUaHJvdyA9IGNhdGNoUENGb3JJbnRlcnByZXRlcjsKKyAgICAKKyAgICBBU1NFUlQoY2F0
Y2hSb3V0aW5lKTsKKyAgICBFeGNlcHRpb25IYW5kbGVyIGV4Y2VwdGlvbkhhbmRsZXIgPSB7IGNh
dGNoUm91dGluZSwgY2FsbEZyYW1lIH07CisgICAgcmV0dXJuIGV4Y2VwdGlvbkhhbmRsZXI7Cit9
CisKK0V4Y2VwdGlvbkhhbmRsZXIgaml0VGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBF
eGVjU3RhdGUqIGNhbGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgUmV0dXJuQWRkcmVz
c1B0ciBmYXVsdExvY2F0aW9uKQoreworICAgIHJldHVybiBnZW5lcmljVGhyb3coZ2xvYmFsRGF0
YSwgY2FsbEZyYW1lLCBleGNlcHRpb25WYWx1ZSwgY2FsbEZyYW1lLT5jb2RlQmxvY2soKS0+Ynl0
ZWNvZGVPZmZzZXQoZmF1bHRMb2NhdGlvbikpOworfQorCit9CisKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRFeGNlcHRpb25zLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lm
bmRlZiBKSVRFeGNlcHRpb25zX2gKKyNkZWZpbmUgSklURXhjZXB0aW9uc19oCisKKyNpbmNsdWRl
ICJKU1ZhbHVlLmgiCisjaW5jbHVkZSAiTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmgiCisKK25hbWVz
cGFjZSBKU0MgeworCitjbGFzcyBFeGVjU3RhdGU7CitjbGFzcyBKU0dsb2JhbERhdGE7CisKKy8v
IFRoaXMgaGVhZGVyIGdpdmVzIG90aGVyIHBhcnRzIG9mIHRoZSBzeXN0ZW0gYWNjZXNzIHRvIHRo
ZSBKSVQncyBwcm90b3RvY29sCisvLyBmb3IgdGhlIHRocm93aW5nIGFuZCBoYW5kbGluZyBleGNl
cHRpb25zLgorCitzdHJ1Y3QgRXhjZXB0aW9uSGFuZGxlciB7CisgICAgdm9pZCogY2F0Y2hSb3V0
aW5lOworICAgIEV4ZWNTdGF0ZSogY2FsbEZyYW1lOworfTsKKworRXhjZXB0aW9uSGFuZGxlciBn
ZW5lcmljVGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBFeGVjU3RhdGUqIGNhbGxGcmFt
ZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgdW5zaWduZWQgdlBDSW5kZXgpOworCitFeGNlcHRp
b25IYW5kbGVyIGppdFRocm93KEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSwgRXhlY1N0YXRlKiBj
YWxsRnJhbWUsIEpTVmFsdWUgZXhjZXB0aW9uVmFsdWUsIFJldHVybkFkZHJlc3NQdHIgZmF1bHRM
b2NhdGlvbik7CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjZW5kaWYgLy8gSklURXhjZXB0aW9u
c19oCisKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCShyZXZpc2lv
biAxMDQ0MTApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0dWJzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNDQsNiArNDQsNyBAQAogI2luY2x1ZGUgIkhlYXAuaCIKICNpbmNsdWRl
ICJJbmxpbmVBU00uaCIKICNpbmNsdWRlICJKSVQuaCIKKyNpbmNsdWRlICJKSVRFeGNlcHRpb25z
LmgiCiAjaW5jbHVkZSAiSlNBY3RpdmF0aW9uLmgiCiAjaW5jbHVkZSAiSlNBcnJheS5oIgogI2lu
Y2x1ZGUgIkpTQnl0ZUFycmF5LmgiCkBAIC0xMDMzLDI2ICsxMDM0LDYgQEAgc3RhdGljIE5FVkVS
X0lOTElORSB2b2lkIHJldHVyblRvVGhyb3dUcgogICAgICAgICB9IFwKICAgICB9IHdoaWxlICgw
KQogCi1zdHJ1Y3QgRXhjZXB0aW9uSGFuZGxlciB7Ci0gICAgdm9pZCogY2F0Y2hSb3V0aW5lOwot
ICAgIENhbGxGcmFtZSogY2FsbEZyYW1lOwotfTsKLQotc3RhdGljIEV4Y2VwdGlvbkhhbmRsZXIg
aml0VGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSwg
SlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgUmV0dXJuQWRkcmVzc1B0ciBmYXVsdExvY2F0aW9uKQot
ewotICAgIEFTU0VSVChleGNlcHRpb25WYWx1ZSk7Ci0KLSAgICB1bnNpZ25lZCB2UENJbmRleCA9
IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCktPmJ5dGVjb2RlT2Zmc2V0KGZhdWx0TG9jYXRpb24pOwot
ICAgIGdsb2JhbERhdGEtPmV4Y2VwdGlvbiA9IEpTVmFsdWUoKTsKLSAgICBIYW5kbGVySW5mbyog
aGFuZGxlciA9IGdsb2JhbERhdGEtPmludGVycHJldGVyLT50aHJvd0V4Y2VwdGlvbihjYWxsRnJh
bWUsIGV4Y2VwdGlvblZhbHVlLCB2UENJbmRleCk7IC8vIFRoaXMgbWF5IHVwZGF0ZSBjYWxsRnJh
bWUgJiBleGNlcHRpb25WYWx1ZSEKLSAgICBnbG9iYWxEYXRhLT5leGNlcHRpb24gPSBleGNlcHRp
b25WYWx1ZTsKLQotICAgIHZvaWQqIGNhdGNoUm91dGluZSA9IGhhbmRsZXIgPyBoYW5kbGVyLT5u
YXRpdmVDb2RlLmV4ZWN1dGFibGVBZGRyZXNzKCkgOiBGdW5jdGlvblB0cihjdGlPcFRocm93Tm90
Q2F1Z2h0KS52YWx1ZSgpOwotICAgIEFTU0VSVChjYXRjaFJvdXRpbmUpOwotICAgIEV4Y2VwdGlv
bkhhbmRsZXIgZXhjZXB0aW9uSGFuZGxlciA9IHsgY2F0Y2hSb3V0aW5lLCBjYWxsRnJhbWUgfTsK
LSAgICByZXR1cm4gZXhjZXB0aW9uSGFuZGxlcjsKLX0KLQogLy8gSGVscGVyIGZ1bmN0aW9uIGZv
ciBKSVQgc3R1YnMgdGhhdCBtYXkgdGhyb3cgYW4gZXhjZXB0aW9uIGluIHRoZSBtaWRkbGUgb2YK
IC8vIHByb2Nlc3NpbmcgYSBmdW5jdGlvbiBjYWxsLiBUaGlzIGZ1bmN0aW9uIHJvbGxzIGJhY2sg
dGhlIHJlZ2lzdGVyIGZpbGUgdG8KIC8vIG91ciBjYWxsZXIsIHNvIGV4Y2VwdGlvbiBwcm9jZXNz
aW5nIGNhbiBwcm9jZWVkIGZyb20gYSB2YWxpZCBzdGF0ZS4KSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsRGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsRGF0YS5oCShyZXZpc2lvbiAxMDQ0MTApCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbERhdGEuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUxLDYgKzI1MSw5IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIEVOQUJMRShKSVQpCiAg
ICAgICAgIFJldHVybkFkZHJlc3NQdHIgZXhjZXB0aW9uTG9jYXRpb247CiAgICAgICAgIEpTVmFs
dWUgaG9zdENhbGxSZXR1cm5WYWx1ZTsKKyAgICAgICAgQ2FsbEZyYW1lKiBjYWxsRnJhbWVGb3JU
aHJvdzsKKyAgICAgICAgdm9pZCogdGFyZ2V0TWFjaGluZVBDRm9yVGhyb3c7CisgICAgICAgIElu
c3RydWN0aW9uKiB0YXJnZXRJbnRlcnByZXRlclBDRm9yVGhyb3c7CiAjaWYgRU5BQkxFKERGR19K
SVQpCiAgICAgICAgIHVpbnQzMl90IG9zckV4aXRJbmRleDsKICAgICAgICAgdm9pZCogb3NyRXhp
dEp1bXBEZXN0aW5hdGlvbjsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121595</attachid>
            <date>2012-01-08 15:28:02 -0800</date>
            <delta_ts>2012-01-08 15:41:53 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>refactorexceptions_patch_2.diff</filename>
            <type>text/plain</type>
            <size>15252</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTA0NDExKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBA
CisyMDEyLTAxLTA4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
VGhlIEpJVCdzIHByb3RvY29sIGZvciBleGNlcHRpb24gaGFuZGxpbmcgc2hvdWxkIGJlIGF2YWls
YWJsZSB0byBvdGhlciBwYXJ0cyBvZiB0aGUgc3lzdGVtCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NTgwOAorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
MTA2NjEwMjU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAg
ICAgICAqIEphdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS52Y3Byb2o6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAgICAqIGppdC9KSVRFeGNlcHRpb25z
LmNwcDogQWRkZWQuCisgICAgICAgIChKU0M6OmdlbmVyaWNUaHJvdyk6CisgICAgICAgIChKU0M6
OmppdFRocm93KToKKyAgICAgICAgKiBqaXQvSklURXhjZXB0aW9ucy5oOiBBZGRlZC4KKyAgICAg
ICAgKiBqaXQvSklUU3R1YnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNHbG9iYWxEYXRhLmg6
CisKIDIwMTItMDEtMDYgIEhhamltZSBNb3JyaXRhICA8bW9ycml0YUBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc1Mjk2Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CShyZXZpc2lvbiAxMDQ0MTApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTkyLDYgKzkyLDcgQEAgU0VUKEphdmFTY3JpcHRDb3JlX1NPVVJDRVMKICAgICBqaXQvSklUQ2Fs
bDMyXzY0LmNwcAogICAgIGppdC9KSVRDYWxsLmNwcAogICAgIGppdC9KSVQuY3BwCisgICAgaml0
L0pJVEV4Y2VwdGlvbnMuY3BwCiAgICAgaml0L0pJVE9wY29kZXMzMl82NC5jcHAKICAgICBqaXQv
SklUT3Bjb2Rlcy5jcHAKICAgICBqaXQvSklUUHJvcGVydHlBY2Nlc3MzMl82NC5jcHAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCShyZXZpc2lvbiAxMDQ0
MTApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQkod29ya2lu
ZyBjb3B5KQpAQCAtMjYwLDYgKzI2MCw4IEBAIGphdmFzY3JpcHRjb3JlX3NvdXJjZXMgKz0gXAog
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ29kZS5oIFwKIAlTb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0pJVC5jcHAgXAogCVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggXAor
CVNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAgXAorCVNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVElubGluZU1ldGhvZHMuaCBcCiAJU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRPcGNvZGVzMzJfNjQuY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wY29k
ZXMuY3BwIFwKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9UYXJnZXQucHJpCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9UYXJnZXQucHJpCShyZXZpc2lvbiAxMDQ0MTAp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvVGFyZ2V0LnByaQkod29ya2luZyBjb3B5KQpAQCAt
MTA0LDYgKzEwNCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIGppdC9KSVRDYWxsLmNwcCBcCiAgICAg
aml0L0pJVENhbGwzMl82NC5jcHAgXAogICAgIGppdC9KSVQuY3BwIFwKKyAgICBqaXQvSklURXhj
ZXB0aW9ucy5jcHAgXAogICAgIGppdC9KSVRPcGNvZGVzLmNwcCBcCiAgICAgaml0L0pJVE9wY29k
ZXMzMl82NC5jcHAgXAogICAgIGppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHAgXApJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS52Y3Byb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3By
b2oJKHJldmlzaW9uIDEwNDQxMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUudmNwcm9qCSh3b3JraW5n
IGNvcHkpCkBAIC0xNzEwLDYgKzE3MTAsMTQgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8Rmls
ZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5caml0XEpJVEV4Y2VwdGlvbnMuY3BwIgorCQkJCT4K
KwkJCTwvRmlsZT4KKwkJCTxGaWxlCisJCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxqaXRcSklURXhj
ZXB0aW9ucy5oIgorCQkJCT4KKwkJCTwvRmlsZT4KKwkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRo
PSIuLlwuLlxqaXRcSklUU3R1YnMuY3BwIgogCQkJCT4KIAkJCTwvRmlsZT4KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxMDQ0MTApCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTgsNiArNTgsOCBAQAogCQkwRjQyNkE0OTE0NjBDQkI3MDAxMzFGOEYgLyog
VmlydHVhbFJlZ2lzdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwRjQyNkE0NjE0NjBDQkFCMDAxMzFGOEYgLyogVmlydHVhbFJlZ2lzdGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMEY0MjZBNEIx
NDYwQ0Q2RTAwMTMxRjhGIC8qIERhdGFGb3JtYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNDI2QTRBMTQ2MENENkIwMDEzMUY4RiAvKiBEYXRhRm9y
bWF0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
MEY0MzE3MzgxNDZCQUM2OTAwN0UzODkwIC8qIExpc3RhYmxlSGFuZGxlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0MzE3MzYxNDZCQUM2NTAwN0Uz
ODkwIC8qIExpc3RhYmxlSGFuZGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTBGNDY4MDgyMTRCQTU3MkQwMEJGRTI3MiAvKiBKSVRFeGNlcHRp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjQ2
ODA4MDE0QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNDY4MDgzMTRCQTU3MzEwMEJGRTI3
MiAvKiBKSVRFeGNlcHRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDBGNDY4MDdGMTRCQTU3MjcwMEJGRTI3MiAvKiBKSVRFeGNlcHRpb25zLmNw
cCAqLzsgfTsKIAkJMEY1RjA4Q0YxNDZDNzYzMzAwMDQ3MkE5IC8qIFVuY29uZGl0aW9uYWxGaW5h
bGl6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBG
NUYwOENFMTQ2Qzc2MkYwMDA0NzJBOSAvKiBVbmNvbmRpdGlvbmFsRmluYWxpemVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMEY2MjAxNzQxNDNG
Q0QzMzAwNjhCNzdDIC8qIERGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2MjAxNzIxNDNGQ0QyRjAwNjhCNzdDIC8q
IERGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTBGNjIwMTc1MTQzRkNEMzcwMDY4Qjc3QyAvKiBERkdPcGVyYW5k
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2MjAx
NzExNDNGQ0QyRjAwNjhCNzdDIC8qIERGR09wZXJhbmRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTg0MSw2ICs4NDMsOCBAQAogCQkwRjQyNkE0
NjE0NjBDQkFCMDAxMzFGOEYgLyogVmlydHVhbFJlZ2lzdGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFZpcnR1YWxSZWdpc3Rlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkwRjQyNkE0QTE0NjBDRDZCMDAxMzFGOEYgLyogRGF0YUZvcm1hdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhRm9ybWF0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTBGNDMxNzM2MTQ2QkFDNjUwMDdFMzg5MCAvKiBMaXN0YWJsZUhhbmRsZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlzdGFibGVIYW5kbGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDY4MDdGMTRCQTU3MjcwMEJGRTI3MiAvKiBK
SVRFeGNlcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpJ
VEV4Y2VwdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ2ODA4MDE0
QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKSVRFeGNlcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTBGNUYwOENDMTQ2QkU2MDIwMDA0NzJBOSAvKiBERkdCeXRlQ29kZUNhY2hlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IERGR0J5dGVDb2RlQ2FjaGUuaDsgcGF0aCA9IGRmZy9E
RkdCeXRlQ29kZUNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTBGNUYwOENF
MTQ2Qzc2MkYwMDA0NzJBOSAvKiBVbmNvbmRpdGlvbmFsRmluYWxpemVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVuY29uZGl0aW9uYWxGaW5hbGl6ZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMEY2MjAxNkQxNDNGQ0QyRjAwNjhCNzdDIC8qIERGR0Fic3Ry
YWN0U3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gREZHQWJz
dHJhY3RTdGF0ZS5jcHA7IHBhdGggPSBkZmcvREZHQWJzdHJhY3RTdGF0ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjk4LDYgKzE3MDIsOCBAQAogCQkxNDI5RDkyQzBFRDIy
RDcwMDBCODk2MTkgLyogaml0ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJl
biA9ICgKKwkJCQkwRjQ2ODA3RjE0QkE1NzI3MDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5jcHAg
Ki8sCisJCQkJMEY0NjgwODAxNEJBNTcyNzAwQkZFMjcyIC8qIEpJVEV4Y2VwdGlvbnMuaCAqLywK
IAkJCQkwRkQ4MkUzNzE0MUFCMTQyMDAxNzlDOTQgLyogQ29tcGFjdEpJVENvZGVNYXAuaCAqLywK
IAkJCQlBN0I0OERCNjBFRTc0Q0ZDMDBEQ0JEQjYgLyogRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAg
Ki8sCiAJCQkJQTdCNDhEQjUwRUU3NENGQzAwRENCREI2IC8qIEV4ZWN1dGFibGVBbGxvY2F0b3Iu
aCAqLywKQEAgLTMwMDQsNiArMzAxMCw3IEBACiAJCQkJODY3MDRCOEExMkRCQTMzNzAwQTlGRTdC
IC8qIFlhcnJQYXR0ZXJuLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NjcwNEI0MzEyREI4QTgxMDBB
OUZFN0IgLyogWWFyclN5bnRheENoZWNrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMTVGMTVG
MTRCN0E3M0UwMDVERTM3RCAvKiBDb21tb25TbG93UGF0aHMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTBGNDY4MDgyMTRCQTU3MkQwMEJGRTI3MiAvKiBKSVRFeGNlcHRpb25zLmggaW4gSGVhZGVycyAq
LywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJ
fTsKQEAgLTM1NDIsNiArMzU0OSw3IEBACiAJCQkJODY3MDRCODYxMkRCQTMzNzAwQTlGRTdCIC8q
IFlhcnJKSVQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODY3MDRCODkxMkRCQTMzNzAwQTlGRTdC
IC8qIFlhcnJQYXR0ZXJuLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg2NzA0QjQyMTJEQjhBODEw
MEE5RkU3QiAvKiBZYXJyU3ludGF4Q2hlY2tlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkwRjQ2
ODA4MzE0QkE1NzMxMDBCRkUyNzIgLyogSklURXhjZXB0aW9ucy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRFeGNlcHRpb25zLmNwcAkocmV2
aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5jcHAJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpJVEV4
Y2VwdGlvbnMuaCIKKworI2luY2x1ZGUgIkNhbGxGcmFtZS5oIgorI2luY2x1ZGUgIkNvZGVCbG9j
ay5oIgorI2luY2x1ZGUgIkludGVycHJldGVyLmgiCisjaW5jbHVkZSAiSlNHbG9iYWxEYXRhLmgi
CisjaW5jbHVkZSAiSlNWYWx1ZS5oIgorCituYW1lc3BhY2UgSlNDIHsKKworRXhjZXB0aW9uSGFu
ZGxlciBnZW5lcmljVGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBFeGVjU3RhdGUqIGNh
bGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgdW5zaWduZWQgdlBDSW5kZXgpCit7Cisg
ICAgQVNTRVJUKGV4Y2VwdGlvblZhbHVlKTsKKworICAgIGdsb2JhbERhdGEtPmV4Y2VwdGlvbiA9
IEpTVmFsdWUoKTsKKyAgICBIYW5kbGVySW5mbyogaGFuZGxlciA9IGdsb2JhbERhdGEtPmludGVy
cHJldGVyLT50aHJvd0V4Y2VwdGlvbihjYWxsRnJhbWUsIGV4Y2VwdGlvblZhbHVlLCB2UENJbmRl
eCk7IC8vIFRoaXMgbWF5IHVwZGF0ZSBjYWxsRnJhbWUgJiBleGNlcHRpb25WYWx1ZSEKKyAgICBn
bG9iYWxEYXRhLT5leGNlcHRpb24gPSBleGNlcHRpb25WYWx1ZTsKKworICAgIHZvaWQqIGNhdGNo
Um91dGluZTsKKyAgICBJbnN0cnVjdGlvbiogY2F0Y2hQQ0ZvckludGVycHJldGVyID0gMDsKKyAg
ICBpZiAoaGFuZGxlcikgeworICAgICAgICBjYXRjaFJvdXRpbmUgPSBoYW5kbGVyLT5uYXRpdmVD
b2RlLmV4ZWN1dGFibGVBZGRyZXNzKCk7CisgICAgICAgIGlmIChjYWxsRnJhbWUtPmNvZGVCbG9j
aygpLT5oYXNJbnN0cnVjdGlvbnMoKSkKKyAgICAgICAgICAgIGNhdGNoUENGb3JJbnRlcnByZXRl
ciA9ICZjYWxsRnJhbWUtPmNvZGVCbG9jaygpLT5pbnN0cnVjdGlvbnMoKVtoYW5kbGVyLT50YXJn
ZXRdOworICAgIH0gZWxzZQorICAgICAgICBjYXRjaFJvdXRpbmUgPSBGdW5jdGlvblB0cihjdGlP
cFRocm93Tm90Q2F1Z2h0KS52YWx1ZSgpOworICAgIAorICAgIGdsb2JhbERhdGEtPmNhbGxGcmFt
ZUZvclRocm93ID0gY2FsbEZyYW1lOworICAgIGdsb2JhbERhdGEtPnRhcmdldE1hY2hpbmVQQ0Zv
clRocm93ID0gY2F0Y2hSb3V0aW5lOworICAgIGdsb2JhbERhdGEtPnRhcmdldEludGVycHJldGVy
UENGb3JUaHJvdyA9IGNhdGNoUENGb3JJbnRlcnByZXRlcjsKKyAgICAKKyAgICBBU1NFUlQoY2F0
Y2hSb3V0aW5lKTsKKyAgICBFeGNlcHRpb25IYW5kbGVyIGV4Y2VwdGlvbkhhbmRsZXIgPSB7IGNh
dGNoUm91dGluZSwgY2FsbEZyYW1lIH07CisgICAgcmV0dXJuIGV4Y2VwdGlvbkhhbmRsZXI7Cit9
CisKK0V4Y2VwdGlvbkhhbmRsZXIgaml0VGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBF
eGVjU3RhdGUqIGNhbGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgUmV0dXJuQWRkcmVz
c1B0ciBmYXVsdExvY2F0aW9uKQoreworICAgIHJldHVybiBnZW5lcmljVGhyb3coZ2xvYmFsRGF0
YSwgY2FsbEZyYW1lLCBleGNlcHRpb25WYWx1ZSwgY2FsbEZyYW1lLT5jb2RlQmxvY2soKS0+Ynl0
ZWNvZGVPZmZzZXQoZmF1bHRMb2NhdGlvbikpOworfQorCit9CisKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklURXhjZXB0aW9ucy5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRFeGNlcHRpb25zLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lm
bmRlZiBKSVRFeGNlcHRpb25zX2gKKyNkZWZpbmUgSklURXhjZXB0aW9uc19oCisKKyNpbmNsdWRl
ICJKU1ZhbHVlLmgiCisjaW5jbHVkZSAiTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmgiCisKK25hbWVz
cGFjZSBKU0MgeworCitjbGFzcyBFeGVjU3RhdGU7CitjbGFzcyBKU0dsb2JhbERhdGE7CisKKy8v
IFRoaXMgaGVhZGVyIGdpdmVzIG90aGVyIHBhcnRzIG9mIHRoZSBzeXN0ZW0gYWNjZXNzIHRvIHRo
ZSBKSVQncyBwcm90b3RvY29sCisvLyBmb3IgdGhlIHRocm93aW5nIGFuZCBoYW5kbGluZyBleGNl
cHRpb25zLgorCitzdHJ1Y3QgRXhjZXB0aW9uSGFuZGxlciB7CisgICAgdm9pZCogY2F0Y2hSb3V0
aW5lOworICAgIEV4ZWNTdGF0ZSogY2FsbEZyYW1lOworfTsKKworRXhjZXB0aW9uSGFuZGxlciBn
ZW5lcmljVGhyb3coSlNHbG9iYWxEYXRhKiwgRXhlY1N0YXRlKiwgSlNWYWx1ZSBleGNlcHRpb25W
YWx1ZSwgdW5zaWduZWQgdlBDSW5kZXgpOworCitFeGNlcHRpb25IYW5kbGVyIGppdFRocm93KEpT
R2xvYmFsRGF0YSosIEV4ZWNTdGF0ZSosIEpTVmFsdWUgZXhjZXB0aW9uVmFsdWUsIFJldHVybkFk
ZHJlc3NQdHIgZmF1bHRMb2NhdGlvbik7CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjZW5kaWYg
Ly8gSklURXhjZXB0aW9uc19oCisKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
U3R1YnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1
YnMuY3BwCShyZXZpc2lvbiAxMDQ0MTApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VFN0dWJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDQsNiArNDQsNyBAQAogI2luY2x1ZGUgIkhl
YXAuaCIKICNpbmNsdWRlICJJbmxpbmVBU00uaCIKICNpbmNsdWRlICJKSVQuaCIKKyNpbmNsdWRl
ICJKSVRFeGNlcHRpb25zLmgiCiAjaW5jbHVkZSAiSlNBY3RpdmF0aW9uLmgiCiAjaW5jbHVkZSAi
SlNBcnJheS5oIgogI2luY2x1ZGUgIkpTQnl0ZUFycmF5LmgiCkBAIC0xMDMzLDI2ICsxMDM0LDYg
QEAgc3RhdGljIE5FVkVSX0lOTElORSB2b2lkIHJldHVyblRvVGhyb3dUcgogICAgICAgICB9IFwK
ICAgICB9IHdoaWxlICgwKQogCi1zdHJ1Y3QgRXhjZXB0aW9uSGFuZGxlciB7Ci0gICAgdm9pZCog
Y2F0Y2hSb3V0aW5lOwotICAgIENhbGxGcmFtZSogY2FsbEZyYW1lOwotfTsKLQotc3RhdGljIEV4
Y2VwdGlvbkhhbmRsZXIgaml0VGhyb3coSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSwgSlNWYWx1ZSBleGNlcHRpb25WYWx1ZSwgUmV0dXJuQWRkcmVzc1B0ciBm
YXVsdExvY2F0aW9uKQotewotICAgIEFTU0VSVChleGNlcHRpb25WYWx1ZSk7Ci0KLSAgICB1bnNp
Z25lZCB2UENJbmRleCA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCktPmJ5dGVjb2RlT2Zmc2V0KGZh
dWx0TG9jYXRpb24pOwotICAgIGdsb2JhbERhdGEtPmV4Y2VwdGlvbiA9IEpTVmFsdWUoKTsKLSAg
ICBIYW5kbGVySW5mbyogaGFuZGxlciA9IGdsb2JhbERhdGEtPmludGVycHJldGVyLT50aHJvd0V4
Y2VwdGlvbihjYWxsRnJhbWUsIGV4Y2VwdGlvblZhbHVlLCB2UENJbmRleCk7IC8vIFRoaXMgbWF5
IHVwZGF0ZSBjYWxsRnJhbWUgJiBleGNlcHRpb25WYWx1ZSEKLSAgICBnbG9iYWxEYXRhLT5leGNl
cHRpb24gPSBleGNlcHRpb25WYWx1ZTsKLQotICAgIHZvaWQqIGNhdGNoUm91dGluZSA9IGhhbmRs
ZXIgPyBoYW5kbGVyLT5uYXRpdmVDb2RlLmV4ZWN1dGFibGVBZGRyZXNzKCkgOiBGdW5jdGlvblB0
cihjdGlPcFRocm93Tm90Q2F1Z2h0KS52YWx1ZSgpOwotICAgIEFTU0VSVChjYXRjaFJvdXRpbmUp
OwotICAgIEV4Y2VwdGlvbkhhbmRsZXIgZXhjZXB0aW9uSGFuZGxlciA9IHsgY2F0Y2hSb3V0aW5l
LCBjYWxsRnJhbWUgfTsKLSAgICByZXR1cm4gZXhjZXB0aW9uSGFuZGxlcjsKLX0KLQogLy8gSGVs
cGVyIGZ1bmN0aW9uIGZvciBKSVQgc3R1YnMgdGhhdCBtYXkgdGhyb3cgYW4gZXhjZXB0aW9uIGlu
IHRoZSBtaWRkbGUgb2YKIC8vIHByb2Nlc3NpbmcgYSBmdW5jdGlvbiBjYWxsLiBUaGlzIGZ1bmN0
aW9uIHJvbGxzIGJhY2sgdGhlIHJlZ2lzdGVyIGZpbGUgdG8KIC8vIG91ciBjYWxsZXIsIHNvIGV4
Y2VwdGlvbiBwcm9jZXNzaW5nIGNhbiBwcm9jZWVkIGZyb20gYSB2YWxpZCBzdGF0ZS4KSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsRGF0YS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsRGF0YS5oCShyZXZpc2lv
biAxMDQ0MTApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbERhdGEu
aAkod29ya2luZyBjb3B5KQpAQCAtMjUxLDYgKzI1MSw5IEBAIG5hbWVzcGFjZSBKU0MgewogI2lm
IEVOQUJMRShKSVQpCiAgICAgICAgIFJldHVybkFkZHJlc3NQdHIgZXhjZXB0aW9uTG9jYXRpb247
CiAgICAgICAgIEpTVmFsdWUgaG9zdENhbGxSZXR1cm5WYWx1ZTsKKyAgICAgICAgQ2FsbEZyYW1l
KiBjYWxsRnJhbWVGb3JUaHJvdzsKKyAgICAgICAgdm9pZCogdGFyZ2V0TWFjaGluZVBDRm9yVGhy
b3c7CisgICAgICAgIEluc3RydWN0aW9uKiB0YXJnZXRJbnRlcnByZXRlclBDRm9yVGhyb3c7CiAj
aWYgRU5BQkxFKERGR19KSVQpCiAgICAgICAgIHVpbnQzMl90IG9zckV4aXRJbmRleDsKICAgICAg
ICAgdm9pZCogb3NyRXhpdEp1bXBEZXN0aW5hdGlvbjsK
</data>
<flag name="review"
          id="122128"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>