<?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>131662</bug_id>
          
          <creation_ts>2014-04-14 20:59:18 -0700</creation_ts>
          <short_desc>WTF should have an optional mbmalloc target so we can benchmark FastMalloc</short_desc>
          <delta_ts>2014-04-16 10:49:19 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kling</cc>
    
    <cc>mrowe</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1000730</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-14 20:59:18 -0700</bug_when>
    <thetext>WTF should have an optional mbmalloc target so we can benchmark FastMalloc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000731</commentid>
    <comment_count>1</comment_count>
      <attachid>229342</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-14 21:00:06 -0700</bug_when>
    <thetext>Created attachment 229342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000774</commentid>
    <comment_count>2</comment_count>
      <attachid>229342</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2014-04-14 23:24:43 -0700</bug_when>
    <thetext>Comment on attachment 229342
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=229342&amp;action=review

&gt; Source/WTF/WTF.xcodeproj/project.pbxproj:328
&gt; +		1447AEBE18FCE56900B3D7FF /* libmbmalloc.dylib */ = {isa = PBXFileReference; explicitFileType = &quot;compiled.mach-o.dylib&quot;; includeInIndex = 0; path = libmbmalloc.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
&gt; +		1447AEC518FCE57700B3D7FF /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };

These paths need to be SDK-relative, not relative to the developer directory.

&gt; Source/WTF/WTF.xcodeproj/project.pbxproj:1191
&gt; +		1447AEBD18FCE56900B3D7FF /* mbmalloc */ = {

Can you give the target a more descriptive name?

&gt; Source/WTF/WTF.xcodeproj/project.pbxproj:1383
&gt; +			buildSettings = {

These settings all need to live in a .xcconfig file, and should be consistent with our other targets.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000952</commentid>
    <comment_count>3</comment_count>
      <attachid>229401</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-15 14:17:28 -0700</bug_when>
    <thetext>Created attachment 229401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000953</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-15 14:19:29 -0700</bug_when>
    <thetext>&gt; &gt; Source/WTF/WTF.xcodeproj/project.pbxproj:328
&gt; &gt; +		1447AEBE18FCE56900B3D7FF /* libmbmalloc.dylib */ = {isa = PBXFileReference; explicitFileType = &quot;compiled.mach-o.dylib&quot;; includeInIndex = 0; path = libmbmalloc.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
&gt; &gt; +		1447AEC518FCE57700B3D7FF /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
&gt; 
&gt; These paths need to be SDK-relative, not relative to the developer directory.

Fixed to use the &quot;&lt;absolute&gt;&quot; style, like WTF and JavaScriptCore.

&gt; &gt; Source/WTF/WTF.xcodeproj/project.pbxproj:1191
&gt; &gt; +		1447AEBD18FCE56900B3D7FF /* mbmalloc */ = {
&gt; 
&gt; Can you give the target a more descriptive name?

This name is required by MallocBench. (That&apos;s what the &quot;mb&quot; is for.)

&gt; &gt; Source/WTF/WTF.xcodeproj/project.pbxproj:1383
&gt; &gt; +			buildSettings = {
&gt; 
&gt; These settings all need to live in a .xcconfig file, and should be consistent with our other targets.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001191</commentid>
    <comment_count>5</comment_count>
      <attachid>229401</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-16 10:24:27 -0700</bug_when>
    <thetext>Comment on attachment 229401
Patch

Looks like a Mac-specific or Cocoa-specific patch, but bug title didn’t make that clear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001214</commentid>
    <comment_count>6</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-16 10:49:19 -0700</bug_when>
    <thetext>Committed r167355: &lt;http://trac.webkit.org/changeset/167355&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229342</attachid>
            <date>2014-04-14 21:00:06 -0700</date>
            <delta_ts>2014-04-15 14:17:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131662-20140414205944.patch</filename>
            <type>text/plain</type>
            <size>16490</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxNjcyOTMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE0LTA0LTE0ICBHZW9mZnJleSBHYXJlbiAgPGdn
YXJlbkBhcHBsZS5jb20+CisKKyAgICAgICAgV1RGIHNob3VsZCBoYXZlIGFuIG9wdGlvbmFsIG1i
bWFsbG9jIHRhcmdldCBzbyB3ZSBjYW4gYmVuY2htYXJrIEZhc3RNYWxsb2MKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTY2MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IEFkZGVkIHRoZSB0YXJnZXQuCisgICAgICAgICogd3RmL21ibWFsbG9jLmNw
cDogQWRkZWQuIEltcGxlbWVudHMgdGhlIGxpYm1ibWFsbG9jLmR5bGliIEFQSSByZXF1aXJlZAor
ICAgICAgICBieSBNYWxsb2NCZW5jaC4KKwogMjAxNC0wNC0xNCAgTWFyayBMYW0gIDxtYXJrLmxh
bUBhcHBsZS5jb20+CiAKICAgICAgICAgbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCkgc2hv
dWxkIG9ubHkgaW5pdGlhbGl6ZSBpdHMgc3RhdGljIHRpbWViYXNlSW5mbyBvbmNlLgpJbmRleDog
U291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxNjcyODkp
CisrKyBTb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNv
cHkpCkBAIC00Myw2ICs0MywxMCBAQAogCQkxNDAyMkY0MTE4RjVDM0ZDMDA3RkYwRUIgLyogbGli
Ym1hbGxvYy5hIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMTQwMjJGNDAxOEY1QzNGQzAwN0ZGMEVCIC8qIGxpYmJtYWxsb2MuYSAqLzsgfTsKIAkJMTQz
RjYxMUYxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQzRjYxMUQxNTY1RjBGOTAwREI1MTRBIC8qIFJB
TVNpemUuY3BwICovOyB9OwogCQkxNDNGNjEyMDE1NjVGMEY5MDBEQjUxNEEgLyogUkFNU2l6ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQzRjYxMUUx
NTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
ICgpOyB9OyB9OworCQkxNDQ3QUVDNjE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFt
ZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
NDQ3QUVDNTE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFtZXdvcmsgKi87IH07CisJ
CTE0NDdBRUM3MThGQ0U1ODAwMEIzRDdGRiAvKiBsaWJXVEYuYSBpbiBGcmFtZXdvcmtzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVEMjQ3QjYyMTQ2ODlCODYwMEU3OEI3NiAv
KiBsaWJXVEYuYSAqLzsgfTsKKwkJMTQ0N0FFQzkxOEZDRTU5NDAwQjNEN0ZGIC8qIG1ibWFsbG9j
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0NDdB
RUM4MThGQ0U1OTQwMEIzRDdGRiAvKiBtYm1hbGxvYy5jcHAgKi87IH07CisJCTE0NDdBRUNCMThG
Q0U1QjkwMEIzRDdGRiAvKiBsaWJpY3Vjb3JlLmR5bGliIGluIEZyYW1ld29ya3MgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ0N0FFQ0ExOEZDRTVCOTAwQjNEN0ZGIC8qIGxp
YmljdWNvcmUuZHlsaWIgKi87IH07CiAJCTE0Njk0MTkyMTZFQUFGNkQwMDI0RTE0NiAvKiBSdW5M
b29wVGltZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDE0Njk0MTkwMTZFQUFGNkQwMDI0RTE0NiAvKiBSdW5Mb29wVGltZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwogCQkxNDY5NDE5MzE2RUFBRjZEMDAyNEUxNDYgLyog
UnVuTG9vcFRpbWVyQ0YuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMTQ2OTQxOTExNkVBQUY2RDAwMjRFMTQ2IC8qIFJ1bkxvb3BUaW1lckNGLmNwcCAq
LzsgfTsKIAkJMTQ2OTQxOTYxNkVBQUZGODAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ2OTQxOTQxNkVBQUZG
ODAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpci5oICovOyB9OwpAQCAtMjc5LDYgKzI4MywxMyBAQAog
LyogRW5kIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWENvbnRhaW5lckl0
ZW1Qcm94eSBzZWN0aW9uICovCisJCTE0NDdBRUMzMThGQ0U1NzAwMEIzRDdGRiAvKiBQQlhDb250
YWluZXJJdGVtUHJveHkgKi8gPSB7CisJCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7CisJ
CQljb250YWluZXJQb3J0YWwgPSA1RDI0N0I1OTE0Njg5Qjg2MDBFNzhCNzYgLyogUHJvamVjdCBv
YmplY3QgKi87CisJCQlwcm94eVR5cGUgPSAxOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA1
RDI0N0I2MTE0Njg5Qjg2MDBFNzhCNzY7CisJCQlyZW1vdGVJbmZvID0gV1RGOworCQl9OwogCQk2
NUFGQTI4RDE2MzBCOTlFMDAzRDcyM0MgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0gewog
CQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OwogCQkJY29udGFpbmVyUG9ydGFsID0gNUQy
NDdCNTkxNDY4OUI4NjAwRTc4Qjc2IC8qIFByb2plY3Qgb2JqZWN0ICovOwpAQCAtMzEwLDkgKzMy
MSwxMyBAQAogCQkwRkREQkZBNTE2NjZERkEzMDBDNTVGRUYgLyogU3RyaW5nUHJpbnRTdHJlYW0u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RyaW5nUHJpbnRTdHJl
YW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwRkREQkZBNjE2NjZERkEzMDBD
NTVGRUYgLyogU3RyaW5nUHJpbnRTdHJlYW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU3RyaW5nUHJpbnRTdHJlYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MEZFQzNFRTQxNzFCODM0NzAwRkRBQzhEIC8qIEJ5dGVTcGluTG9jay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBCeXRlU3BpbkxvY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMTQwMjJGNDAx
OEY1QzNGQzAwN0ZGMEVCIC8qIGxpYmJtYWxsb2MuYSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGFyY2hpdmUuYXI7IG5hbWUgPSBsaWJibWFsbG9jLmE7
IHBhdGggPSBsaWJibWFsbG9jLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCTE0MDIyRjQwMThGNUMzRkMwMDdGRjBFQiAvKiBsaWJibWFsbG9jLmEgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNoaXZlLmFyOyBwYXRoID0g
bGliYm1hbGxvYy5hOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQkxNDNG
NjExRDE1NjVGMEY5MDBEQjUxNEEgLyogUkFNU2l6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBSQU1TaXplLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMTQzRjYxMUUxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUkFNU2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxNDQ3QUVCRTE4RkNFNTY5MDBCM0Q3RkYgLyogbGlibWJtYWxsb2MuZHlsaWIgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8u
ZHlsaWIiOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSBsaWJtYm1hbGxvYy5keWxpYjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJMTQ0N0FFQzUxOEZDRTU3NzAwQjNE
N0ZGIC8qIEZvdW5kYXRpb24uZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBGb3VuZGF0aW9u
LmZyYW1ld29yazsgcGF0aCA9IFBsYXRmb3Jtcy9NYWNPU1gucGxhdGZvcm0vRGV2ZWxvcGVyL1NE
S3MvTWFjT1NYMTAuOS5zZGsvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Gb3VuZGF0aW9uLmZy
YW1ld29yazsgc291cmNlVHJlZSA9IERFVkVMT1BFUl9ESVI7IH07CisJCTE0NDdBRUM4MThGQ0U1
OTQwMEIzRDdGRiAvKiBtYm1hbGxvYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBtYm1hbGxvYy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0NDdBRUNBMThGQ0U1QjkwMEIzRDdG
RiAvKiBsaWJpY3Vjb3JlLmR5bGliICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJpY3Vjb3Jl
LmR5bGliOyBwYXRoID0gUGxhdGZvcm1zL01hY09TWC5wbGF0Zm9ybS9EZXZlbG9wZXIvU0RLcy9N
YWNPU1gxMC45LnNkay91c3IvbGliL2xpYmljdWNvcmUuZHlsaWI7IHNvdXJjZVRyZWUgPSBERVZF
TE9QRVJfRElSOyB9OwogCQkxNDY5NDE5MDE2RUFBRjZEMDAyNEUxNDYgLyogUnVuTG9vcFRpbWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1bkxvb3BUaW1lci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDY5NDE5MTE2RUFBRjZEMDAyNEUxNDYgLyogUnVu
TG9vcFRpbWVyQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUnVu
TG9vcFRpbWVyQ0YuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDY5NDE5NDE2
RUFBRkY4MDAyNEUxNDYgLyogU2NoZWR1bGVQYWlyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNjaGVkdWxlUGFpci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
NTU5LDYgKzU3NCwxNiBAQAogLyogRW5kIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCiAv
KiBCZWdpbiBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZSBzZWN0aW9uICovCisJCTE0NDdBRUJCMThG
Q0U1NjkwMEIzRDdGRiAvKiBGcmFtZXdvcmtzICovID0geworCQkJaXNhID0gUEJYRnJhbWV3b3Jr
c0J1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMg
PSAoCisJCQkJMTQ0N0FFQ0IxOEZDRTVCOTAwQjNEN0ZGIC8qIGxpYmljdWNvcmUuZHlsaWIgaW4g
RnJhbWV3b3JrcyAqLywKKwkJCQkxNDQ3QUVDNzE4RkNFNTgwMDBCM0Q3RkYgLyogbGliV1RGLmEg
aW4gRnJhbWV3b3JrcyAqLywKKwkJCQkxNDQ3QUVDNjE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRh
dGlvbi5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVw
bG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJfTsKIAkJNUQyNDdCNUYxNDY4OUI4NjAwRTc4
Qjc2IC8qIEZyYW1ld29ya3MgKi8gPSB7CiAJCQlpc2EgPSBQQlhGcmFtZXdvcmtzQnVpbGRQaGFz
ZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CkBAIC01OTgsNiArNjIzLDggQEAK
IAkJNUQyNDdCNTcxNDY4OUI4NjAwRTc4Qjc2ID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKKwkJCQkxNDQ3QUVDQTE4RkNFNUI5MDBCM0Q3RkYgLyogbGliaWN1Y29yZS5k
eWxpYiAqLywKKwkJCQkxNDQ3QUVDNTE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFt
ZXdvcmsgKi8sCiAJCQkJNUQyNDdCNkQxNDY4OUM0NzAwRTc4Qjc2IC8qIENvbmZpZ3VyYXRpb25z
ICovLAogCQkJCTE0MDIyRjNGMThGNUMzRTUwMDdGRjBFQiAvKiBMaWJyYXJpZXMgKi8sCiAJCQkJ
NUQyNDdCNjMxNDY4OUI4NjAwRTc4Qjc2IC8qIFByb2R1Y3RzICovLApAQCAtNjA5LDYgKzYzNiw3
IEBACiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAogCQkJCTVEMjQ3QjYyMTQ2
ODlCODYwMEU3OEI3NiAvKiBsaWJXVEYuYSAqLywKKwkJCQkxNDQ3QUVCRTE4RkNFNTY5MDBCM0Q3
RkYgLyogbGlibWJtYWxsb2MuZHlsaWIgKi8sCiAJCQkpOwogCQkJbmFtZSA9IFByb2R1Y3RzOwog
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTc0Niw2ICs3NzQsNyBAQAogCQkJCUE3MERB
MDgzMTc5OUYwNEQwMDUyOUE5QiAvKiBMaXN0RHVtcC5oICovLAogCQkJCUE4QTQ3MkMxMTUxQTgy
NUEwMDQxMjNGRiAvKiBMaXN0SGFzaFNldC5oICovLAogCQkJCUE4QTQ3MkMzMTUxQTgyNUEwMDQx
MjNGRiAvKiBMb2NrZXIuaCAqLywKKwkJCQkxNDQ3QUVDODE4RkNFNTk0MDBCM0Q3RkYgLyogbWJt
YWxsb2MuY3BwICovLAogCQkJCUE4QTQ3MkNBMTUxQTgyNUIwMDQxMjNGRiAvKiBNRDUuY3BwICov
LAogCQkJCUE4QTQ3MkNCMTUxQTgyNUIwMDQxMjNGRiAvKiBNRDUuaCAqLywKIAkJCQlBOEE0NzJD
NjE1MUE4MjVBMDA0MTIzRkYgLyogTWFpblRocmVhZC5jcHAgKi8sCkBAIC05NjYsNiArOTk1LDEz
IEBACiAvKiBFbmQgUEJYR3JvdXAgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhIZWFkZXJzQnVp
bGRQaGFzZSBzZWN0aW9uICovCisJCTE0NDdBRUJDMThGQ0U1NjkwMEIzRDdGRiAvKiBIZWFkZXJz
ICovID0geworCQkJaXNhID0gUEJYSGVhZGVyc0J1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1h
c2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJcnVuT25seUZvckRlcGxv
eW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAJCTVEMjQ3QjYwMTQ2ODlCODYwMEU3OEI3
NiAvKiBIZWFkZXJzICovID0gewogCQkJaXNhID0gUEJYSGVhZGVyc0J1aWxkUGhhc2U7CiAJCQli
dWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwpAQCAtMTE1Miw2ICsxMTg4LDI0IEBACiAvKiBF
bmQgUEJYSGVhZGVyc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhOYXRpdmVU
YXJnZXQgc2VjdGlvbiAqLworCQkxNDQ3QUVCRDE4RkNFNTY5MDBCM0Q3RkYgLyogbWJtYWxsb2Mg
Ki8gPSB7CisJCQlpc2EgPSBQQlhOYXRpdmVUYXJnZXQ7CisJCQlidWlsZENvbmZpZ3VyYXRpb25M
aXN0ID0gMTQ0N0FFQzIxOEZDRTU2OTAwQjNEN0ZGIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlz
dCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJtYm1hbGxvYyIgKi87CisJCQlidWlsZFBoYXNlcyA9ICgK
KwkJCQkxNDQ3QUVCQTE4RkNFNTY5MDBCM0Q3RkYgLyogU291cmNlcyAqLywKKwkJCQkxNDQ3QUVC
QjE4RkNFNTY5MDBCM0Q3RkYgLyogRnJhbWV3b3JrcyAqLywKKwkJCQkxNDQ3QUVCQzE4RkNFNTY5
MDBCM0Q3RkYgLyogSGVhZGVycyAqLywKKwkJCSk7CisJCQlidWlsZFJ1bGVzID0gKAorCQkJKTsK
KwkJCWRlcGVuZGVuY2llcyA9ICgKKwkJCQkxNDQ3QUVDNDE4RkNFNTcwMDBCM0Q3RkYgLyogUEJY
VGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCSk7CisJCQluYW1lID0gbWJtYWxsb2M7CisJCQlwcm9k
dWN0TmFtZSA9IG1ibWFsbG9jOworCQkJcHJvZHVjdFJlZmVyZW5jZSA9IDE0NDdBRUJFMThGQ0U1
NjkwMEIzRDdGRiAvKiBsaWJtYm1hbGxvYy5keWxpYiAqLzsKKwkJCXByb2R1Y3RUeXBlID0gImNv
bS5hcHBsZS5wcm9kdWN0LXR5cGUubGlicmFyeS5keW5hbWljIjsKKwkJfTsKIAkJNUQyNDdCNjEx
NDY4OUI4NjAwRTc4Qjc2IC8qIFdURiAqLyA9IHsKIAkJCWlzYSA9IFBCWE5hdGl2ZVRhcmdldDsK
IAkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSA1RDI0N0I2NjE0Njg5Qjg2MDBFNzhCNzYgLyog
QnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIldURiIgKi87CkBA
IC0xMTkyLDYgKzEyNDYsNyBAQAogCQkJdGFyZ2V0cyA9ICgKIAkJCQk1RDI0N0I2MTE0Njg5Qjg2
MDBFNzhCNzYgLyogV1RGICovLAogCQkJCTY1QUZBMTZGMTYzMEI5NzcwMDNENzIzQyAvKiBDb3B5
IFdURiBIZWFkZXJzICovLAorCQkJCTE0NDdBRUJEMThGQ0U1NjkwMEIzRDdGRiAvKiBtYm1hbGxv
YyAqLywKIAkJCSk7CiAJCX07CiAvKiBFbmQgUEJYUHJvamVjdCBzZWN0aW9uICovCkBAIC0xMjE0
LDYgKzEyNjksMTQgQEAKIC8qIEVuZCBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2Ugc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBQQlhTb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovCisJCTE0NDdBRUJB
MThGQ0U1NjkwMEIzRDdGRiAvKiBTb3VyY2VzICovID0geworCQkJaXNhID0gUEJYU291cmNlc0J1
aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAo
CisJCQkJMTQ0N0FFQzkxOEZDRTU5NDAwQjNEN0ZGIC8qIG1ibWFsbG9jLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwor
CQl9OwogCQk1RDI0N0I1RTE0Njg5Qjg2MDBFNzhCNzYgLyogU291cmNlcyAqLyA9IHsKIAkJCWlz
YSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOwogCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0
NzsKQEAgLTEzMDIsNiArMTM2NSwxMSBAQAogLyogRW5kIFBCWFNvdXJjZXNCdWlsZFBoYXNlIHNl
Y3Rpb24gKi8KIAogLyogQmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovCisJCTE0
NDdBRUM0MThGQ0U1NzAwMEIzRDdGRiAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geworCQkJ
aXNhID0gUEJYVGFyZ2V0RGVwZW5kZW5jeTsKKwkJCXRhcmdldCA9IDVEMjQ3QjYxMTQ2ODlCODYw
MEU3OEI3NiAvKiBXVEYgKi87CisJCQl0YXJnZXRQcm94eSA9IDE0NDdBRUMzMThGQ0U1NzAwMEIz
RDdGRiAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCX07CiAJCTY1QUZBMjhFMTYzMEI5
OUUwMDNENzIzQyAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0gewogCQkJaXNhID0gUEJYVGFy
Z2V0RGVwZW5kZW5jeTsKIAkJCXRhcmdldCA9IDY1QUZBMTZGMTYzMEI5NzcwMDNENzIzQyAvKiBD
b3B5IFdURiBIZWFkZXJzICovOwpAQCAtMTMxMCw2ICsxMzc4LDExMSBAQAogLyogRW5kIFBCWFRh
cmdldERlcGVuZGVuY3kgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBYQ0J1aWxkQ29uZmlndXJhdGlv
biBzZWN0aW9uICovCisJCTE0NDdBRUJGMThGQ0U1NjkwMEIzRDdGRiAvKiBEZWJ1ZyAqLyA9IHsK
KwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJ
CQlBTFdBWVNfU0VBUkNIX1VTRVJfUEFUSFMgPSBOTzsKKwkJCQlDTEFOR19DWFhfTEFOR1VBR0Vf
U1RBTkRBUkQgPSAiZ251KysweCI7CisJCQkJQ0xBTkdfQ1hYX0xJQlJBUlkgPSAibGliYysrIjsK
KwkJCQlDTEFOR19FTkFCTEVfTU9EVUxFUyA9IFlFUzsKKwkJCQlDTEFOR19FTkFCTEVfT0JKQ19B
UkMgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJQ0xB
TkdfV0FSTl9DT05TVEFOVF9DT05WRVJTSU9OID0gWUVTOworCQkJCUNMQU5HX1dBUk5fRElSRUNU
X09CSkNfSVNBX1VTQUdFID0gWUVTX0VSUk9SOworCQkJCUNMQU5HX1dBUk5fRU1QVFlfQk9EWSA9
IFlFUzsKKwkJCQlDTEFOR19XQVJOX0VOVU1fQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19X
QVJOX0lOVF9DT05WRVJTSU9OID0gWUVTOworCQkJCUNMQU5HX1dBUk5fT0JKQ19ST09UX0NMQVNT
ID0gWUVTX0VSUk9SOworCQkJCUNMQU5HX1dBUk5fX0RVUExJQ0FURV9NRVRIT0RfTUFUQ0ggPSBZ
RVM7CisJCQkJQ09QWV9QSEFTRV9TVFJJUCA9IE5POworCQkJCUVYRUNVVEFCTEVfUFJFRklYID0g
bGliOworCQkJCUdDQ19DX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251OTk7CisJCQkJR0NDX0RZTkFN
SUNfTk9fUElDID0gTk87CisJCQkJR0NDX09QVElNSVpBVElPTl9MRVZFTCA9IDA7CisJCQkJR0ND
X1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICgKKwkJCQkJIkRFQlVHPTEiLAorCQkJCQkiJChp
bmhlcml0ZWQpIiwKKwkJCQkpOworCQkJCUdDQ19TWU1CT0xTX1BSSVZBVEVfRVhURVJOID0gTk87
CisJCQkJR0NDX1dBUk5fNjRfVE9fMzJfQklUX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJR0NDX1dB
Uk5fQUJPVVRfUkVUVVJOX1RZUEUgPSBZRVNfRVJST1I7CisJCQkJR0NDX1dBUk5fVU5ERUNMQVJF
RF9TRUxFQ1RPUiA9IFlFUzsKKwkJCQlHQ0NfV0FSTl9VTklOSVRJQUxJWkVEX0FVVE9TID0gWUVT
X0FHR1JFU1NJVkU7CisJCQkJR0NDX1dBUk5fVU5VU0VEX0ZVTkNUSU9OID0gWUVTOworCQkJCUdD
Q19XQVJOX1VOVVNFRF9WQVJJQUJMRSA9IFlFUzsKKwkJCQlNQUNPU1hfREVQTE9ZTUVOVF9UQVJH
RVQgPSAxMC45OworCQkJCU9OTFlfQUNUSVZFX0FSQ0ggPSBZRVM7CisJCQkJUFJPRFVDVF9OQU1F
ID0gIiQoVEFSR0VUX05BTUUpIjsKKwkJCQlTREtST09UID0gbWFjb3N4OworCQkJfTsKKwkJCW5h
bWUgPSBEZWJ1ZzsKKwkJfTsKKwkJMTQ0N0FFQzAxOEZDRTU2OTAwQjNEN0ZGIC8qIFJlbGVhc2Ug
Ki8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJ1aWxkU2V0dGluZ3Mg
PSB7CisJCQkJQUxXQVlTX1NFQVJDSF9VU0VSX1BBVEhTID0gTk87CisJCQkJQ0xBTkdfQ1hYX0xB
TkdVQUdFX1NUQU5EQVJEID0gImdudSsrMHgiOworCQkJCUNMQU5HX0NYWF9MSUJSQVJZID0gImxp
YmMrKyI7CisJCQkJQ0xBTkdfRU5BQkxFX01PRFVMRVMgPSBZRVM7CisJCQkJQ0xBTkdfRU5BQkxF
X09CSkNfQVJDID0gWUVTOworCQkJCUNMQU5HX1dBUk5fQk9PTF9DT05WRVJTSU9OID0gWUVTOwor
CQkJCUNMQU5HX1dBUk5fQ09OU1RBTlRfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJO
X0RJUkVDVF9PQkpDX0lTQV9VU0FHRSA9IFlFU19FUlJPUjsKKwkJCQlDTEFOR19XQVJOX0VNUFRZ
X0JPRFkgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJ
Q0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX09CSkNfUk9P
VF9DTEFTUyA9IFlFU19FUlJPUjsKKwkJCQlDTEFOR19XQVJOX19EVVBMSUNBVEVfTUVUSE9EX01B
VENIID0gWUVTOworCQkJCUNPUFlfUEhBU0VfU1RSSVAgPSBZRVM7CisJCQkJREVCVUdfSU5GT1JN
QVRJT05fRk9STUFUID0gImR3YXJmLXdpdGgtZHN5bSI7CisJCQkJRU5BQkxFX05TX0FTU0VSVElP
TlMgPSBOTzsKKwkJCQlFWEVDVVRBQkxFX1BSRUZJWCA9IGxpYjsKKwkJCQlHQ0NfQ19MQU5HVUFH
RV9TVEFOREFSRCA9IGdudTk5OworCQkJCUdDQ19XQVJOXzY0X1RPXzMyX0JJVF9DT05WRVJTSU9O
ID0gWUVTOworCQkJCUdDQ19XQVJOX0FCT1VUX1JFVFVSTl9UWVBFID0gWUVTX0VSUk9SOworCQkJ
CUdDQ19XQVJOX1VOREVDTEFSRURfU0VMRUNUT1IgPSBZRVM7CisJCQkJR0NDX1dBUk5fVU5JTklU
SUFMSVpFRF9BVVRPUyA9IFlFU19BR0dSRVNTSVZFOworCQkJCUdDQ19XQVJOX1VOVVNFRF9GVU5D
VElPTiA9IFlFUzsKKwkJCQlHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVM7CisJCQkJTUFD
T1NYX0RFUExPWU1FTlRfVEFSR0VUID0gMTAuOTsKKwkJCQlQUk9EVUNUX05BTUUgPSAiJChUQVJH
RVRfTkFNRSkiOworCQkJCVNES1JPT1QgPSBtYWNvc3g7CisJCQl9OworCQkJbmFtZSA9IFJlbGVh
c2U7CisJCX07CisJCTE0NDdBRUMxMThGQ0U1NjkwMEIzRDdGRiAvKiBQcm9kdWN0aW9uICovID0g
eworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdzID0gewor
CQkJCUFMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyA9IE5POworCQkJCUNMQU5HX0NYWF9MQU5HVUFH
RV9TVEFOREFSRCA9ICJnbnUrKzB4IjsKKwkJCQlDTEFOR19DWFhfTElCUkFSWSA9ICJsaWJjKysi
OworCQkJCUNMQU5HX0VOQUJMRV9NT0RVTEVTID0gWUVTOworCQkJCUNMQU5HX0VOQUJMRV9PQkpD
X0FSQyA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX0JPT0xfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlD
TEFOR19XQVJOX0NPTlNUQU5UX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9ESVJF
Q1RfT0JKQ19JU0FfVVNBR0UgPSBZRVNfRVJST1I7CisJCQkJQ0xBTkdfV0FSTl9FTVBUWV9CT0RZ
ID0gWUVTOworCQkJCUNMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9OID0gWUVTOworCQkJCUNMQU5H
X1dBUk5fSU5UX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9PQkpDX1JPT1RfQ0xB
U1MgPSBZRVNfRVJST1I7CisJCQkJQ0xBTkdfV0FSTl9fRFVQTElDQVRFX01FVEhPRF9NQVRDSCA9
IFlFUzsKKwkJCQlDT1BZX1BIQVNFX1NUUklQID0gWUVTOworCQkJCURFQlVHX0lORk9STUFUSU9O
X0ZPUk1BVCA9ICJkd2FyZi13aXRoLWRzeW0iOworCQkJCUVOQUJMRV9OU19BU1NFUlRJT05TID0g
Tk87CisJCQkJRVhFQ1VUQUJMRV9QUkVGSVggPSBsaWI7CisJCQkJR0NDX0NfTEFOR1VBR0VfU1RB
TkRBUkQgPSBnbnU5OTsKKwkJCQlHQ0NfV0FSTl82NF9UT18zMl9CSVRfQ09OVkVSU0lPTiA9IFlF
UzsKKwkJCQlHQ0NfV0FSTl9BQk9VVF9SRVRVUk5fVFlQRSA9IFlFU19FUlJPUjsKKwkJCQlHQ0Nf
V0FSTl9VTkRFQ0xBUkVEX1NFTEVDVE9SID0gWUVTOworCQkJCUdDQ19XQVJOX1VOSU5JVElBTEla
RURfQVVUT1MgPSBZRVNfQUdHUkVTU0lWRTsKKwkJCQlHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04g
PSBZRVM7CisJCQkJR0NDX1dBUk5fVU5VU0VEX1ZBUklBQkxFID0gWUVTOworCQkJCU1BQ09TWF9E
RVBMT1lNRU5UX1RBUkdFVCA9IDEwLjk7CisJCQkJUFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05B
TUUpIjsKKwkJCQlTREtST09UID0gbWFjb3N4OworCQkJfTsKKwkJCW5hbWUgPSBQcm9kdWN0aW9u
OworCQl9OwogCQk1RDI0N0I2NDE0Njg5Qjg2MDBFNzhCNzYgLyogRGVidWcgKi8gPSB7CiAJCQlp
c2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKIAkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNl
ID0gNUQyNDdCNzAxNDY4OUM0NzAwRTc4Qjc2IC8qIERlYnVnUmVsZWFzZS54Y2NvbmZpZyAqLzsK
QEAgLTEzODMsNiArMTU1NiwxNSBAQAogLyogRW5kIFhDQnVpbGRDb25maWd1cmF0aW9uIHNlY3Rp
b24gKi8KIAogLyogQmVnaW4gWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovCisJCTE0NDdB
RUMyMThGQ0U1NjkwMEIzRDdGRiAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5h
dGl2ZVRhcmdldCAibWJtYWxsb2MiICovID0geworCQkJaXNhID0gWENDb25maWd1cmF0aW9uTGlz
dDsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbnMgPSAoCisJCQkJMTQ0N0FFQkYxOEZDRTU2OTAwQjNE
N0ZGIC8qIERlYnVnICovLAorCQkJCTE0NDdBRUMwMThGQ0U1NjkwMEIzRDdGRiAvKiBSZWxlYXNl
ICovLAorCQkJCTE0NDdBRUMxMThGQ0U1NjkwMEIzRDdGRiAvKiBQcm9kdWN0aW9uICovLAorCQkJ
KTsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uSXNWaXNpYmxlID0gMDsKKwkJfTsKIAkJNUQyNDdC
NUMxNDY4OUI4NjAwRTc4Qjc2IC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJv
amVjdCAiV1RGIiAqLyA9IHsKIAkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CiAJCQlidWls
ZENvbmZpZ3VyYXRpb25zID0gKApJbmRleDogU291cmNlL1dURi93dGYvbWJtYWxsb2MuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDU4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGYXN0TWFsbG9jLmgiCisKKyNkZWZpbmUgRVhQT1JU
IF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImRlZmF1bHQiKSkpCisKK2V4dGVybiAiQyIgewor
CitFWFBPUlQgdm9pZCogbWJtYWxsb2Moc2l6ZV90KTsKK0VYUE9SVCB2b2lkIG1iZnJlZSh2b2lk
Kiwgc2l6ZV90KTsKK0VYUE9SVCB2b2lkKiBtYnJlYWxsb2Modm9pZCosIHNpemVfdCwgc2l6ZV90
KTsKK0VYUE9SVCB2b2lkIG1ic2NhdmVuZ2UoKTsKKyAgICAKK3ZvaWQqIG1ibWFsbG9jKHNpemVf
dCBzaXplKQoreworICAgIHJldHVybiBXVEY6OmZhc3RNYWxsb2Moc2l6ZSk7Cit9CisKK3ZvaWQg
bWJmcmVlKHZvaWQqIHAsIHNpemVfdCkKK3sKKyAgICByZXR1cm4gV1RGOjpmYXN0RnJlZShwKTsK
K30KKwordm9pZCogbWJyZWFsbG9jKHZvaWQqIHAsIHNpemVfdCwgc2l6ZV90IHNpemUpCit7Cisg
ICAgcmV0dXJuIFdURjo6ZmFzdFJlYWxsb2MocCwgc2l6ZSk7Cit9CisKK3ZvaWQgbWJzY2F2ZW5n
ZSgpCit7CisgICAgV1RGOjpyZWxlYXNlRmFzdE1hbGxvY0ZyZWVNZW1vcnkoKTsKK30KKyAgICAK
K30gLy8gZXh0ZXJuICJDIgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229401</attachid>
            <date>2014-04-15 14:17:28 -0700</date>
            <delta_ts>2014-04-16 10:24:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131662-20140415141707.patch</filename>
            <type>text/plain</type>
            <size>16073</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxNjcyOTMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE0LTA0LTE0ICBHZW9mZnJleSBHYXJlbiAgPGdn
YXJlbkBhcHBsZS5jb20+CisKKyAgICAgICAgV1RGIHNob3VsZCBoYXZlIGFuIG9wdGlvbmFsIG1i
bWFsbG9jIHRhcmdldCBzbyB3ZSBjYW4gYmVuY2htYXJrIEZhc3RNYWxsb2MKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTY2MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6IEFkZGVkIHRoZSB0YXJnZXQuCisgICAgICAgICogd3RmL21ibWFsbG9jLmNw
cDogQWRkZWQuIEltcGxlbWVudHMgdGhlIGxpYm1ibWFsbG9jLmR5bGliIEFQSSByZXF1aXJlZAor
ICAgICAgICBieSBNYWxsb2NCZW5jaC4KKwogMjAxNC0wNC0xNCAgTWFyayBMYW0gIDxtYXJrLmxh
bUBhcHBsZS5jb20+CiAKICAgICAgICAgbW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCkgc2hv
dWxkIG9ubHkgaW5pdGlhbGl6ZSBpdHMgc3RhdGljIHRpbWViYXNlSW5mbyBvbmNlLgpJbmRleDog
U291cmNlL1dURi9Db25maWd1cmF0aW9ucy9tYm1hbGxvYy54Y2NvbmZpZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL0NvbmZpZ3VyYXRpb25zL21ibWFsbG9jLnhjY29uZmlnCShyZXZpc2lvbiAw
KQorKysgU291cmNlL1dURi9Db25maWd1cmF0aW9ucy9tYm1hbGxvYy54Y2NvbmZpZwkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDI4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8KKy8vIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorLy8gbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisv
LyBhcmUgbWV0OgorLy8gMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKy8vICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKy8vIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisvLyAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisvLyAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorLy8KKy8vIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorLy8gRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKy8v
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorLy8gUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IKKy8vIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorLy8gRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorLy8gUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisvLyBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisvLyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKy8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorLy8gT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCisKK0VYRUNVVEFCTEVfUFJFRklYID0gbGliOworSU5TVEFMTF9QQVRIX0FDVFVBTCA9IC91
c3IvbG9jYWwvbGliOworUFJPRFVDVF9OQU1FID0gbWJtYWxsb2M7CisKK0dDQ19TWU1CT0xTX1BS
SVZBVEVfRVhURVJOID0gWUVTOwpJbmRleDogU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCShyZXZpc2lvbiAxNjcyODkpCisrKyBTb3VyY2UvV1RGL1dURi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC00Myw2ICs0MywxMCBAQAogCQkxNDAy
MkY0MTE4RjVDM0ZDMDA3RkYwRUIgLyogbGliYm1hbGxvYy5hIGluIEZyYW1ld29ya3MgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQwMjJGNDAxOEY1QzNGQzAwN0ZGMEVCIC8q
IGxpYmJtYWxsb2MuYSAqLzsgfTsKIAkJMTQzRjYxMUYxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNp
emUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQz
RjYxMUQxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuY3BwICovOyB9OwogCQkxNDNGNjEyMDE1
NjVGMEY5MDBEQjUxNEEgLyogUkFNU2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMTQzRjYxMUUxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OworCQkxNDQ3QUVDNjE4RkNFNTc3
MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDQ3QUVDNTE4RkNFNTc3MDBCM0Q3RkYgLyogRm91
bmRhdGlvbi5mcmFtZXdvcmsgKi87IH07CisJCTE0NDdBRUM3MThGQ0U1ODAwMEIzRDdGRiAvKiBs
aWJXVEYuYSBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVEMjQ3QjYyMTQ2ODlCODYwMEU3OEI3NiAvKiBsaWJXVEYuYSAqLzsgfTsKKwkJMTQ0N0FFQzkx
OEZDRTU5NDAwQjNEN0ZGIC8qIG1ibWFsbG9jLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0NDdBRUM4MThGQ0U1OTQwMEIzRDdGRiAvKiBtYm1hbGxv
Yy5jcHAgKi87IH07CisJCTE0NDdBRUNCMThGQ0U1QjkwMEIzRDdGRiAvKiBsaWJpY3Vjb3JlLmR5
bGliIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ0
N0FFQ0ExOEZDRTVCOTAwQjNEN0ZGIC8qIGxpYmljdWNvcmUuZHlsaWIgKi87IH07CiAJCTE0Njk0
MTkyMTZFQUFGNkQwMDI0RTE0NiAvKiBSdW5Mb29wVGltZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0Njk0MTkwMTZFQUFGNkQwMDI0RTE0NiAvKiBS
dW5Mb29wVGltZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OwogCQkx
NDY5NDE5MzE2RUFBRjZEMDAyNEUxNDYgLyogUnVuTG9vcFRpbWVyQ0YuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ2OTQxOTExNkVBQUY2RDAwMjRF
MTQ2IC8qIFJ1bkxvb3BUaW1lckNGLmNwcCAqLzsgfTsKIAkJMTQ2OTQxOTYxNkVBQUZGODAwMjRF
MTQ2IC8qIFNjaGVkdWxlUGFpci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTQ2OTQxOTQxNkVBQUZGODAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpci5oICov
OyB9OwpAQCAtMjc5LDYgKzI4MywxMyBAQAogLyogRW5kIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICov
CiAKIC8qIEJlZ2luIFBCWENvbnRhaW5lckl0ZW1Qcm94eSBzZWN0aW9uICovCisJCTE0NDdBRUMz
MThGQ0U1NzAwMEIzRDdGRiAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8gPSB7CisJCQlpc2Eg
PSBQQlhDb250YWluZXJJdGVtUHJveHk7CisJCQljb250YWluZXJQb3J0YWwgPSA1RDI0N0I1OTE0
Njg5Qjg2MDBFNzhCNzYgLyogUHJvamVjdCBvYmplY3QgKi87CisJCQlwcm94eVR5cGUgPSAxOwor
CQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA1RDI0N0I2MTE0Njg5Qjg2MDBFNzhCNzY7CisJCQly
ZW1vdGVJbmZvID0gV1RGOworCQl9OwogCQk2NUFGQTI4RDE2MzBCOTlFMDAzRDcyM0MgLyogUEJY
Q29udGFpbmVySXRlbVByb3h5ICovID0gewogCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5
OwogCQkJY29udGFpbmVyUG9ydGFsID0gNUQyNDdCNTkxNDY4OUI4NjAwRTc4Qjc2IC8qIFByb2pl
Y3Qgb2JqZWN0ICovOwpAQCAtMzEzLDYgKzMyNCwxMCBAQAogCQkxNDAyMkY0MDE4RjVDM0ZDMDA3
RkYwRUIgLyogbGliYm1hbGxvYy5hICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gYXJjaGl2ZS5hcjsgbmFtZSA9IGxpYmJtYWxsb2MuYTsgcGF0aCA9IGxp
YmJtYWxsb2MuYTsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJMTQzRjYx
MUQxNTY1RjBGOTAwREI1MTRBIC8qIFJBTVNpemUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUkFNU2l6ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTE0M0Y2MTFFMTU2NUYwRjkwMERCNTE0QSAvKiBSQU1TaXplLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFJBTVNpemUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MTQ0N0FFQkUxOEZDRTU2OTAwQjNEN0ZGIC8qIGxpYm1ibWFsbG9jLmR5bGliICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmR5
bGliIjsgaW5jbHVkZUluSW5kZXggPSAwOyBwYXRoID0gbGlibWJtYWxsb2MuZHlsaWI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTE0NDdBRUM1MThGQ0U1NzcwMEIzRDdG
RiAvKiBGb3VuZGF0aW9uLmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gRm91bmRhdGlvbi5m
cmFtZXdvcms7IHBhdGggPSAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Gb3VuZGF0aW9uLmZy
YW1ld29yazsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKKwkJMTQ0N0FFQzgxOEZDRTU5
NDAwQjNEN0ZGIC8qIG1ibWFsbG9jLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IG1ibWFsbG9jLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ0N0FFQ0ExOEZDRTVCOTAwQjNEN0ZG
IC8qIGxpYmljdWNvcmUuZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmR5bGliIjsgbmFtZSA9IGxpYmljdWNvcmUu
ZHlsaWI7IHBhdGggPSAvdXNyL2xpYi9saWJpY3Vjb3JlLmR5bGliOyBzb3VyY2VUcmVlID0gIjxh
YnNvbHV0ZT4iOyB9OwogCQkxNDY5NDE5MDE2RUFBRjZEMDAyNEUxNDYgLyogUnVuTG9vcFRpbWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1bkxvb3BUaW1lci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDY5NDE5MTE2RUFBRjZEMDAyNEUxNDYgLyogUnVu
TG9vcFRpbWVyQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUnVu
TG9vcFRpbWVyQ0YuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDY5NDE5NDE2
RUFBRkY4MDAyNEUxNDYgLyogU2NoZWR1bGVQYWlyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNjaGVkdWxlUGFpci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MzIxLDYgKzMzNiw3IEBACiAJCTE0Njk0MTlBMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5l
ZFBvb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0b2RyYWluZWRQb29s
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0Njk0MTlCMTZFQUIxMEEwMDI0RTE0
NiAvKiBBdXRvZHJhaW5lZFBvb2xNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBBdXRvZHJhaW5lZFBvb2xNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTE0OUVGMTYyMTZCQkZFMEQwMDBBNDMzMSAvKiBUcmlTdGF0ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBUcmlTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxNEM4Mjc5NzE4RkRENzM0MDBFMTgwMEMgLyogbWJtYWxsb2MueGNjb25maWcgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gbWJtYWxsb2MueGNjb25maWc7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0RjNCMEY2MTVFNDVFNDYwMDIxMDA2OSAvKiBTYXR1cmF0
ZWRBcml0aG1ldGljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNhdHVyYXRl
ZEFyaXRobWV0aWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUExRDhCOUIxNzMx
ODZDRTAwMTQxREE0IC8qIEZ1bmN0aW9uRGlzcGF0Y2hlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGdW5jdGlvbkRpc3BhdGNoZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMUExRDhCOUQxNzMxODc5ODAwMTQxREE0IC8qIEZ1bmN0aW9uRGlzcGF0Y2hlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGdW5jdGlvbkRpc3BhdGNo
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTU5LDYgKzU3NSwxNiBAQAog
LyogRW5kIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhGcmFtZXdv
cmtzQnVpbGRQaGFzZSBzZWN0aW9uICovCisJCTE0NDdBRUJCMThGQ0U1NjkwMEIzRDdGRiAvKiBG
cmFtZXdvcmtzICovID0geworCQkJaXNhID0gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2U7CisJCQli
dWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkJMTQ0N0FFQ0Ix
OEZDRTVCOTAwQjNEN0ZGIC8qIGxpYmljdWNvcmUuZHlsaWIgaW4gRnJhbWV3b3JrcyAqLywKKwkJ
CQkxNDQ3QUVDNzE4RkNFNTgwMDBCM0Q3RkYgLyogbGliV1RGLmEgaW4gRnJhbWV3b3JrcyAqLywK
KwkJCQkxNDQ3QUVDNjE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFtZXdvcmsgaW4g
RnJhbWV3b3JrcyAqLywKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKKwkJfTsKIAkJNUQyNDdCNUYxNDY4OUI4NjAwRTc4Qjc2IC8qIEZyYW1ld29ya3Mg
Ki8gPSB7CiAJCQlpc2EgPSBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9u
TWFzayA9IDIxNDc0ODM2NDc7CkBAIC01OTgsNiArNjI0LDggQEAKIAkJNUQyNDdCNTcxNDY4OUI4
NjAwRTc4Qjc2ID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkx
NDQ3QUVDQTE4RkNFNUI5MDBCM0Q3RkYgLyogbGliaWN1Y29yZS5keWxpYiAqLywKKwkJCQkxNDQ3
QUVDNTE4RkNFNTc3MDBCM0Q3RkYgLyogRm91bmRhdGlvbi5mcmFtZXdvcmsgKi8sCiAJCQkJNUQy
NDdCNkQxNDY4OUM0NzAwRTc4Qjc2IC8qIENvbmZpZ3VyYXRpb25zICovLAogCQkJCTE0MDIyRjNG
MThGNUMzRTUwMDdGRjBFQiAvKiBMaWJyYXJpZXMgKi8sCiAJCQkJNUQyNDdCNjMxNDY4OUI4NjAw
RTc4Qjc2IC8qIFByb2R1Y3RzICovLApAQCAtNjA5LDYgKzYzNyw3IEBACiAJCQlpc2EgPSBQQlhH
cm91cDsKIAkJCWNoaWxkcmVuID0gKAogCQkJCTVEMjQ3QjYyMTQ2ODlCODYwMEU3OEI3NiAvKiBs
aWJXVEYuYSAqLywKKwkJCQkxNDQ3QUVCRTE4RkNFNTY5MDBCM0Q3RkYgLyogbGlibWJtYWxsb2Mu
ZHlsaWIgKi8sCiAJCQkpOwogCQkJbmFtZSA9IFByb2R1Y3RzOwogCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKQEAgLTYyMCw2ICs2NDksNyBAQAogCQkJCTY1NDFDQUY0MTYzMERCMjYwMDZEMERF
QyAvKiBDb3B5V1RGSGVhZGVycy54Y2NvbmZpZyAqLywKIAkJCQk1RDI0N0I3MDE0Njg5QzQ3MDBF
NzhCNzYgLyogRGVidWdSZWxlYXNlLnhjY29uZmlnICovLAogCQkJCTQ0REVFNzRBMTUyMjc0QkIw
MEM2RUMzNyAvKiBpT1MueGNjb25maWcgKi8sCisJCQkJMTRDODI3OTcxOEZERDczNDAwRTE4MDBD
IC8qIG1ibWFsbG9jLnhjY29uZmlnICovLAogCQkJCTVEMjQ3QjczMTQ2ODlDNDcwMEU3OEI3NiAv
KiBXVEYueGNjb25maWcgKi8sCiAJCQkpOwogCQkJcGF0aCA9IENvbmZpZ3VyYXRpb25zOwpAQCAt
NzQ2LDYgKzc3Niw3IEBACiAJCQkJQTcwREEwODMxNzk5RjA0RDAwNTI5QTlCIC8qIExpc3REdW1w
LmggKi8sCiAJCQkJQThBNDcyQzExNTFBODI1QTAwNDEyM0ZGIC8qIExpc3RIYXNoU2V0LmggKi8s
CiAJCQkJQThBNDcyQzMxNTFBODI1QTAwNDEyM0ZGIC8qIExvY2tlci5oICovLAorCQkJCTE0NDdB
RUM4MThGQ0U1OTQwMEIzRDdGRiAvKiBtYm1hbGxvYy5jcHAgKi8sCiAJCQkJQThBNDcyQ0ExNTFB
ODI1QjAwNDEyM0ZGIC8qIE1ENS5jcHAgKi8sCiAJCQkJQThBNDcyQ0IxNTFBODI1QjAwNDEyM0ZG
IC8qIE1ENS5oICovLAogCQkJCUE4QTQ3MkM2MTUxQTgyNUEwMDQxMjNGRiAvKiBNYWluVGhyZWFk
LmNwcCAqLywKQEAgLTk2Niw2ICs5OTcsMTMgQEAKIC8qIEVuZCBQQlhHcm91cCBzZWN0aW9uICov
CiAKIC8qIEJlZ2luIFBCWEhlYWRlcnNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KKwkJMTQ0N0FFQkMx
OEZDRTU2OTAwQjNEN0ZGIC8qIEhlYWRlcnMgKi8gPSB7CisJCQlpc2EgPSBQQlhIZWFkZXJzQnVp
bGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgK
KwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJfTsK
IAkJNUQyNDdCNjAxNDY4OUI4NjAwRTc4Qjc2IC8qIEhlYWRlcnMgKi8gPSB7CiAJCQlpc2EgPSBQ
QlhIZWFkZXJzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CkBA
IC0xMTUyLDYgKzExOTAsMjQgQEAKIC8qIEVuZCBQQlhIZWFkZXJzQnVpbGRQaGFzZSBzZWN0aW9u
ICovCiAKIC8qIEJlZ2luIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovCisJCTE0NDdBRUJEMThG
Q0U1NjkwMEIzRDdGRiAvKiBtYm1hbGxvYyAqLyA9IHsKKwkJCWlzYSA9IFBCWE5hdGl2ZVRhcmdl
dDsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAxNDQ3QUVDMjE4RkNFNTY5MDBCM0Q3RkYg
LyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIm1ibWFsbG9j
IiAqLzsKKwkJCWJ1aWxkUGhhc2VzID0gKAorCQkJCTE0NDdBRUJBMThGQ0U1NjkwMEIzRDdGRiAv
KiBTb3VyY2VzICovLAorCQkJCTE0NDdBRUJCMThGQ0U1NjkwMEIzRDdGRiAvKiBGcmFtZXdvcmtz
ICovLAorCQkJCTE0NDdBRUJDMThGQ0U1NjkwMEIzRDdGRiAvKiBIZWFkZXJzICovLAorCQkJKTsK
KwkJCWJ1aWxkUnVsZXMgPSAoCisJCQkpOworCQkJZGVwZW5kZW5jaWVzID0gKAorCQkJCTE0NDdB
RUM0MThGQ0U1NzAwMEIzRDdGRiAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovLAorCQkJKTsKKwkJ
CW5hbWUgPSBtYm1hbGxvYzsKKwkJCXByb2R1Y3ROYW1lID0gbWJtYWxsb2M7CisJCQlwcm9kdWN0
UmVmZXJlbmNlID0gMTQ0N0FFQkUxOEZDRTU2OTAwQjNEN0ZGIC8qIGxpYm1ibWFsbG9jLmR5bGli
ICovOworCQkJcHJvZHVjdFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5saWJyYXJ5LmR5
bmFtaWMiOworCQl9OwogCQk1RDI0N0I2MTE0Njg5Qjg2MDBFNzhCNzYgLyogV1RGICovID0gewog
CQkJaXNhID0gUEJYTmF0aXZlVGFyZ2V0OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDVE
MjQ3QjY2MTQ2ODlCODYwMEU3OEI3NiAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBC
WE5hdGl2ZVRhcmdldCAiV1RGIiAqLzsKQEAgLTExOTIsNiArMTI0OCw3IEBACiAJCQl0YXJnZXRz
ID0gKAogCQkJCTVEMjQ3QjYxMTQ2ODlCODYwMEU3OEI3NiAvKiBXVEYgKi8sCiAJCQkJNjVBRkEx
NkYxNjMwQjk3NzAwM0Q3MjNDIC8qIENvcHkgV1RGIEhlYWRlcnMgKi8sCisJCQkJMTQ0N0FFQkQx
OEZDRTU2OTAwQjNEN0ZGIC8qIG1ibWFsbG9jICovLAogCQkJKTsKIAkJfTsKIC8qIEVuZCBQQlhQ
cm9qZWN0IHNlY3Rpb24gKi8KQEAgLTEyMTQsNiArMTI3MSwxNCBAQAogLyogRW5kIFBCWFNoZWxs
U2NyaXB0QnVpbGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWFNvdXJjZXNCdWlsZFBo
YXNlIHNlY3Rpb24gKi8KKwkJMTQ0N0FFQkExOEZDRTU2OTAwQjNEN0ZGIC8qIFNvdXJjZXMgKi8g
PSB7CisJCQlpc2EgPSBQQlhTb3VyY2VzQnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9
IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCQkxNDQ3QUVDOTE4RkNFNTk0MDBCM0Q3RkYg
LyogbWJtYWxsb2MuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRlcGxv
eW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAJCTVEMjQ3QjVFMTQ2ODlCODYwMEU3OEI3
NiAvKiBTb3VyY2VzICovID0gewogCQkJaXNhID0gUEJYU291cmNlc0J1aWxkUGhhc2U7CiAJCQli
dWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwpAQCAtMTMwMiw2ICsxMzY3LDExIEBACiAvKiBF
bmQgUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhUYXJnZXRE
ZXBlbmRlbmN5IHNlY3Rpb24gKi8KKwkJMTQ0N0FFQzQxOEZDRTU3MDAwQjNEN0ZGIC8qIFBCWFRh
cmdldERlcGVuZGVuY3kgKi8gPSB7CisJCQlpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OworCQkJ
dGFyZ2V0ID0gNUQyNDdCNjExNDY4OUI4NjAwRTc4Qjc2IC8qIFdURiAqLzsKKwkJCXRhcmdldFBy
b3h5ID0gMTQ0N0FFQzMxOEZDRTU3MDAwQjNEN0ZGIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAq
LzsKKwkJfTsKIAkJNjVBRkEyOEUxNjMwQjk5RTAwM0Q3MjNDIC8qIFBCWFRhcmdldERlcGVuZGVu
Y3kgKi8gPSB7CiAJCQlpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OwogCQkJdGFyZ2V0ID0gNjVB
RkExNkYxNjMwQjk3NzAwM0Q3MjNDIC8qIENvcHkgV1RGIEhlYWRlcnMgKi87CkBAIC0xMzEwLDYg
KzEzODAsMjcgQEAKIC8qIEVuZCBQQlhUYXJnZXREZXBlbmRlbmN5IHNlY3Rpb24gKi8KIAogLyog
QmVnaW4gWENCdWlsZENvbmZpZ3VyYXRpb24gc2VjdGlvbiAqLworCQkxNDQ3QUVCRjE4RkNFNTY5
MDBCM0Q3RkYgLyogRGVidWcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsK
KwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gMTRDODI3OTcxOEZERDczNDAwRTE4MDBD
IC8qIG1ibWFsbG9jLnhjY29uZmlnICovOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCX07CisJ
CQluYW1lID0gRGVidWc7CisJCX07CisJCTE0NDdBRUMwMThGQ0U1NjkwMEIzRDdGRiAvKiBSZWxl
YXNlICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29uZmln
dXJhdGlvblJlZmVyZW5jZSA9IDE0QzgyNzk3MThGREQ3MzQwMEUxODAwQyAvKiBtYm1hbGxvYy54
Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQl9OworCQkJbmFtZSA9IFJlbGVh
c2U7CisJCX07CisJCTE0NDdBRUMxMThGQ0U1NjkwMEIzRDdGRiAvKiBQcm9kdWN0aW9uICovID0g
eworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29uZmlndXJhdGlvblJl
ZmVyZW5jZSA9IDE0QzgyNzk3MThGREQ3MzQwMEUxODAwQyAvKiBtYm1hbGxvYy54Y2NvbmZpZyAq
LzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQl9OworCQkJbmFtZSA9IFByb2R1Y3Rpb247CisJ
CX07CiAJCTVEMjQ3QjY0MTQ2ODlCODYwMEU3OEI3NiAvKiBEZWJ1ZyAqLyA9IHsKIAkJCWlzYSA9
IFhDQnVpbGRDb25maWd1cmF0aW9uOwogCQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSA1
RDI0N0I3MDE0Njg5QzQ3MDBFNzhCNzYgLyogRGVidWdSZWxlYXNlLnhjY29uZmlnICovOwpAQCAt
MTM4Myw2ICsxNDc0LDE2IEBACiAvKiBFbmQgWENCdWlsZENvbmZpZ3VyYXRpb24gc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBYQ0NvbmZpZ3VyYXRpb25MaXN0IHNlY3Rpb24gKi8KKwkJMTQ0N0FFQzIx
OEZDRTU2OTAwQjNEN0ZGIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZl
VGFyZ2V0ICJtYm1hbGxvYyIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0Owor
CQkJYnVpbGRDb25maWd1cmF0aW9ucyA9ICgKKwkJCQkxNDQ3QUVCRjE4RkNFNTY5MDBCM0Q3RkYg
LyogRGVidWcgKi8sCisJCQkJMTQ0N0FFQzAxOEZDRTU2OTAwQjNEN0ZGIC8qIFJlbGVhc2UgKi8s
CisJCQkJMTQ0N0FFQzExOEZDRTU2OTAwQjNEN0ZGIC8qIFByb2R1Y3Rpb24gKi8sCisJCQkpOwor
CQkJZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVsdENvbmZpZ3Vy
YXRpb25OYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKIAkJNUQyNDdCNUMxNDY4OUI4NjAwRTc4Qjc2
IC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiV1RGIiAqLyA9IHsK
IAkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CiAJCQlidWlsZENvbmZpZ3VyYXRpb25zID0g
KApJbmRleDogU291cmNlL1dURi93dGYvbWJtYWxsb2MuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XVEYvd3RmL21i
bWFsbG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDU4IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJGYXN0TWFsbG9jLmgiCisKKyNkZWZpbmUgRVhQT1JUIF9fYXR0cmlidXRlX18oKHZp
c2liaWxpdHkoImRlZmF1bHQiKSkpCisKK2V4dGVybiAiQyIgeworCitFWFBPUlQgdm9pZCogbWJt
YWxsb2Moc2l6ZV90KTsKK0VYUE9SVCB2b2lkIG1iZnJlZSh2b2lkKiwgc2l6ZV90KTsKK0VYUE9S
VCB2b2lkKiBtYnJlYWxsb2Modm9pZCosIHNpemVfdCwgc2l6ZV90KTsKK0VYUE9SVCB2b2lkIG1i
c2NhdmVuZ2UoKTsKKyAgICAKK3ZvaWQqIG1ibWFsbG9jKHNpemVfdCBzaXplKQoreworICAgIHJl
dHVybiBXVEY6OmZhc3RNYWxsb2Moc2l6ZSk7Cit9CisKK3ZvaWQgbWJmcmVlKHZvaWQqIHAsIHNp
emVfdCkKK3sKKyAgICByZXR1cm4gV1RGOjpmYXN0RnJlZShwKTsKK30KKwordm9pZCogbWJyZWFs
bG9jKHZvaWQqIHAsIHNpemVfdCwgc2l6ZV90IHNpemUpCit7CisgICAgcmV0dXJuIFdURjo6ZmFz
dFJlYWxsb2MocCwgc2l6ZSk7Cit9CisKK3ZvaWQgbWJzY2F2ZW5nZSgpCit7CisgICAgV1RGOjpy
ZWxlYXNlRmFzdE1hbGxvY0ZyZWVNZW1vcnkoKTsKK30KKyAgICAKK30gLy8gZXh0ZXJuICJDIgo=
</data>
<flag name="review"
          id="253764"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>