<?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>43861</bug_id>
          
          <creation_ts>2010-08-11 10:36:45 -0700</creation_ts>
          <short_desc>Fix issues in test results server related to times data type and test item insertion</short_desc>
          <delta_ts>2010-08-27 18:38:03 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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="Victor Wang">victorw</reporter>
          <assigned_to name="Victor Wang">victorw</assigned_to>
          <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>263330</commentid>
    <comment_count>0</comment_count>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-11 10:36:45 -0700</bug_when>
    <thetext>Two issues in json results merging in test results server:
1. times should be int not string.
2. when inserting a new test item, if there is an older item (but not the most recent one) whose value is same as the new one to insert, the old one should NOT be removed. This is what the json_results_generator.py does. The current test results server removes the old one, which is wrong. Not sure where I got the impression that the old data with dupe type should be remove, need to fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263337</commentid>
    <comment_count>1</comment_count>
      <attachid>64134</attachid>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-11 10:46:04 -0700</bug_when>
    <thetext>Created attachment 64134
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263342</commentid>
    <comment_count>2</comment_count>
      <attachid>64134</attachid>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-11 10:58:40 -0700</bug_when>
    <thetext>Comment on attachment 64134
Proposed Patch

The test results and times also need to be normalized after merging: prune tests where all runs pass, truncate all test items to max number of builds etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263485</commentid>
    <comment_count>3</comment_count>
      <attachid>64170</attachid>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-11 15:40:46 -0700</bug_when>
    <thetext>Created attachment 64170
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265658</commentid>
    <comment_count>4</comment_count>
      <attachid>64170</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-08-17 11:17:28 -0700</bug_when>
    <thetext>Comment on attachment 64170
Proposed Patch

WebKitTools/TestResultServer/model/jsonresults.py:47
 +  JSON_RESULTS_MAX_BUILDS = 750
FYI, we changed this number to 1500. See http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py#L63.

WebKitTools/TestResultServer/model/jsonresults.py:282
 +             (is_all_pass and max_time &lt;= JSON_RESULTS_MIN_TIME)):
I think this should be a strick less-than.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265667</commentid>
    <comment_count>5</comment_count>
      <attachid>64611</attachid>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-17 11:30:19 -0700</bug_when>
    <thetext>Created attachment 64611
Update per comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265668</commentid>
    <comment_count>6</comment_count>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-17 11:30:54 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 64170 [details])
&gt; WebKitTools/TestResultServer/model/jsonresults.py:47
&gt;  +  JSON_RESULTS_MAX_BUILDS = 750
&gt; FYI, we changed this number to 1500. See http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py#L63.
done

&gt; 
&gt; WebKitTools/TestResultServer/model/jsonresults.py:282
&gt;  +             (is_all_pass and max_time &lt;= JSON_RESULTS_MIN_TIME)):
&gt; I think this should be a strick less-than.
done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265677</commentid>
    <comment_count>7</comment_count>
    <who name="Victor Wang">victorw</who>
    <bug_when>2010-08-17 11:49:10 -0700</bug_when>
    <thetext>Committed r65527: &lt;http://trac.webkit.org/changeset/65527&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>270880</commentid>
    <comment_count>8</comment_count>
      <attachid>64611</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-08-27 18:38:03 -0700</bug_when>
    <thetext>Comment on attachment 64611
Update per comments

Removing the review flag since this is committed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64134</attachid>
            <date>2010-08-11 10:46:04 -0700</date>
            <delta_ts>2010-08-11 10:58:39 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>item_insert.patch</filename>
            <type>text/plain</type>
            <size>10954</size>
            <attacher name="Victor Wang">victorw</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDY1MTYzKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTAtMDgtMTEgIFZpY3RvciBXYW5nICA8dmlj
dG9yd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHRoZSB0aW1lcyBkYXRhIHR5cGUgYW5kIHRlc3QgaXRlbSBpbnNlcnRp
b24gaW4gdGVzdCByZXN1bHRzIHNlcnZlcjoKKyAgICAgICAgMS4gdGltZXMgc2hvdWxkIGJlIGlu
dCBub3Qgc3RyaW5nLgorICAgICAgICAyLiB3aGVuIGluc2VydGluZyBhIG5ldyB0ZXN0IGl0ZW0s
IHNob3VsZCBrZWVwIG9sZCBkYXRhIHJlZ2FyZGxlc3MKKyAgICAgICAgICAgd2hldGhlciBvciBu
b3QgdGhleSBoYXZlIHNhbWUgaXRlbSB0eXBlIHdpdGggbmV3IG9uZS4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM4NjEKKworICAgICAgICAqIFRl
c3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHMucHk6CisgICAgICAgICogVGVzdFJlc3Vs
dFNlcnZlci9tb2RlbC9qc29ucmVzdWx0c191bml0dGVzdC5weToKKwogMjAxMC0wOC0xMSAgQW50
b25pbyBHb21lcyAgPHRvbmlraXRvb0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IFNpbW9uIEhhdXNtYW5uLgpJbmRleDogV2ViS2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2Rl
bC9qc29ucmVzdWx0cy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9UZXN0UmVzdWx0U2Vy
dmVyL21vZGVsL2pzb25yZXN1bHRzLnB5CShyZXZpc2lvbiA2NTE2MykKKysrIFdlYktpdFRvb2xz
L1Rlc3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHMucHkJKHdvcmtpbmcgY29weSkKQEAg
LTIxOSw3ICsyMTksNyBAQCBjbGFzcyBKc29uUmVzdWx0cyhvYmplY3QpOgogICAgICAgICAgICAg
ICAgICAgICB0aW1lcyA9IGluY3JlbWVudGFsX3Rlc3RbSlNPTl9SRVNVTFRTX1RJTUVTXQogICAg
ICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdHMgPSBbWzEsICJQ
Il1dCi0gICAgICAgICAgICAgICAgICAgIHRpbWVzID0gW1sxLCAiMCJdXQorICAgICAgICAgICAg
ICAgICAgICB0aW1lcyA9IFtbMSwgMF1dCiAKICAgICAgICAgICAgICAgICBjbHMuX2luc2VydF9p
dGVtX3J1bl9sZW5ndGhfZW5jb2RlZCgKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0cywgYWdn
cmVnYXRlZF90ZXN0W0pTT05fUkVTVUxUU19SRVNVTFRTXSkKQEAgLTI0MywxNCArMjQzLDYgQEAg
Y2xhc3MgSnNvblJlc3VsdHMob2JqZWN0KToKICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVkX2l0
ZW1bMF1bMF0gPSBtaW4oCiAgICAgICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfaXRlbVswXVsw
XSArIGl0ZW1bMF0sIEpTT05fUkVTVUxUU19NQVhfQlVJTERTKQogICAgICAgICAgICAgZWxzZToK
LSAgICAgICAgICAgICAgICAjIFRoZSB0ZXN0IGl0ZW0gdmFsdWVzIG5lZWQgdG8gYmUgc3VtbWVk
IGZyb20gY29udGludW91cyBydW5zLgotICAgICAgICAgICAgICAgICMgSWYgdGhlcmUgaXMgYW4g
b2xkZXIgaXRlbSAobm90IG1vc3QgcmVjZW50IG9uZSkgd2hvc2UgdmFsdWUgaXMKLSAgICAgICAg
ICAgICAgICAjIHNhbWUgYXMgdGhlIG9uZSB0byBpbnNlcnQsIHRoZW4gd2Ugc2hvdWxkIHJlbW92
ZSB0aGUgb2xkIGl0ZW0KLSAgICAgICAgICAgICAgICAjIGZyb20gYWdncmVnYXRlZCBsaXN0Lgot
ICAgICAgICAgICAgICAgIGZvciBpIGluIHJldmVyc2VkKHJhbmdlKDEsIGxlbihhZ2dyZWdhdGVk
X2l0ZW0pKSk6Ci0gICAgICAgICAgICAgICAgICAgIGlmIGl0ZW1bMV0gPT0gYWdncmVnYXRlZF9p
dGVtW2ldWzFdOgotICAgICAgICAgICAgICAgICAgICAgICAgYWdncmVnYXRlZF9pdGVtLnBvcChp
KQotCiAgICAgICAgICAgICAgICAgYWdncmVnYXRlZF9pdGVtLmluc2VydCgwLCBpdGVtKQogCiAg
ICAgQGNsYXNzbWV0aG9kCkluZGV4OiBXZWJLaXRUb29scy9UZXN0UmVzdWx0U2VydmVyL21vZGVs
L2pzb25yZXN1bHRzX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1Rlc3RS
ZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHNfdW5pdHRlc3QucHkJKHJldmlzaW9uIDY1MTYz
KQorKysgV2ViS2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2RlbC9qc29ucmVzdWx0c191bml0
dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtMTI3LDcgKzEyNyw3IEBAIGNsYXNzIEpzb25SZXN1
bHRzVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSkKICAgICAgICAgIyBOb3RoaW5nIHRvIG1lcmdlLgog
ICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3Vs
dHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIs
ICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwi
LCAiWzIwMCxcIlBcIl0iLCAiWzIwMCwwXSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFs
IHJlc3VsdHMKICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICAjIEV4cGVjdCBubyBtZXJn
ZSBoYXBwZW5zLgpAQCAtMTM3LDcgKzEzNyw3IEBAIGNsYXNzIEpzb25SZXN1bHRzVGVzdCh1bml0
dGVzdC5UZXN0Q2FzZSkKICAgICAgICAgIyBOb3RoaW5nIHRvIG1lcmdlLgogICAgICAgICBzZWxm
Ll90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAg
ICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwi
XSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBc
Il0iLCAiWzIwMCwwXSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKICAg
ICAgICAgICAgIChbXSwgW10pLAogICAgICAgICAgICAgIyBFeHBlY3RlZCBubyBtZXJnZSBoYXBw
ZW5zLgpAQCAtMTQ5LDkgKzE0OSw5IEBAIGNsYXNzIEpzb25SZXN1bHRzVGVzdCh1bml0dGVzdC5U
ZXN0Q2FzZSkKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCiAgICAgICAgICAgICBO
b25lLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAgICAoWyIy
IiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0pLAor
ICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsy
MDAsMF0iXV0pLAogICAgICAgICAgICAgIyBFeHBlY3RlZCByZXN1bHRzCi0gICAgICAgICAgICAo
WyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0p
KQorICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwg
IlsyMDAsMF0iXV0pKQogCiAgICAgICAgICMgU2luZ2xlIHRlc3QgZm9yIHNpbmdsZSBydW4uCiAg
ICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cyBoYXMgdGhlIGxhdGVzdCBidWlsZCBhbmQgc2Ft
ZSB0ZXN0IHJlc3VsdHMgZm9yCkBAIC0xNjAsMTEgKzE2MCwxMSBAQCBjbGFzcyBKc29uUmVzdWx0
c1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpCiAgICAgICAgICMgb2YgcnVucyBmb3IgIlAiICgyMDAg
KyAxKSB0byBnZXQgbWVyZ2VkIHJlc3VsdHMuCiAgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCiAg
ICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMiIsICIxIl0s
IFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1dKSwKKyAgICAgICAg
ICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLDBdIl1d
KSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyJd
LCBbWyIwMDEuaHRtbCIsICJbMSxcIlBcIl0iLCAiWzEsXCIwXCJdIl1dKSwKKyAgICAgICAgICAg
IChbIjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJQXCJdIiwgIlsxLDBdIl1dKSwKICAgICAgICAg
ICAgICMgRXhwZWN0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1si
MDAxLmh0bWwiLCAiWzIwMSxcIlBcIl0iLCAiWzIwMSxcIjBcIl0iXV0pKQorICAgICAgICAgICAg
KFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMSxcIlBcIl0iLCAiWzIwMSwwXSJd
XSkpCiAKICAgICAgICAgIyBTaW5nbGUgdGVzdCBmb3Igc2luZ2xlIHJ1bi4KICAgICAgICAgIyBJ
bmNyZW1lbnRhbCByZXN1bHRzIGhhcyB0aGUgbGF0ZXN0IGJ1aWxkIGJ1dCBkaWZmZXJlbnQgdGVz
dCByZXN1bHRzCkBAIC0xNzIsNzIgKzE3Miw2OSBAQCBjbGFzcyBKc29uUmVzdWx0c1Rlc3QodW5p
dHRlc3QuVGVzdENhc2UpCiAgICAgICAgICMgSW5zZXJ0IHRoZSBpbmNyZW1lbnRhbCByZXN1bHRz
IGF0IHRoZSBmaXJzdCBwbGFjZS4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAg
ICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsi
MiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsMF0iXV0pLAogICAg
ICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIl0sIFtbIjAw
MS5odG1sIiwgIlsxLCBcIklcIl0iLCAiWzEsXCIxXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjMi
XSwgW1siMDAxLmh0bWwiLCAiWzEsIFwiSVwiXSIsICJbMSwxXSJdXSksCiAgICAgICAgICAgICAj
IEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5o
dG1sIiwgIlsxLFwiSVwiXSxbMjAwLFwiUFwiXSIsICJbMSxcIjFcIl0sWzIwMCxcIjBcIl0iXV0p
KQorICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJJXCJd
LFsyMDAsXCJQXCJdIiwgIlsxLDFdLFsyMDAsMF0iXV0pKQogCiAgICAgICAgICMgU2luZ2xlIHRl
c3QgZm9yIHNpbmdsZSBydW4uCiAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cyBoYXMgdGhl
IGxhdGVzdCBidWlsZCBidXQgZGlmZmVyZW50IHRlc3QgcmVzdWx0cwogICAgICAgICAjIGZvciB0
aGF0IHJ1bi4KLSAgICAgICAgIyBUaGUgdGVzdCAicmVzdWx0cyIgYW5kICJ0aW1lcyIgbmVlZCB0
byBiZSBjb250aW51b3VzLCBzbyB0aGUgb2xkCi0gICAgICAgICMgWzEwLCJJIl0gcmVzdWx0IHNo
b3VsZCBiZSBkcm9wcGVkIGJlY2F1c2UgYSBuZXcgcmVzdWx0IG9mIHNhbWUgdHlwZSBbMSwiSSJd
Ci0gICAgICAgICMgaXMgaW5zZXJ0ZWQgaW4gZnJvbnQgb2YgWzIwMCwiUCJdLgogICAgICAgICBz
ZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAg
ICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSxbMTAsXCJJXCJd
IiwgIlsyMDAsXCIwXCJdLFsxMCxcIjFcIl0iXV0pLAorICAgICAgICAgICAgKFsiMiIsICIxIl0s
IFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdLFsxMCxcIklcIl0iLCAiWzIwMCwwXSxbMTAsMV0i
XV0pLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAgICAoWyIz
Il0sIFtbIjAwMS5odG1sIiwgIlsxLFwiSVwiXSIsICJbMSxcIjFcIl0iXV0pLAorICAgICAgICAg
ICAgKFsiMyJdLCBbWyIwMDEuaHRtbCIsICJbMSxcIklcIl0iLCAiWzEsMV0iXV0pLAogICAgICAg
ICAgICAgIyBFeHBlY3RlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBb
WyIwMDEuaHRtbCIsICJbMSxcIklcIl0sWzIwMCxcIlBcIl0iLCAiWzEsXCIxXCJdLFsyMDAsXCIw
XCJdIl1dKSkKKyAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsx
LFwiSVwiXSxbMjAwLFwiUFwiXSxbMTAsXCJJXCJdIiwgIlsxLDFdLFsyMDAsMF0sWzEwLDFdIl1d
KSkKIAogICAgICAgICAjIE11bHRpcGxlIHRlc3RzIGZvciBzaW5nbGUgcnVuLgogICAgICAgICAj
IEFsbCB0ZXN0cyBoYXZlIGluY3JlbWVudGFsIHVwZGF0ZXMuCiAgICAgICAgIHNlbGYuX3Rlc3Rf
bWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsi
MiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl0sIFsi
MDAyLmh0bWwiLCAiWzEwMCxcIklcIl0iLCAiWzEwMCxcIjFcIl0iXV0pLAorICAgICAgICAgICAg
KFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsMF0iXSwgWyIw
MDIuaHRtbCIsICJbMTAwLFwiSVwiXSIsICJbMTAwLDFdIl1dKSwKICAgICAgICAgICAgICMgSW5j
cmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyJdLCBbWyIwMDEuaHRtbCIsICJbMSxc
IlBcIl0iLCAiWzEsXCIwXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLFwiMVwi
XSJdXSksCisgICAgICAgICAgICAoWyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiUFwiXSIsICJb
MSwwXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiSVwiXSIsICJbMSwxXSJdXSksCiAgICAgICAgICAg
ICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAw
MS5odG1sIiwgIlsyMDEsXCJQXCJdIiwgIlsyMDEsXCIwXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEw
MSxcIklcIl0iLCAiWzEwMSxcIjFcIl0iXV0pKQorICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEi
XSwgW1siMDAxLmh0bWwiLCAiWzIwMSxcIlBcIl0iLCAiWzIwMSwwXSJdLCBbIjAwMi5odG1sIiwg
IlsxMDEsXCJJXCJdIiwgIlsxMDEsMV0iXV0pKQogCiAgICAgICAgICMgTXVsdGlwbGUgdGVzdHMg
Zm9yIHNpbmdsZSBydW4uCiAgICAgICAgICMgTm90IGFsbCB0ZXN0cyBoYXZlIHVwZGF0ZS4KICAg
ICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRz
Ci0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAi
WzIwMCxcIjBcIl0iXSwgWyIwMDIuaHRtbCIsICJbMTAwLFwiSVwiXSIsICJbMTAwLFwiMVwiXSJd
LCBbIjAwMy5odG1sIiwgIlsxMCxcIkZcIl0iLCAiWzEwLFwiMFwiXSJdXSksCisgICAgICAgICAg
ICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCwwXSJdLCBb
IjAwMi5odG1sIiwgIlsxMDAsXCJJXCJdIiwgIlsxMDAsMV0iXSwgWyIwMDMuaHRtbCIsICJbMTAs
XCJGXCJdIiwgIlsxMCwwXSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMK
LSAgICAgICAgICAgIChbIjMiXSwgW1siMDAyLmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLFwiMVwi
XSJdXSksCisgICAgICAgICAgICAoWyIzIl0sIFtbIjAwMi5odG1sIiwgIlsxLFwiSVwiXSIsICJb
MSwxXSJdXSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChb
IjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDEsXCJQXCJdIiwgIlsyMDEsXCIwXCJd
Il0sIFsiMDAyLmh0bWwiLCAiWzEwMSxcIklcIl0iLCAiWzEwMSxcIjFcIl0iXSwgWyIwMDMuaHRt
bCIsICJbMSxcIlBcIl0sWzEwLFwiRlwiXSIsICJbMTEsXCIwXCJdIl1dKSkKKyAgICAgICAgICAg
IChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDEsXCJQXCJdIiwgIlsyMDEsMF0i
XSwgWyIwMDIuaHRtbCIsICJbMTAxLFwiSVwiXSIsICJbMTAxLDFdIl0sIFsiMDAzLmh0bWwiLCAi
WzEsXCJQXCJdLFsxMCxcIkZcIl0iLCAiWzExLDBdIl1dKSkKIAogICAgICAgICAjIFNpbmdsZSB0
ZXN0IGZvciBtdWx0aXBsZSBydW5zLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAogICAgICAg
ICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIw
MDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAo
WyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCwwXSJdXSksCiAg
ICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQiLCAiMyJd
LCBbWyIwMDEuaHRtbCIsICJbMiwgXCJJXCJdIiwgIlsyLFwiMlwiXSJdXSksCisgICAgICAgICAg
ICAoWyI0IiwgIjMiXSwgW1siMDAxLmh0bWwiLCAiWzIsIFwiSVwiXSIsICJbMiwyXSJdXSksCiAg
ICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQiLCAiMyIsICIy
IiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsyLFwiMlwi
XSxbMjAwLFwiMFwiXSJdXSkpCisgICAgICAgICAgICAoWyI0IiwgIjMiLCAiMiIsICIxIl0sIFtb
IjAwMS5odG1sIiwgIlsyLFwiSVwiXSxbMjAwLFwiUFwiXSIsICJbMiwyXSxbMjAwLDBdIl1dKSkK
IAogICAgICAgICAjIE11bHRpcGxlIHRlc3RzIGZvciBtdWx0aXBsZSBydW5zLgogICAgICAgICBz
ZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAg
ICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwi
MFwiXSJdLCBbIjAwMi5odG1sIiwgIlsxMCxcIlpcIl0iLCAiWzEwLFwiMFwiXSJdXSksCisgICAg
ICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCww
XSJdLCBbIjAwMi5odG1sIiwgIlsxMCxcIlpcIl0iLCAiWzEwLDBdIl1dKSwKICAgICAgICAgICAg
ICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiNCIsICIzIl0sIFtbIjAwMS5o
dG1sIiwgIlsyLCBcIklcIl0iLCAiWzIsXCIyXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEsXCJDXCJd
IiwgIlsxLFwiMVwiXSJdXSksCisgICAgICAgICAgICAoWyI0IiwgIjMiXSwgW1siMDAxLmh0bWwi
LCAiWzIsIFwiSVwiXSIsICJbMiwyXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiQ1wiXSIsICJbMSwx
XSJdXSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQi
LCAiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJQXCJdIiwg
IlsyLFwiMlwiXSxbMjAwLFwiMFwiXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiQ1wiXSxbMTAsXCJa
XCJdIiwgIlsxLFwiMVwiXSxbMTAsXCIwXCJdIl1dKSkKKyAgICAgICAgICAgIChbIjQiLCAiMyIs
ICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsyLDJd
LFsyMDAsMF0iXSwgWyIwMDIuaHRtbCIsICJbMSxcIkNcIl0sWzEwLFwiWlwiXSIsICJbMSwxXSxb
MTAsMF0iXV0pKQogCiAgICAgICAgICMgVGVzdCB0aGUgYnVpbGQgaW4gaW5jcmVtZW50YWwgcmVz
dWx0cyBpcyBvbGRlciB0aGFuIHRoZSBtb3N0IHJlY2VudAogICAgICAgICAjIGJ1aWxkIGluIGFn
Z3JlZ2F0ZWQgcmVzdWx0cy4KICAgICAgICAgIyBUaGUgaW5jcmVtZW50YWwgcmVzdWx0cyBzaG91
bGQgYmUgZHJvcHBlZCBhbmQgbm8gbWVyZ2UgaGFwcGVucy4KICAgICAgICAgc2VsZi5fdGVzdF9t
ZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIz
IiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0pLAor
ICAgICAgICAgICAgKFsiMyIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsy
MDAsMF0iXV0pLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAg
ICAoWyIyIl0sIFtbIjAwMS5odG1sIiwgIlsxLCBcIlBcIl0iLCAiWzEsXCIwXCJdIl1dKSwKKyAg
ICAgICAgICAgIChbIjIiXSwgW1siMDAxLmh0bWwiLCAiWzEsIFwiUFwiXSIsICJbMSwwXSJdXSks
CiAgICAgICAgICAgICAjIEV4cGVjdGVkIG5vIG1lcmdlIGhhcHBlbnMuCiAgICAgICAgICAgICBO
b25lKQogCkBAIC0yNDYsOSArMjQzLDkgQEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0KHVuaXR0ZXN0
LlRlc3RDYXNlKQogICAgICAgICAjIFRoZSBpbmNyZW1lbnRhbCByZXN1bHRzIHNob3VsZCBiZSBk
cm9wcGVkIGFuZCBubyBtZXJnZSBoYXBwZW5zLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAog
ICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJd
LCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAg
ICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCwwXSJd
XSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMi
LCAiMiJdLCBbWyIwMDEuaHRtbCIsICJbMiwgXCJQXCJdIiwgIlsyLFwiMFwiXSJdXSksCisgICAg
ICAgICAgICAoWyIzIiwgIjIiXSwgW1siMDAxLmh0bWwiLCAiWzIsIFwiUFwiXSIsICJbMiwwXSJd
XSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIG5vIG1lcmdlIGhhcHBlbnMuCiAgICAgICAgICAg
ICBOb25lKQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64170</attachid>
            <date>2010-08-11 15:40:46 -0700</date>
            <delta_ts>2010-08-17 11:30:19 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>item_insert.patch</filename>
            <type>text/plain</type>
            <size>16631</size>
            <attacher name="Victor Wang">victorw</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDY1MTkxKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDgtMTEgIFZpY3RvciBXYW5nICA8dmlj
dG9yd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXBkYXRlIHRlc3QgcmVzdWx0cyBzZXJ2ZXI6CisgICAgICAgIDEuIE5vcm1h
bGl6ZSB0ZXN0IHJlc3VsdHMgYW5kIHRpbWVzIGFmdGVyIG1lcmdpbmcgKHBydW5lIHRlc3RzIHdo
ZXJlCisgICAgICAgICAgIGFsbCBydW5zIHBhc3Mgb3IgZG8gbm90IGhhdmUgZGF0YSwgdHJ1bmNh
dGUgYWxsIHRlc3QgaXRlbXMgdG8gbWF4CisgICAgICAgICAgIG51bWJlciBvZiBidWlsZHMpCisg
ICAgICAgIDIuIHRpbWVzIHNob3VsZCBiZSBpbnQgbm90IHN0cmluZy4KKyAgICAgICAgMy4gd2hl
biBpbnNlcnRpbmcgYSBuZXcgdGVzdCBpdGVtLCBzaG91bGQga2VlcCBvbGQgZGF0YSByZWdhcmRs
ZXNzCisgICAgICAgICAgIHdoZXRoZXIgb3Igbm90IHRoZXkgaGF2ZSBzYW1lIGl0ZW0gdHlwZSB3
aXRoIG5ldyBvbmUuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQzODYxCisKKyAgICAgICAgKiBUZXN0UmVzdWx0U2VydmVyL21vZGVsL2pzb25yZXN1
bHRzLnB5OgorICAgICAgICAqIFRlc3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHNfdW5p
dHRlc3QucHk6CisKIDIwMTAtMDgtMTEgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEFkZGluZyBteXNlbGYgYXMgYSByZXZpZXdlci4KSW5kZXg6IFdl
YktpdFRvb2xzL1Rlc3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHMucHkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2RlbC9qc29ucmVzdWx0cy5weQko
cmV2aXNpb24gNjUxOTApCisrKyBXZWJLaXRUb29scy9UZXN0UmVzdWx0U2VydmVyL21vZGVsL2pz
b25yZXN1bHRzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw5IEBAIEpTT05fUkVTVUxU
U19CVUlMRF9OVU1CRVJTID0gImJ1aWxkTnVtYmUKIEpTT05fUkVTVUxUU19URVNUUyA9ICJ0ZXN0
cyIKIEpTT05fUkVTVUxUU19SRVNVTFRTID0gInJlc3VsdHMiCiBKU09OX1JFU1VMVFNfVElNRVMg
PSAidGltZXMiCitKU09OX1JFU1VMVFNfUEFTUyA9ICJQIgorSlNPTl9SRVNVTFRTX05PX0RBVEEg
PSAiTiIKK0pTT05fUkVTVUxUU19NSU5fVElNRSA9IDEKIEpTT05fUkVTVUxUU19WRVJTSU9OID0g
MwogSlNPTl9SRVNVTFRTX01BWF9CVUlMRFMgPSA3NTAKIApAQCAtMjE4LDEzICsyMjEsMTQgQEAg
Y2xhc3MgSnNvblJlc3VsdHMob2JqZWN0KToKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0cyA9
IGluY3JlbWVudGFsX3Rlc3RbSlNPTl9SRVNVTFRTX1JFU1VMVFNdCiAgICAgICAgICAgICAgICAg
ICAgIHRpbWVzID0gaW5jcmVtZW50YWxfdGVzdFtKU09OX1JFU1VMVFNfVElNRVNdCiAgICAgICAg
ICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0cyA9IFtbMSwgIlAiXV0K
LSAgICAgICAgICAgICAgICAgICAgdGltZXMgPSBbWzEsICIwIl1dCisgICAgICAgICAgICAgICAg
ICAgIHJlc3VsdHMgPSBbWzEsIEpTT05fUkVTVUxUU19QQVNTXV0KKyAgICAgICAgICAgICAgICAg
ICAgdGltZXMgPSBbWzEsIDBdXQogCiAgICAgICAgICAgICAgICAgY2xzLl9pbnNlcnRfaXRlbV9y
dW5fbGVuZ3RoX2VuY29kZWQoCiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdHMsIGFnZ3JlZ2F0
ZWRfdGVzdFtKU09OX1JFU1VMVFNfUkVTVUxUU10pCiAgICAgICAgICAgICAgICAgY2xzLl9pbnNl
cnRfaXRlbV9ydW5fbGVuZ3RoX2VuY29kZWQoCiAgICAgICAgICAgICAgICAgICAgIHRpbWVzLCBh
Z2dyZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1RJTUVTXSkKKyAgICAgICAgICAgICAgICBjbHMu
X25vcm1hbGl6ZV9yZXN1bHRzX2pzb24odGVzdF9uYW1lLCBhZ2dyZWdhdGVkX2pzb24pCiAgICAg
ICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfanNvblt0ZXN0X25hbWVd
ID0gaW5jcmVtZW50YWxfanNvblt0ZXN0X25hbWVdCiAKQEAgLTI0MywxNyArMjQ3LDY5IEBAIGNs
YXNzIEpzb25SZXN1bHRzKG9iamVjdCk6CiAgICAgICAgICAgICAgICAgYWdncmVnYXRlZF9pdGVt
WzBdWzBdID0gbWluKAogICAgICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVkX2l0ZW1bMF1bMF0g
KyBpdGVtWzBdLCBKU09OX1JFU1VMVFNfTUFYX0JVSUxEUykKICAgICAgICAgICAgIGVsc2U6Ci0g
ICAgICAgICAgICAgICAgIyBUaGUgdGVzdCBpdGVtIHZhbHVlcyBuZWVkIHRvIGJlIHN1bW1lZCBm
cm9tIGNvbnRpbnVvdXMgcnVucy4KLSAgICAgICAgICAgICAgICAjIElmIHRoZXJlIGlzIGFuIG9s
ZGVyIGl0ZW0gKG5vdCBtb3N0IHJlY2VudCBvbmUpIHdob3NlIHZhbHVlIGlzCi0gICAgICAgICAg
ICAgICAgIyBzYW1lIGFzIHRoZSBvbmUgdG8gaW5zZXJ0LCB0aGVuIHdlIHNob3VsZCByZW1vdmUg
dGhlIG9sZCBpdGVtCi0gICAgICAgICAgICAgICAgIyBmcm9tIGFnZ3JlZ2F0ZWQgbGlzdC4KLSAg
ICAgICAgICAgICAgICBmb3IgaSBpbiByZXZlcnNlZChyYW5nZSgxLCBsZW4oYWdncmVnYXRlZF9p
dGVtKSkpOgotICAgICAgICAgICAgICAgICAgICBpZiBpdGVtWzFdID09IGFnZ3JlZ2F0ZWRfaXRl
bVtpXVsxXToKLSAgICAgICAgICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfaXRlbS5wb3AoaSkK
LQogICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfaXRlbS5pbnNlcnQoMCwgaXRlbSkKIAogICAg
IEBjbGFzc21ldGhvZAorICAgIGRlZiBfbm9ybWFsaXplX3Jlc3VsdHNfanNvbihjbHMsIHRlc3Rf
bmFtZSwgYWdncmVnYXRlZF9qc29uKToKKyAgICAgICAgIiIiIFBydW5lIHRlc3RzIHdoZXJlIGFs
bCBydW5zIHBhc3Mgb3IgdGVzdHMgdGhhdCBubyBsb25nZXIgZXhpc3QgYW5kCisgICAgICAgIHRy
dW5jYXRlIGFsbCByZXN1bHRzIHRvIEpTT05fUkVTVUxUU19NQVhfQlVJTERTLgorCisgICAgICAg
IEFyZ3M6CisgICAgICAgICAgdGVzdF9uYW1lOiBOYW1lIG9mIHRoZSB0ZXN0LgorICAgICAgICAg
IGFnZ3JlZ2F0ZWRfanNvbjogVGhlIEpTT04gb2JqZWN0IHdpdGggYWxsIHRoZSB0ZXN0IHJlc3Vs
dHMgZm9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzIGJ1aWxkZXIuCisgICAgICAg
ICIiIgorCisgICAgICAgIGFnZ3JlZ2F0ZWRfdGVzdCA9IGFnZ3JlZ2F0ZWRfanNvblt0ZXN0X25h
bWVdCisgICAgICAgIGFnZ3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfUkVTVUxUU10gPSBcCisg
ICAgICAgICAgICBjbHMuX3JlbW92ZV9pdGVtc19vdmVyX21heF9udW1iZXJfb2ZfYnVpbGRzKAor
ICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfUkVTVUxUU10pCisg
ICAgICAgIGFnZ3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfVElNRVNdID0gXAorICAgICAgICAg
ICAgY2xzLl9yZW1vdmVfaXRlbXNfb3Zlcl9tYXhfbnVtYmVyX29mX2J1aWxkcygKKyAgICAgICAg
ICAgICAgICBhZ2dyZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1RJTUVTXSkKKworICAgICAgICBp
c19hbGxfcGFzcyA9IGNscy5faXNfcmVzdWx0c19hbGxfb2ZfdHlwZSgKKyAgICAgICAgICAgIGFn
Z3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfUkVTVUxUU10sIEpTT05fUkVTVUxUU19QQVNTKQor
ICAgICAgICBpc19hbGxfbm9fZGF0YSA9IGNscy5faXNfcmVzdWx0c19hbGxfb2ZfdHlwZSgKKyAg
ICAgICAgICAgIGFnZ3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfUkVTVUxUU10sIEpTT05fUkVT
VUxUU19OT19EQVRBKQorCisgICAgICAgIG1heF90aW1lID0gbWF4KAorICAgICAgICAgICAgW3Rp
bWVbMV0gZm9yIHRpbWUgaW4gYWdncmVnYXRlZF90ZXN0W0pTT05fUkVTVUxUU19USU1FU11dKQor
ICAgICAgICAjIFJlbW92ZSBhbGwgcGFzc2VzL25vLWRhdGEgZnJvbSB0aGUgcmVzdWx0cyB0byBy
ZWR1Y2Ugbm9pc2UgYW5kCisgICAgICAgICMgZmlsZXNpemUuIElmIGEgdGVzdCBwYXNzZXMgZXZl
cnkgcnVuLCBidXQKKyAgICAgICAgIyB0YWtlcyA+IEpTT05fUkVTVUxUU19NSU5fVElNRSB0byBy
dW4sIGRvbid0IHRocm93IGF3YXkgdGhlIGRhdGEuCisgICAgICAgIGlmIChpc19hbGxfbm9fZGF0
YSBvcgorICAgICAgICAgICAoaXNfYWxsX3Bhc3MgYW5kIG1heF90aW1lIDw9IEpTT05fUkVTVUxU
U19NSU5fVElNRSkpOgorICAgICAgICAgICAgZGVsIGFnZ3JlZ2F0ZWRfanNvblt0ZXN0X25hbWVd
CisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgX3JlbW92ZV9pdGVtc19vdmVyX21heF9udW1i
ZXJfb2ZfYnVpbGRzKGNscywgZW5jb2RlZF9saXN0KToKKyAgICAgICAgIiIiUmVtb3ZlcyBpdGVt
cyBmcm9tIHRoZSBydW4tbGVuZ3RoIGVuY29kZWQgbGlzdCBhZnRlciB0aGUgZmluYWwKKyAgICAg
ICAgaXRlbSB0aGF0IGV4Y2VlZHMgdGhlIG1heCBudW1iZXIgb2YgYnVpbGRzIHRvIHRyYWNrLgor
CisgICAgICAgIEFyZ3M6CisgICAgICAgICAgZW5jb2RlZF9yZXN1bHRzOiBydW4tbGVuZ3RoIGVu
Y29kZWQgcmVzdWx0cy4gQW4gYXJyYXkgb2YgYXJyYXlzLCBlLmcuCisgICAgICAgICAgICAgIFtb
MywnQSddLFsxLCdRJ11dIGVuY29kZXMgQUFBUS4KKyAgICAgICAgIiIiCisgICAgICAgIG51bV9i
dWlsZHMgPSAwCisgICAgICAgIGluZGV4ID0gMAorICAgICAgICBmb3IgcmVzdWx0IGluIGVuY29k
ZWRfbGlzdDoKKyAgICAgICAgICAgIG51bV9idWlsZHMgPSBudW1fYnVpbGRzICsgcmVzdWx0WzBd
CisgICAgICAgICAgICBpbmRleCA9IGluZGV4ICsgMQorICAgICAgICAgICAgaWYgbnVtX2J1aWxk
cyA+IEpTT05fUkVTVUxUU19NQVhfQlVJTERTOgorICAgICAgICAgICAgICAgIHJldHVybiBlbmNv
ZGVkX2xpc3RbOmluZGV4XQorCisgICAgICAgIHJldHVybiBlbmNvZGVkX2xpc3QKKworICAgIEBj
bGFzc21ldGhvZAorICAgIGRlZiBfaXNfcmVzdWx0c19hbGxfb2ZfdHlwZShjbHMsIHJlc3VsdHMs
IHR5cGUpOgorICAgICAgICAiIiJSZXR1cm5zIHdoZXRoZXIgYWxsIHRoZSByZXN1bHRzIGFyZSBv
ZiB0aGUgZ2l2ZW4gdHlwZQorICAgICAgICAoZS5nLiBhbGwgcGFzc2VzKS4KKyAgICAgICAgIiIi
CisKKyAgICAgICAgcmV0dXJuIGxlbihyZXN1bHRzKSA9PSAxIGFuZCByZXN1bHRzWzBdWzFdID09
IHR5cGUKKworICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBfY2hlY2tfanNvbihjbHMsIGJ1aWxk
ZXIsIGpzb24pOgogICAgICAgICAiIiJDaGVjayB3aGV0aGVyIHRoZSBnaXZlbiBqc29uIGlzIHZh
bGlkLgogCkluZGV4OiBXZWJLaXRUb29scy9UZXN0UmVzdWx0U2VydmVyL21vZGVsL2pzb25yZXN1
bHRzX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1Rlc3RSZXN1bHRTZXJ2
ZXIvbW9kZWwvanNvbnJlc3VsdHNfdW5pdHRlc3QucHkJKHJldmlzaW9uIDY1MTkwKQorKysgV2Vi
S2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2RlbC9qc29ucmVzdWx0c191bml0dGVzdC5weQko
d29ya2luZyBjb3B5KQpAQCAtMjYsNiArMjYsNyBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KIAoraW1wb3J0IGpzb25yZXN1bHRzCiBpbXBvcnQgdW5pdHRlc3QKIAogZnJvbSBqc29u
cmVzdWx0cyBpbXBvcnQgSnNvblJlc3VsdHMKQEAgLTEyNyw3ICsxMjgsNyBAQCBjbGFzcyBKc29u
UmVzdWx0c1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpCiAgICAgICAgICMgTm90aGluZyB0byBtZXJn
ZS4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCBy
ZXN1bHRzCi0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBc
Il0iLCAiWzIwMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5o
dG1sIiwgIlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0iXV0pLAogICAgICAgICAgICAgIyBJbmNyZW1l
bnRhbCByZXN1bHRzCiAgICAgICAgICAgICBOb25lLAogICAgICAgICAgICAgIyBFeHBlY3Qgbm8g
bWVyZ2UgaGFwcGVucy4KQEAgLTEzNyw3ICsxMzgsNyBAQCBjbGFzcyBKc29uUmVzdWx0c1Rlc3Qo
dW5pdHRlc3QuVGVzdENhc2UpCiAgICAgICAgICMgTm90aGluZyB0byBtZXJnZS4KICAgICAgICAg
c2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAg
ICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxc
IjBcIl0iXV0pLAorICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAs
XCJGXCJdIiwgIlsyMDAsMF0iXV0pLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRz
CiAgICAgICAgICAgICAoW10sIFtdKSwKICAgICAgICAgICAgICMgRXhwZWN0ZWQgbm8gbWVyZ2Ug
aGFwcGVucy4KQEAgLTE0OSw5ICsxNTAsOSBAQCBjbGFzcyBKc29uUmVzdWx0c1Rlc3QodW5pdHRl
c3QuVGVzdENhc2UpCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwogICAgICAgICAg
ICAgTm9uZSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAg
KFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1d
KSwKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIs
ICJbMjAwLDBdIl1dKSwKICAgICAgICAgICAgICMgRXhwZWN0ZWQgcmVzdWx0cwotICAgICAgICAg
ICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJd
Il1dKSkKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwi
XSIsICJbMjAwLDBdIl1dKSkKIAogICAgICAgICAjIFNpbmdsZSB0ZXN0IGZvciBzaW5nbGUgcnVu
LgogICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMgaGFzIHRoZSBsYXRlc3QgYnVpbGQgYW5k
IHNhbWUgdGVzdCByZXN1bHRzIGZvcgpAQCAtMTYwLDExICsxNjEsMTEgQEAgY2xhc3MgSnNvblJl
c3VsdHNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKQogICAgICAgICAjIG9mIHJ1bnMgZm9yICJQIiAo
MjAwICsgMSkgdG8gZ2V0IG1lcmdlZCByZXN1bHRzLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdl
KAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAi
MSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAg
ICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCww
XSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChb
IjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJQXCJdIiwgIlsxLFwiMFwiXSJdXSksCisgICAgICAg
ICAgICAoWyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiRlwiXSIsICJbMSwwXSJdXSksCiAgICAg
ICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0s
IFtbIjAwMS5odG1sIiwgIlsyMDEsXCJQXCJdIiwgIlsyMDEsXCIwXCJdIl1dKSkKKyAgICAgICAg
ICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDEsXCJGXCJdIiwgIlsyMDEs
MF0iXV0pKQogCiAgICAgICAgICMgU2luZ2xlIHRlc3QgZm9yIHNpbmdsZSBydW4uCiAgICAgICAg
ICMgSW5jcmVtZW50YWwgcmVzdWx0cyBoYXMgdGhlIGxhdGVzdCBidWlsZCBidXQgZGlmZmVyZW50
IHRlc3QgcmVzdWx0cwpAQCAtMTcyLDcyICsxNzMsNjggQEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0
KHVuaXR0ZXN0LlRlc3RDYXNlKQogICAgICAgICAjIEluc2VydCB0aGUgaW5jcmVtZW50YWwgcmVz
dWx0cyBhdCB0aGUgZmlyc3QgcGxhY2UuCiAgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCiAgICAg
ICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtb
IjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1dKSwKKyAgICAgICAgICAg
IChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJbMjAwLDBdIl1dKSwK
ICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyJdLCBb
WyIwMDEuaHRtbCIsICJbMSwgXCJJXCJdIiwgIlsxLFwiMVwiXSJdXSksCisgICAgICAgICAgICAo
WyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLCBcIklcIl0iLCAiWzEsMV0iXV0pLAogICAgICAgICAg
ICAgIyBFeHBlY3RlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIw
MDEuaHRtbCIsICJbMSxcIklcIl0sWzIwMCxcIlBcIl0iLCAiWzEsXCIxXCJdLFsyMDAsXCIwXCJd
Il1dKSkKKyAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwi
SVwiXSxbMjAwLFwiRlwiXSIsICJbMSwxXSxbMjAwLDBdIl1dKSkKIAogICAgICAgICAjIFNpbmds
ZSB0ZXN0IGZvciBzaW5nbGUgcnVuLgogICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMgaGFz
IHRoZSBsYXRlc3QgYnVpbGQgYnV0IGRpZmZlcmVudCB0ZXN0IHJlc3VsdHMKICAgICAgICAgIyBm
b3IgdGhhdCBydW4uCi0gICAgICAgICMgVGhlIHRlc3QgInJlc3VsdHMiIGFuZCAidGltZXMiIG5l
ZWQgdG8gYmUgY29udGludW91cywgc28gdGhlIG9sZAotICAgICAgICAjIFsxMCwiSSJdIHJlc3Vs
dCBzaG91bGQgYmUgZHJvcHBlZCBiZWNhdXNlIGEgbmV3IHJlc3VsdCBvZiBzYW1lIHR5cGUgWzEs
IkkiXQotICAgICAgICAjIGlzIGluc2VydGVkIGluIGZyb250IG9mIFsyMDAsIlAiXS4KICAgICAg
ICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0g
ICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0sWzEwLFwi
SVwiXSIsICJbMjAwLFwiMFwiXSxbMTAsXCIxXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjIiLCAi
MSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSxbMTAsXCJJXCJdIiwgIlsyMDAsMF0sWzEw
LDFdIl1dKSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAg
KFsiMyJdLCBbWyIwMDEuaHRtbCIsICJbMSxcIklcIl0iLCAiWzEsXCIxXCJdIl1dKSwKKyAgICAg
ICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLDFdIl1dKSwKICAg
ICAgICAgICAgICMgRXhwZWN0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEi
XSwgW1siMDAxLmh0bWwiLCAiWzEsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsxLFwiMVwiXSxbMjAw
LFwiMFwiXSJdXSkpCisgICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIs
ICJbMSxcIklcIl0sWzIwMCxcIkZcIl0sWzEwLFwiSVwiXSIsICJbMSwxXSxbMjAwLDBdLFsxMCwx
XSJdXSkpCiAKICAgICAgICAgIyBNdWx0aXBsZSB0ZXN0cyBmb3Igc2luZ2xlIHJ1bi4KICAgICAg
ICAgIyBBbGwgdGVzdHMgaGF2ZSBpbmNyZW1lbnRhbCB1cGRhdGVzLgogICAgICAgICBzZWxmLl90
ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAg
IChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJd
LCBbIjAwMi5odG1sIiwgIlsxMDAsXCJJXCJdIiwgIlsxMDAsXCIxXCJdIl1dKSwKKyAgICAgICAg
ICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJbMjAwLDBdIl0s
IFsiMDAyLmh0bWwiLCAiWzEwMCxcIklcIl0iLCAiWzEwMCwxXSJdXSksCiAgICAgICAgICAgICAj
IEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwiLCAi
WzEsXCJQXCJdIiwgIlsxLFwiMFwiXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiSVwiXSIsICJbMSxc
IjFcIl0iXV0pLAorICAgICAgICAgICAgKFsiMyJdLCBbWyIwMDEuaHRtbCIsICJbMSxcIkZcIl0i
LCAiWzEsMF0iXSwgWyIwMDIuaHRtbCIsICJbMSxcIklcIl0iLCAiWzEsMV0iXV0pLAogICAgICAg
ICAgICAgIyBFeHBlY3RlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBb
WyIwMDEuaHRtbCIsICJbMjAxLFwiUFwiXSIsICJbMjAxLFwiMFwiXSJdLCBbIjAwMi5odG1sIiwg
IlsxMDEsXCJJXCJdIiwgIlsxMDEsXCIxXCJdIl1dKSkKKyAgICAgICAgICAgIChbIjMiLCAiMiIs
ICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDEsXCJGXCJdIiwgIlsyMDEsMF0iXSwgWyIwMDIuaHRt
bCIsICJbMTAxLFwiSVwiXSIsICJbMTAxLDFdIl1dKSkKIAogICAgICAgICAjIE11bHRpcGxlIHRl
c3RzIGZvciBzaW5nbGUgcnVuLgotICAgICAgICAjIE5vdCBhbGwgdGVzdHMgaGF2ZSB1cGRhdGUu
CiAgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVz
dWx0cwotICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJd
IiwgIlsyMDAsXCIwXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEwMCxcIklcIl0iLCAiWzEwMCxcIjFc
Il0iXSwgWyIwMDMuaHRtbCIsICJbMTAsXCJGXCJdIiwgIlsxMCxcIjBcIl0iXV0pLAorICAgICAg
ICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0i
XSwgWyIwMDIuaHRtbCIsICJbMTAwLFwiSVwiXSIsICJbMTAwLDFdIl1dKSwKICAgICAgICAgICAg
ICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyJdLCBbWyIwMDIuaHRtbCIs
ICJbMSxcIklcIl0iLCAiWzEsXCIxXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjMiXSwgW1siMDAy
Lmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLDFdIl1dKSwKICAgICAgICAgICAgICMgRXhwZWN0ZWQg
cmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIw
MSxcIlBcIl0iLCAiWzIwMSxcIjBcIl0iXSwgWyIwMDIuaHRtbCIsICJbMTAxLFwiSVwiXSIsICJb
MTAxLFwiMVwiXSJdLCBbIjAwMy5odG1sIiwgIlsxLFwiUFwiXSxbMTAsXCJGXCJdIiwgIlsxMSxc
IjBcIl0iXV0pKQorICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAi
WzEsXCJQXCJdLFsyMDAsXCJGXCJdIiwgIlsyMDEsMF0iXSwgWyIwMDIuaHRtbCIsICJbMTAxLFwi
SVwiXSIsICJbMTAxLDFdIl1dKSkKIAogICAgICAgICAjIFNpbmdsZSB0ZXN0IGZvciBtdWx0aXBs
ZSBydW5zLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdh
dGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAw
LFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1si
MDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJdXSksCiAgICAgICAgICAgICAjIElu
Y3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQiLCAiMyJdLCBbWyIwMDEuaHRtbCIs
ICJbMiwgXCJJXCJdIiwgIlsyLFwiMlwiXSJdXSksCisgICAgICAgICAgICAoWyI0IiwgIjMiXSwg
W1siMDAxLmh0bWwiLCAiWzIsIFwiSVwiXSIsICJbMiwyXSJdXSksCiAgICAgICAgICAgICAjIEV4
cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQiLCAiMyIsICIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsyLFwiMlwiXSxbMjAwLFwiMFwiXSJd
XSkpCisgICAgICAgICAgICAoWyI0IiwgIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsy
LFwiSVwiXSxbMjAwLFwiRlwiXSIsICJbMiwyXSxbMjAwLDBdIl1dKSkKIAogICAgICAgICAjIE11
bHRpcGxlIHRlc3RzIGZvciBtdWx0aXBsZSBydW5zLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdl
KAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAi
MSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdLCBbIjAwMi5o
dG1sIiwgIlsxMCxcIlpcIl0iLCAiWzEwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwg
IjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJdLCBbIjAwMi5odG1s
IiwgIlsxMCxcIlpcIl0iLCAiWzEwLDBdIl1dKSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwg
cmVzdWx0cwotICAgICAgICAgICAgKFsiNCIsICIzIl0sIFtbIjAwMS5odG1sIiwgIlsyLCBcIklc
Il0iLCAiWzIsXCIyXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEsXCJDXCJdIiwgIlsxLFwiMVwiXSJd
XSksCisgICAgICAgICAgICAoWyI0IiwgIjMiXSwgW1siMDAxLmh0bWwiLCAiWzIsIFwiSVwiXSIs
ICJbMiwyXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiQ1wiXSIsICJbMSwxXSJdXSksCiAgICAgICAg
ICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjQiLCAiMyIsICIyIiwgIjEi
XSwgW1siMDAxLmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsyLFwiMlwiXSxbMjAw
LFwiMFwiXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiQ1wiXSxbMTAsXCJaXCJdIiwgIlsxLFwiMVwi
XSxbMTAsXCIwXCJdIl1dKSkKKyAgICAgICAgICAgIChbIjQiLCAiMyIsICIyIiwgIjEiXSwgW1si
MDAxLmh0bWwiLCAiWzIsXCJJXCJdLFsyMDAsXCJGXCJdIiwgIlsyLDJdLFsyMDAsMF0iXSwgWyIw
MDIuaHRtbCIsICJbMSxcIkNcIl0sWzEwLFwiWlwiXSIsICJbMSwxXSxbMTAsMF0iXV0pKQogCiAg
ICAgICAgICMgVGVzdCB0aGUgYnVpbGQgaW4gaW5jcmVtZW50YWwgcmVzdWx0cyBpcyBvbGRlciB0
aGFuIHRoZSBtb3N0IHJlY2VudAogICAgICAgICAjIGJ1aWxkIGluIGFnZ3JlZ2F0ZWQgcmVzdWx0
cy4KICAgICAgICAgIyBUaGUgaW5jcmVtZW50YWwgcmVzdWx0cyBzaG91bGQgYmUgZHJvcHBlZCBh
bmQgbm8gbWVyZ2UgaGFwcGVucy4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAg
ICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsi
MyIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0iXV0pLAogICAg
ICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAgICAoWyIyIl0sIFtbIjAw
MS5odG1sIiwgIlsxLCBcIlBcIl0iLCAiWzEsXCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjIi
XSwgW1siMDAxLmh0bWwiLCAiWzEsIFwiRlwiXSIsICJbMSwwXSJdXSksCiAgICAgICAgICAgICAj
IEV4cGVjdGVkIG5vIG1lcmdlIGhhcHBlbnMuCiAgICAgICAgICAgICBOb25lKQogCkBAIC0yNDYs
MTEgKzI0Myw0OSBAQCBjbGFzcyBKc29uUmVzdWx0c1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpCiAg
ICAgICAgICMgVGhlIGluY3JlbWVudGFsIHJlc3VsdHMgc2hvdWxkIGJlIGRyb3BwZWQgYW5kIG5v
IG1lcmdlIGhhcHBlbnMuCiAgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCiAgICAgICAgICAgICAj
IEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1s
IiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjIiLCAi
MSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJbMjAwLDBdIl1dKSwKICAgICAgICAg
ICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIl0sIFtbIjAw
MS5odG1sIiwgIlsyLCBcIlBcIl0iLCAiWzIsXCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjMi
LCAiMiJdLCBbWyIwMDEuaHRtbCIsICJbMiwgXCJGXCJdIiwgIlsyLDBdIl1dKSwKICAgICAgICAg
ICAgICMgRXhwZWN0ZWQgbm8gbWVyZ2UgaGFwcGVucy4KICAgICAgICAgICAgIE5vbmUpCiAKKyAg
ICAgICAgIyBSZW1vdmUgdGVzdCB3aGVyZSB0aGVyZSBpcyBubyBkYXRhIGluIGFsbCBydW5zLgor
ICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAorICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3Vs
dHMKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiTlwiXSIs
ICJbMjAwLDBdIl0sIFsiMDAyLmh0bWwiLCAiWzEwLFwiRlwiXSIsICJbMTAsMF0iXV0pLAorICAg
ICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCisgICAgICAgICAgICAoWyIzIl0sIFtbIjAw
MS5odG1sIiwgIlsxLFwiTlwiXSIsICJbMSwwXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiUFwiXSIs
ICJbMSwwXSJdXSksCisgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKKyAgICAgICAgICAg
IChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMi5odG1sIiwgIlsxLFwiUFwiXSxbMTAsXCJGXCJdIiwg
IlsxMSwwXSJdXSkpCisKKyAgICAgICAgIyBSZW1vdmUgdGVzdCB3aGVyZSBhbGwgcnVuIHBhc3Mg
YW5kIG1heCBydW5uaW5nIHRpbWUgPD0gMSBzZWNvbmRzCisgICAgICAgIHNlbGYuX3Rlc3RfbWVy
Z2UoCisgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cworICAgICAgICAgICAgKFsiMiIs
ICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsMF0iXSwgWyIwMDIuaHRt
bCIsICJbMTAsXCJGXCJdIiwgIlsxMCwwXSJdXSksCisgICAgICAgICAgICAjIEluY3JlbWVudGFs
IHJlc3VsdHMKKyAgICAgICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJQXCJdIiwg
IlsxLDFdIl0sIFsiMDAyLmh0bWwiLCAiWzEsXCJQXCJdIiwgIlsxLDBdIl1dKSwKKyAgICAgICAg
ICAgICMgRXhwZWN0ZWQgcmVzdWx0cworICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1si
MDAyLmh0bWwiLCAiWzEsXCJQXCJdLFsxMCxcIkZcIl0iLCAiWzExLDBdIl1dKSkKKworICAgICAg
ICAjIERvIG5vdCByZW1vdmUgdGVzdCB3aGVyZSBhbGwgcnVuIHBhc3MgYnV0IG1heCBydW5uaW5n
IHRpbWUgPiAxIHNlY29uZHMKKyAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKKyAgICAgICAgICAg
ICMgQWdncmVnYXRlZCByZXN1bHRzCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0
bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCwwXSJdLCBbIjAwMi5odG1sIiwgIlsxMCxcIkZcIl0i
LCAiWzEwLDBdIl1dKSwKKyAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cworICAgICAg
ICAgICAgKFsiMyJdLCBbWyIwMDEuaHRtbCIsICJbMSxcIlBcIl0iLCAiWzEsMl0iXSwgWyIwMDIu
aHRtbCIsICJbMSxcIlBcIl0iLCAiWzEsMF0iXV0pLAorICAgICAgICAgICAgIyBFeHBlY3RlZCBy
ZXN1bHRzCisgICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAx
LFwiUFwiXSIsICJbMSwyXSxbMjAwLDBdIl0sIFsiMDAyLmh0bWwiLCAiWzEsXCJQXCJdLFsxMCxc
IkZcIl0iLCAiWzExLDBdIl1dKSkKKworICAgICAgICAjIFJlbW92ZSBpdGVtcyBmcm9tIHRlc3Qg
cmVzdWx0cyBhbmQgdGltZXMgdGhhdCBleGNlZWRzIHRoZSBtYXggbnVtYmVyCisgICAgICAgICMg
b2YgYnVpbGRzIHRvIHRyYWNrLgorICAgICAgICBtYXhfYnVpbGRzID0gc3RyKGpzb25yZXN1bHRz
LkpTT05fUkVTVUxUU19NQVhfQlVJTERTKQorICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAorICAg
ICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBb
WyIwMDEuaHRtbCIsICJbIiArIG1heF9idWlsZHMgKyAiLFwiRlwiXSxbMSxcIklcIl0iLCAiWyIg
KyBtYXhfYnVpbGRzICsgIiwwXSxbMSwxXSJdXSksCisgICAgICAgICAgICAjIEluY3JlbWVudGFs
IHJlc3VsdHMKKyAgICAgICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJUXCJdIiwg
IlsxLDFdIl1dKSwKKyAgICAgICAgICAgICMgRXhwZWN0ZWQgcmVzdWx0cworICAgICAgICAgICAg
KFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJUXCJdLFsiICsgbWF4X2J1aWxk
cyArICIsXCJGXCJdIiwgIlsxLDFdLFsiICsgbWF4X2J1aWxkcyArICIsMF0iXV0pKQorCiBpZiBf
X25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHVuaXR0ZXN0Lm1haW4oKQo=
</data>
<flag name="review"
          id="52675"
          type_id="1"
          status="+"
          setter="ojan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64611</attachid>
            <date>2010-08-17 11:30:19 -0700</date>
            <delta_ts>2010-08-27 18:38:03 -0700</delta_ts>
            <desc>Update per comments</desc>
            <filename>item_insert.patch</filename>
            <type>text/plain</type>
            <size>16677</size>
            <attacher name="Victor Wang">victorw</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDY1NTIwKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDgtMTYgIFZpY3RvciBXYW5nICA8dmlj
dG9yd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXBkYXRlIHRlc3QgcmVzdWx0cyBzZXJ2ZXI6CisgICAgICAgIDEuIE5vcm1h
bGl6ZSB0ZXN0IHJlc3VsdHMgYW5kIHRpbWVzIGFmdGVyIG1lcmdpbmcgKHBydW5lIHRlc3RzIHdo
ZXJlCisgICAgICAgICAgIGFsbCBydW5zIHBhc3Mgb3IgZG8gbm90IGhhdmUgZGF0YSwgdHJ1bmNh
dGUgYWxsIHRlc3QgaXRlbXMgdG8gbWF4CisgICAgICAgICAgIG51bWJlciBvZiBidWlsZHMpCisg
ICAgICAgIDIuIHRpbWVzIHNob3VsZCBiZSBpbnQgbm90IHN0cmluZy4KKyAgICAgICAgMy4gd2hl
biBpbnNlcnRpbmcgYSBuZXcgdGVzdCBpdGVtLCBzaG91bGQga2VlcCBvbGQgZGF0YSByZWdhcmRs
ZXNzCisgICAgICAgICAgIHdoZXRoZXIgb3Igbm90IHRoZXkgaGF2ZSBzYW1lIGl0ZW0gdHlwZSB3
aXRoIG5ldyBvbmUuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQzODYxCisKKyAgICAgICAgKiBUZXN0UmVzdWx0U2VydmVyL21vZGVsL2pzb25yZXN1
bHRzLnB5OgorICAgICAgICAqIFRlc3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHNfdW5p
dHRlc3QucHk6CisKIDIwMTAtMDgtMTYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCkluZGV4OiBXZWJLaXRUb29scy9UZXN0UmVz
dWx0U2VydmVyL21vZGVsL2pzb25yZXN1bHRzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xz
L1Rlc3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHMucHkJKHJldmlzaW9uIDY1MTkwKQor
KysgV2ViS2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2RlbC9qc29ucmVzdWx0cy5weQkod29y
a2luZyBjb3B5KQpAQCAtNDAsOCArNDAsMTEgQEAgSlNPTl9SRVNVTFRTX0JVSUxEX05VTUJFUlMg
PSAiYnVpbGROdW1iZQogSlNPTl9SRVNVTFRTX1RFU1RTID0gInRlc3RzIgogSlNPTl9SRVNVTFRT
X1JFU1VMVFMgPSAicmVzdWx0cyIKIEpTT05fUkVTVUxUU19USU1FUyA9ICJ0aW1lcyIKK0pTT05f
UkVTVUxUU19QQVNTID0gIlAiCitKU09OX1JFU1VMVFNfTk9fREFUQSA9ICJOIgorSlNPTl9SRVNV
TFRTX01JTl9USU1FID0gMQogSlNPTl9SRVNVTFRTX1ZFUlNJT04gPSAzCi1KU09OX1JFU1VMVFNf
TUFYX0JVSUxEUyA9IDc1MAorSlNPTl9SRVNVTFRTX01BWF9CVUlMRFMgPSAxNTAwCiAKIAogY2xh
c3MgSnNvblJlc3VsdHMob2JqZWN0KToKQEAgLTIxOCwxMyArMjIxLDE0IEBAIGNsYXNzIEpzb25S
ZXN1bHRzKG9iamVjdCk6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdHMgPSBpbmNyZW1lbnRh
bF90ZXN0W0pTT05fUkVTVUxUU19SRVNVTFRTXQogICAgICAgICAgICAgICAgICAgICB0aW1lcyA9
IGluY3JlbWVudGFsX3Rlc3RbSlNPTl9SRVNVTFRTX1RJTUVTXQogICAgICAgICAgICAgICAgIGVs
c2U6Ci0gICAgICAgICAgICAgICAgICAgIHJlc3VsdHMgPSBbWzEsICJQIl1dCi0gICAgICAgICAg
ICAgICAgICAgIHRpbWVzID0gW1sxLCAiMCJdXQorICAgICAgICAgICAgICAgICAgICByZXN1bHRz
ID0gW1sxLCBKU09OX1JFU1VMVFNfUEFTU11dCisgICAgICAgICAgICAgICAgICAgIHRpbWVzID0g
W1sxLCAwXV0KIAogICAgICAgICAgICAgICAgIGNscy5faW5zZXJ0X2l0ZW1fcnVuX2xlbmd0aF9l
bmNvZGVkKAogICAgICAgICAgICAgICAgICAgICByZXN1bHRzLCBhZ2dyZWdhdGVkX3Rlc3RbSlNP
Tl9SRVNVTFRTX1JFU1VMVFNdKQogICAgICAgICAgICAgICAgIGNscy5faW5zZXJ0X2l0ZW1fcnVu
X2xlbmd0aF9lbmNvZGVkKAogICAgICAgICAgICAgICAgICAgICB0aW1lcywgYWdncmVnYXRlZF90
ZXN0W0pTT05fUkVTVUxUU19USU1FU10pCisgICAgICAgICAgICAgICAgY2xzLl9ub3JtYWxpemVf
cmVzdWx0c19qc29uKHRlc3RfbmFtZSwgYWdncmVnYXRlZF9qc29uKQogICAgICAgICAgICAgZWxz
ZToKICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVkX2pzb25bdGVzdF9uYW1lXSA9IGluY3JlbWVu
dGFsX2pzb25bdGVzdF9uYW1lXQogCkBAIC0yNDMsMTcgKzI0Nyw2OSBAQCBjbGFzcyBKc29uUmVz
dWx0cyhvYmplY3QpOgogICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZWRfaXRlbVswXVswXSA9IG1p
bigKICAgICAgICAgICAgICAgICAgICAgYWdncmVnYXRlZF9pdGVtWzBdWzBdICsgaXRlbVswXSwg
SlNPTl9SRVNVTFRTX01BWF9CVUlMRFMpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAg
ICAgICMgVGhlIHRlc3QgaXRlbSB2YWx1ZXMgbmVlZCB0byBiZSBzdW1tZWQgZnJvbSBjb250aW51
b3VzIHJ1bnMuCi0gICAgICAgICAgICAgICAgIyBJZiB0aGVyZSBpcyBhbiBvbGRlciBpdGVtIChu
b3QgbW9zdCByZWNlbnQgb25lKSB3aG9zZSB2YWx1ZSBpcwotICAgICAgICAgICAgICAgICMgc2Ft
ZSBhcyB0aGUgb25lIHRvIGluc2VydCwgdGhlbiB3ZSBzaG91bGQgcmVtb3ZlIHRoZSBvbGQgaXRl
bQotICAgICAgICAgICAgICAgICMgZnJvbSBhZ2dyZWdhdGVkIGxpc3QuCi0gICAgICAgICAgICAg
ICAgZm9yIGkgaW4gcmV2ZXJzZWQocmFuZ2UoMSwgbGVuKGFnZ3JlZ2F0ZWRfaXRlbSkpKToKLSAg
ICAgICAgICAgICAgICAgICAgaWYgaXRlbVsxXSA9PSBhZ2dyZWdhdGVkX2l0ZW1baV1bMV06Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVkX2l0ZW0ucG9wKGkpCi0KICAgICAgICAg
ICAgICAgICBhZ2dyZWdhdGVkX2l0ZW0uaW5zZXJ0KDAsIGl0ZW0pCiAKICAgICBAY2xhc3NtZXRo
b2QKKyAgICBkZWYgX25vcm1hbGl6ZV9yZXN1bHRzX2pzb24oY2xzLCB0ZXN0X25hbWUsIGFnZ3Jl
Z2F0ZWRfanNvbik6CisgICAgICAgICIiIiBQcnVuZSB0ZXN0cyB3aGVyZSBhbGwgcnVucyBwYXNz
IG9yIHRlc3RzIHRoYXQgbm8gbG9uZ2VyIGV4aXN0IGFuZAorICAgICAgICB0cnVuY2F0ZSBhbGwg
cmVzdWx0cyB0byBKU09OX1JFU1VMVFNfTUFYX0JVSUxEUy4KKworICAgICAgICBBcmdzOgorICAg
ICAgICAgIHRlc3RfbmFtZTogTmFtZSBvZiB0aGUgdGVzdC4KKyAgICAgICAgICBhZ2dyZWdhdGVk
X2pzb246IFRoZSBKU09OIG9iamVjdCB3aXRoIGFsbCB0aGUgdGVzdCByZXN1bHRzIGZvcgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGhpcyBidWlsZGVyLgorICAgICAgICAiIiIKKworICAg
ICAgICBhZ2dyZWdhdGVkX3Rlc3QgPSBhZ2dyZWdhdGVkX2pzb25bdGVzdF9uYW1lXQorICAgICAg
ICBhZ2dyZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1JFU1VMVFNdID0gXAorICAgICAgICAgICAg
Y2xzLl9yZW1vdmVfaXRlbXNfb3Zlcl9tYXhfbnVtYmVyX29mX2J1aWxkcygKKyAgICAgICAgICAg
ICAgICBhZ2dyZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1JFU1VMVFNdKQorICAgICAgICBhZ2dy
ZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1RJTUVTXSA9IFwKKyAgICAgICAgICAgIGNscy5fcmVt
b3ZlX2l0ZW1zX292ZXJfbWF4X251bWJlcl9vZl9idWlsZHMoCisgICAgICAgICAgICAgICAgYWdn
cmVnYXRlZF90ZXN0W0pTT05fUkVTVUxUU19USU1FU10pCisKKyAgICAgICAgaXNfYWxsX3Bhc3Mg
PSBjbHMuX2lzX3Jlc3VsdHNfYWxsX29mX3R5cGUoCisgICAgICAgICAgICBhZ2dyZWdhdGVkX3Rl
c3RbSlNPTl9SRVNVTFRTX1JFU1VMVFNdLCBKU09OX1JFU1VMVFNfUEFTUykKKyAgICAgICAgaXNf
YWxsX25vX2RhdGEgPSBjbHMuX2lzX3Jlc3VsdHNfYWxsX29mX3R5cGUoCisgICAgICAgICAgICBh
Z2dyZWdhdGVkX3Rlc3RbSlNPTl9SRVNVTFRTX1JFU1VMVFNdLCBKU09OX1JFU1VMVFNfTk9fREFU
QSkKKworICAgICAgICBtYXhfdGltZSA9IG1heCgKKyAgICAgICAgICAgIFt0aW1lWzFdIGZvciB0
aW1lIGluIGFnZ3JlZ2F0ZWRfdGVzdFtKU09OX1JFU1VMVFNfVElNRVNdXSkKKyAgICAgICAgIyBS
ZW1vdmUgYWxsIHBhc3Nlcy9uby1kYXRhIGZyb20gdGhlIHJlc3VsdHMgdG8gcmVkdWNlIG5vaXNl
IGFuZAorICAgICAgICAjIGZpbGVzaXplLiBJZiBhIHRlc3QgcGFzc2VzIGV2ZXJ5IHJ1biwgYnV0
CisgICAgICAgICMgdGFrZXMgPj0gSlNPTl9SRVNVTFRTX01JTl9USU1FIHRvIHJ1biwgZG9uJ3Qg
dGhyb3cgYXdheSB0aGUgZGF0YS4KKyAgICAgICAgaWYgKGlzX2FsbF9ub19kYXRhIG9yCisgICAg
ICAgICAgIChpc19hbGxfcGFzcyBhbmQgbWF4X3RpbWUgPCBKU09OX1JFU1VMVFNfTUlOX1RJTUUp
KToKKyAgICAgICAgICAgIGRlbCBhZ2dyZWdhdGVkX2pzb25bdGVzdF9uYW1lXQorCisgICAgQGNs
YXNzbWV0aG9kCisgICAgZGVmIF9yZW1vdmVfaXRlbXNfb3Zlcl9tYXhfbnVtYmVyX29mX2J1aWxk
cyhjbHMsIGVuY29kZWRfbGlzdCk6CisgICAgICAgICIiIlJlbW92ZXMgaXRlbXMgZnJvbSB0aGUg
cnVuLWxlbmd0aCBlbmNvZGVkIGxpc3QgYWZ0ZXIgdGhlIGZpbmFsCisgICAgICAgIGl0ZW0gdGhh
dCBleGNlZWRzIHRoZSBtYXggbnVtYmVyIG9mIGJ1aWxkcyB0byB0cmFjay4KKworICAgICAgICBB
cmdzOgorICAgICAgICAgIGVuY29kZWRfcmVzdWx0czogcnVuLWxlbmd0aCBlbmNvZGVkIHJlc3Vs
dHMuIEFuIGFycmF5IG9mIGFycmF5cywgZS5nLgorICAgICAgICAgICAgICBbWzMsJ0EnXSxbMSwn
USddXSBlbmNvZGVzIEFBQVEuCisgICAgICAgICIiIgorICAgICAgICBudW1fYnVpbGRzID0gMAor
ICAgICAgICBpbmRleCA9IDAKKyAgICAgICAgZm9yIHJlc3VsdCBpbiBlbmNvZGVkX2xpc3Q6Cisg
ICAgICAgICAgICBudW1fYnVpbGRzID0gbnVtX2J1aWxkcyArIHJlc3VsdFswXQorICAgICAgICAg
ICAgaW5kZXggPSBpbmRleCArIDEKKyAgICAgICAgICAgIGlmIG51bV9idWlsZHMgPiBKU09OX1JF
U1VMVFNfTUFYX0JVSUxEUzoKKyAgICAgICAgICAgICAgICByZXR1cm4gZW5jb2RlZF9saXN0Wzpp
bmRleF0KKworICAgICAgICByZXR1cm4gZW5jb2RlZF9saXN0CisKKyAgICBAY2xhc3NtZXRob2QK
KyAgICBkZWYgX2lzX3Jlc3VsdHNfYWxsX29mX3R5cGUoY2xzLCByZXN1bHRzLCB0eXBlKToKKyAg
ICAgICAgIiIiUmV0dXJucyB3aGV0aGVyIGFsbCB0aGUgcmVzdWx0cyBhcmUgb2YgdGhlIGdpdmVu
IHR5cGUKKyAgICAgICAgKGUuZy4gYWxsIHBhc3NlcykuCisgICAgICAgICIiIgorCisgICAgICAg
IHJldHVybiBsZW4ocmVzdWx0cykgPT0gMSBhbmQgcmVzdWx0c1swXVsxXSA9PSB0eXBlCisKKyAg
ICBAY2xhc3NtZXRob2QKICAgICBkZWYgX2NoZWNrX2pzb24oY2xzLCBidWlsZGVyLCBqc29uKToK
ICAgICAgICAgIiIiQ2hlY2sgd2hldGhlciB0aGUgZ2l2ZW4ganNvbiBpcyB2YWxpZC4KIApJbmRl
eDogV2ViS2l0VG9vbHMvVGVzdFJlc3VsdFNlcnZlci9tb2RlbC9qc29ucmVzdWx0c191bml0dGVz
dC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9UZXN0UmVzdWx0U2VydmVyL21vZGVsL2pz
b25yZXN1bHRzX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiA2NTE5MCkKKysrIFdlYktpdFRvb2xzL1Rl
c3RSZXN1bHRTZXJ2ZXIvbW9kZWwvanNvbnJlc3VsdHNfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTI2LDYgKzI2LDcgQEAKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKK2lt
cG9ydCBqc29ucmVzdWx0cwogaW1wb3J0IHVuaXR0ZXN0CiAKIGZyb20ganNvbnJlc3VsdHMgaW1w
b3J0IEpzb25SZXN1bHRzCkBAIC0xMjcsNyArMTI4LDcgQEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0
KHVuaXR0ZXN0LlRlc3RDYXNlKQogICAgICAgICAjIE5vdGhpbmcgdG8gbWVyZ2UuCiAgICAgICAg
IHNlbGYuX3Rlc3RfbWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAg
ICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAs
XCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAw
LFwiRlwiXSIsICJbMjAwLDBdIl1dKSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0
cwogICAgICAgICAgICAgTm9uZSwKICAgICAgICAgICAgICMgRXhwZWN0IG5vIG1lcmdlIGhhcHBl
bnMuCkBAIC0xMzcsNyArMTM4LDcgQEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKQogICAgICAgICAjIE5vdGhpbmcgdG8gbWVyZ2UuCiAgICAgICAgIHNlbGYuX3Rlc3Rf
bWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsi
MiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1dKSwK
KyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJb
MjAwLDBdIl1dKSwKICAgICAgICAgICAgICMgSW5jcmVtZW50YWwgcmVzdWx0cwogICAgICAgICAg
ICAgKFtdLCBbXSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIG5vIG1lcmdlIGhhcHBlbnMuCkBA
IC0xNDksOSArMTUwLDkgQEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNl
KQogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKICAgICAgICAgICAgIE5vbmUsCiAg
ICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJd
LCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAg
ICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJd
XSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAi
MSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSkpCisgICAg
ICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCww
XSJdXSkpCiAKICAgICAgICAgIyBTaW5nbGUgdGVzdCBmb3Igc2luZ2xlIHJ1bi4KICAgICAgICAg
IyBJbmNyZW1lbnRhbCByZXN1bHRzIGhhcyB0aGUgbGF0ZXN0IGJ1aWxkIGFuZCBzYW1lIHRlc3Qg
cmVzdWx0cyBmb3IKQEAgLTE2MCwxMSArMTYxLDExIEBAIGNsYXNzIEpzb25SZXN1bHRzVGVzdCh1
bml0dGVzdC5UZXN0Q2FzZSkKICAgICAgICAgIyBvZiBydW5zIGZvciAiUCIgKDIwMCArIDEpIHRv
IGdldCBtZXJnZWQgcmVzdWx0cy4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAg
ICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsi
MiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0iXV0pLAogICAg
ICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIl0sIFtbIjAw
MS5odG1sIiwgIlsxLFwiUFwiXSIsICJbMSxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsiMyJd
LCBbWyIwMDEuaHRtbCIsICJbMSxcIkZcIl0iLCAiWzEsMF0iXV0pLAogICAgICAgICAgICAgIyBF
eHBlY3RlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIwMDEuaHRt
bCIsICJbMjAxLFwiUFwiXSIsICJbMjAxLFwiMFwiXSJdXSkpCisgICAgICAgICAgICAoWyIzIiwg
IjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAxLFwiRlwiXSIsICJbMjAxLDBdIl1dKSkKIAog
ICAgICAgICAjIFNpbmdsZSB0ZXN0IGZvciBzaW5nbGUgcnVuLgogICAgICAgICAjIEluY3JlbWVu
dGFsIHJlc3VsdHMgaGFzIHRoZSBsYXRlc3QgYnVpbGQgYnV0IGRpZmZlcmVudCB0ZXN0IHJlc3Vs
dHMKQEAgLTE3Miw3MiArMTczLDY4IEBAIGNsYXNzIEpzb25SZXN1bHRzVGVzdCh1bml0dGVzdC5U
ZXN0Q2FzZSkKICAgICAgICAgIyBJbnNlcnQgdGhlIGluY3JlbWVudGFsIHJlc3VsdHMgYXQgdGhl
IGZpcnN0IHBsYWNlLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBB
Z2dyZWdhdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIs
ICJbMjAwLFwiUFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEi
XSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJdXSksCiAgICAgICAgICAg
ICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwi
LCAiWzEsIFwiSVwiXSIsICJbMSxcIjFcIl0iXV0pLAorICAgICAgICAgICAgKFsiMyJdLCBbWyIw
MDEuaHRtbCIsICJbMSwgXCJJXCJdIiwgIlsxLDFdIl1dKSwKICAgICAgICAgICAgICMgRXhwZWN0
ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAi
WzEsXCJJXCJdLFsyMDAsXCJQXCJdIiwgIlsxLFwiMVwiXSxbMjAwLFwiMFwiXSJdXSkpCisgICAg
ICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMSxcIklcIl0sWzIwMCxc
IkZcIl0iLCAiWzEsMV0sWzIwMCwwXSJdXSkpCiAKICAgICAgICAgIyBTaW5nbGUgdGVzdCBmb3Ig
c2luZ2xlIHJ1bi4KICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzIGhhcyB0aGUgbGF0ZXN0
IGJ1aWxkIGJ1dCBkaWZmZXJlbnQgdGVzdCByZXN1bHRzCiAgICAgICAgICMgZm9yIHRoYXQgcnVu
LgotICAgICAgICAjIFRoZSB0ZXN0ICJyZXN1bHRzIiBhbmQgInRpbWVzIiBuZWVkIHRvIGJlIGNv
bnRpbnVvdXMsIHNvIHRoZSBvbGQKLSAgICAgICAgIyBbMTAsIkkiXSByZXN1bHQgc2hvdWxkIGJl
IGRyb3BwZWQgYmVjYXVzZSBhIG5ldyByZXN1bHQgb2Ygc2FtZSB0eXBlIFsxLCJJIl0KLSAgICAg
ICAgIyBpcyBpbnNlcnRlZCBpbiBmcm9udCBvZiBbMjAwLCJQIl0uCiAgICAgICAgIHNlbGYuX3Rl
c3RfbWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3JlZ2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAg
KFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAsXCJQXCJdLFsxMCxcIklcIl0iLCAiWzIw
MCxcIjBcIl0sWzEwLFwiMVwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIkZcIl0sWzEwLFwiSVwiXSIsICJbMjAwLDBdLFsxMCwxXSJdXSksCiAg
ICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiXSwgW1si
MDAxLmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLFwiMVwiXSJdXSksCisgICAgICAgICAgICAoWyIz
Il0sIFtbIjAwMS5odG1sIiwgIlsxLFwiSVwiXSIsICJbMSwxXSJdXSksCiAgICAgICAgICAgICAj
IEV4cGVjdGVkIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5o
dG1sIiwgIlsxLFwiSVwiXSxbMjAwLFwiUFwiXSIsICJbMSxcIjFcIl0sWzIwMCxcIjBcIl0iXV0p
KQorICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJJXCJd
LFsyMDAsXCJGXCJdLFsxMCxcIklcIl0iLCAiWzEsMV0sWzIwMCwwXSxbMTAsMV0iXV0pKQogCiAg
ICAgICAgICMgTXVsdGlwbGUgdGVzdHMgZm9yIHNpbmdsZSBydW4uCiAgICAgICAgICMgQWxsIHRl
c3RzIGhhdmUgaW5jcmVtZW50YWwgdXBkYXRlcy4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgK
ICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIyIiwgIjEi
XSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXSwgWyIwMDIuaHRt
bCIsICJbMTAwLFwiSVwiXSIsICJbMTAwLFwiMVwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwg
IjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJdLCBbIjAwMi5odG1s
IiwgIlsxMDAsXCJJXCJdIiwgIlsxMDAsMV0iXV0pLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRh
bCByZXN1bHRzCi0gICAgICAgICAgICAoWyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiUFwiXSIs
ICJbMSxcIjBcIl0iXSwgWyIwMDIuaHRtbCIsICJbMSxcIklcIl0iLCAiWzEsXCIxXCJdIl1dKSwK
KyAgICAgICAgICAgIChbIjMiXSwgW1siMDAxLmh0bWwiLCAiWzEsXCJGXCJdIiwgIlsxLDBdIl0s
IFsiMDAyLmh0bWwiLCAiWzEsXCJJXCJdIiwgIlsxLDFdIl1dKSwKICAgICAgICAgICAgICMgRXhw
ZWN0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwi
LCAiWzIwMSxcIlBcIl0iLCAiWzIwMSxcIjBcIl0iXSwgWyIwMDIuaHRtbCIsICJbMTAxLFwiSVwi
XSIsICJbMTAxLFwiMVwiXSJdXSkpCisgICAgICAgICAgICAoWyIzIiwgIjIiLCAiMSJdLCBbWyIw
MDEuaHRtbCIsICJbMjAxLFwiRlwiXSIsICJbMjAxLDBdIl0sIFsiMDAyLmh0bWwiLCAiWzEwMSxc
IklcIl0iLCAiWzEwMSwxXSJdXSkpCiAKICAgICAgICAgIyBNdWx0aXBsZSB0ZXN0cyBmb3Igc2lu
Z2xlIHJ1bi4KLSAgICAgICAgIyBOb3QgYWxsIHRlc3RzIGhhdmUgdXBkYXRlLgogICAgICAgICBz
ZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKLSAgICAg
ICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLFwi
MFwiXSJdLCBbIjAwMi5odG1sIiwgIlsxMDAsXCJJXCJdIiwgIlsxMDAsXCIxXCJdIl0sIFsiMDAz
Lmh0bWwiLCAiWzEwLFwiRlwiXSIsICJbMTAsXCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjIi
LCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJbMjAwLDBdIl0sIFsiMDAyLmh0
bWwiLCAiWzEwMCxcIklcIl0iLCAiWzEwMCwxXSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVu
dGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiXSwgW1siMDAyLmh0bWwiLCAiWzEsXCJJXCJd
IiwgIlsxLFwiMVwiXSJdXSksCisgICAgICAgICAgICAoWyIzIl0sIFtbIjAwMi5odG1sIiwgIlsx
LFwiSVwiXSIsICJbMSwxXSJdXSksCiAgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKLSAg
ICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDEsXCJQXCJdIiwg
IlsyMDEsXCIwXCJdIl0sIFsiMDAyLmh0bWwiLCAiWzEwMSxcIklcIl0iLCAiWzEwMSxcIjFcIl0i
XSwgWyIwMDMuaHRtbCIsICJbMSxcIlBcIl0sWzEwLFwiRlwiXSIsICJbMTEsXCIwXCJdIl1dKSkK
KyAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiUFwiXSxb
MjAwLFwiRlwiXSIsICJbMjAxLDBdIl0sIFsiMDAyLmh0bWwiLCAiWzEwMSxcIklcIl0iLCAiWzEw
MSwxXSJdXSkpCiAKICAgICAgICAgIyBTaW5nbGUgdGVzdCBmb3IgbXVsdGlwbGUgcnVucy4KICAg
ICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRz
Ci0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAi
WzIwMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwg
IlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0iXV0pLAogICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCBy
ZXN1bHRzCi0gICAgICAgICAgICAoWyI0IiwgIjMiXSwgW1siMDAxLmh0bWwiLCAiWzIsIFwiSVwi
XSIsICJbMixcIjJcIl0iXV0pLAorICAgICAgICAgICAgKFsiNCIsICIzIl0sIFtbIjAwMS5odG1s
IiwgIlsyLCBcIklcIl0iLCAiWzIsMl0iXV0pLAogICAgICAgICAgICAgIyBFeHBlY3RlZCByZXN1
bHRzCi0gICAgICAgICAgICAoWyI0IiwgIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsy
LFwiSVwiXSxbMjAwLFwiUFwiXSIsICJbMixcIjJcIl0sWzIwMCxcIjBcIl0iXV0pKQorICAgICAg
ICAgICAgKFsiNCIsICIzIiwgIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMixcIklcIl0sWzIw
MCxcIkZcIl0iLCAiWzIsMl0sWzIwMCwwXSJdXSkpCiAKICAgICAgICAgIyBNdWx0aXBsZSB0ZXN0
cyBmb3IgbXVsdGlwbGUgcnVucy4KICAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKICAgICAgICAg
ICAgICMgQWdncmVnYXRlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIlBcIl0iLCAiWzIwMCxcIjBcIl0iXSwgWyIwMDIuaHRtbCIsICJbMTAs
XCJaXCJdIiwgIlsxMCxcIjBcIl0iXV0pLAorICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAw
MS5odG1sIiwgIlsyMDAsXCJGXCJdIiwgIlsyMDAsMF0iXSwgWyIwMDIuaHRtbCIsICJbMTAsXCJa
XCJdIiwgIlsxMCwwXSJdXSksCiAgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKLSAg
ICAgICAgICAgIChbIjQiLCAiMyJdLCBbWyIwMDEuaHRtbCIsICJbMiwgXCJJXCJdIiwgIlsyLFwi
MlwiXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiQ1wiXSIsICJbMSxcIjFcIl0iXV0pLAorICAgICAg
ICAgICAgKFsiNCIsICIzIl0sIFtbIjAwMS5odG1sIiwgIlsyLCBcIklcIl0iLCAiWzIsMl0iXSwg
WyIwMDIuaHRtbCIsICJbMSxcIkNcIl0iLCAiWzEsMV0iXV0pLAogICAgICAgICAgICAgIyBFeHBl
Y3RlZCByZXN1bHRzCi0gICAgICAgICAgICAoWyI0IiwgIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5o
dG1sIiwgIlsyLFwiSVwiXSxbMjAwLFwiUFwiXSIsICJbMixcIjJcIl0sWzIwMCxcIjBcIl0iXSwg
WyIwMDIuaHRtbCIsICJbMSxcIkNcIl0sWzEwLFwiWlwiXSIsICJbMSxcIjFcIl0sWzEwLFwiMFwi
XSJdXSkpCisgICAgICAgICAgICAoWyI0IiwgIjMiLCAiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwg
IlsyLFwiSVwiXSxbMjAwLFwiRlwiXSIsICJbMiwyXSxbMjAwLDBdIl0sIFsiMDAyLmh0bWwiLCAi
WzEsXCJDXCJdLFsxMCxcIlpcIl0iLCAiWzEsMV0sWzEwLDBdIl1dKSkKIAogICAgICAgICAjIFRl
c3QgdGhlIGJ1aWxkIGluIGluY3JlbWVudGFsIHJlc3VsdHMgaXMgb2xkZXIgdGhhbiB0aGUgbW9z
dCByZWNlbnQKICAgICAgICAgIyBidWlsZCBpbiBhZ2dyZWdhdGVkIHJlc3VsdHMuCiAgICAgICAg
ICMgVGhlIGluY3JlbWVudGFsIHJlc3VsdHMgc2hvdWxkIGJlIGRyb3BwZWQgYW5kIG5vIG1lcmdl
IGhhcHBlbnMuCiAgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCiAgICAgICAgICAgICAjIEFnZ3Jl
Z2F0ZWQgcmVzdWx0cwotICAgICAgICAgICAgKFsiMyIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsy
MDAsXCJQXCJdIiwgIlsyMDAsXCIwXCJdIl1dKSwKKyAgICAgICAgICAgIChbIjMiLCAiMSJdLCBb
WyIwMDEuaHRtbCIsICJbMjAwLFwiRlwiXSIsICJbMjAwLDBdIl1dKSwKICAgICAgICAgICAgICMg
SW5jcmVtZW50YWwgcmVzdWx0cwotICAgICAgICAgICAgKFsiMiJdLCBbWyIwMDEuaHRtbCIsICJb
MSwgXCJQXCJdIiwgIlsxLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIl0sIFtbIjAwMS5o
dG1sIiwgIlsxLCBcIkZcIl0iLCAiWzEsMF0iXV0pLAogICAgICAgICAgICAgIyBFeHBlY3RlZCBu
byBtZXJnZSBoYXBwZW5zLgogICAgICAgICAgICAgTm9uZSkKIApAQCAtMjQ2LDExICsyNDMsNDkg
QEAgY2xhc3MgSnNvblJlc3VsdHNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKQogICAgICAgICAjIFRo
ZSBpbmNyZW1lbnRhbCByZXN1bHRzIHNob3VsZCBiZSBkcm9wcGVkIGFuZCBubyBtZXJnZSBoYXBw
ZW5zLgogICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAogICAgICAgICAgICAgIyBBZ2dyZWdhdGVk
IHJlc3VsdHMKLSAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIwMDEuaHRtbCIsICJbMjAwLFwi
UFwiXSIsICJbMjAwLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAx
Lmh0bWwiLCAiWzIwMCxcIkZcIl0iLCAiWzIwMCwwXSJdXSksCiAgICAgICAgICAgICAjIEluY3Jl
bWVudGFsIHJlc3VsdHMKLSAgICAgICAgICAgIChbIjMiLCAiMiJdLCBbWyIwMDEuaHRtbCIsICJb
MiwgXCJQXCJdIiwgIlsyLFwiMFwiXSJdXSksCisgICAgICAgICAgICAoWyIzIiwgIjIiXSwgW1si
MDAxLmh0bWwiLCAiWzIsIFwiRlwiXSIsICJbMiwwXSJdXSksCiAgICAgICAgICAgICAjIEV4cGVj
dGVkIG5vIG1lcmdlIGhhcHBlbnMuCiAgICAgICAgICAgICBOb25lKQogCisgICAgICAgICMgUmVt
b3ZlIHRlc3Qgd2hlcmUgdGhlcmUgaXMgbm8gZGF0YSBpbiBhbGwgcnVucy4KKyAgICAgICAgc2Vs
Zi5fdGVzdF9tZXJnZSgKKyAgICAgICAgICAgICMgQWdncmVnYXRlZCByZXN1bHRzCisgICAgICAg
ICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMCxcIk5cIl0iLCAiWzIwMCwwXSJd
LCBbIjAwMi5odG1sIiwgIlsxMCxcIkZcIl0iLCAiWzEwLDBdIl1dKSwKKyAgICAgICAgICAgICMg
SW5jcmVtZW50YWwgcmVzdWx0cworICAgICAgICAgICAgKFsiMyJdLCBbWyIwMDEuaHRtbCIsICJb
MSxcIk5cIl0iLCAiWzEsMF0iXSwgWyIwMDIuaHRtbCIsICJbMSxcIlBcIl0iLCAiWzEsMF0iXV0p
LAorICAgICAgICAgICAgIyBFeHBlY3RlZCByZXN1bHRzCisgICAgICAgICAgICAoWyIzIiwgIjIi
LCAiMSJdLCBbWyIwMDIuaHRtbCIsICJbMSxcIlBcIl0sWzEwLFwiRlwiXSIsICJbMTEsMF0iXV0p
KQorCisgICAgICAgICMgUmVtb3ZlIHRlc3Qgd2hlcmUgYWxsIHJ1biBwYXNzIGFuZCBtYXggcnVu
bmluZyB0aW1lIDw9IDEgc2Vjb25kcworICAgICAgICBzZWxmLl90ZXN0X21lcmdlKAorICAgICAg
ICAgICAgIyBBZ2dyZWdhdGVkIHJlc3VsdHMKKyAgICAgICAgICAgIChbIjIiLCAiMSJdLCBbWyIw
MDEuaHRtbCIsICJbMjAwLFwiUFwiXSIsICJbMjAwLDBdIl0sIFsiMDAyLmh0bWwiLCAiWzEwLFwi
RlwiXSIsICJbMTAsMF0iXV0pLAorICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCisg
ICAgICAgICAgICAoWyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiUFwiXSIsICJbMSwxXSJdLCBb
IjAwMi5odG1sIiwgIlsxLFwiUFwiXSIsICJbMSwwXSJdXSksCisgICAgICAgICAgICAjIEV4cGVj
dGVkIHJlc3VsdHMKKyAgICAgICAgICAgIChbIjMiLCAiMiIsICIxIl0sIFtbIjAwMi5odG1sIiwg
IlsxLFwiUFwiXSxbMTAsXCJGXCJdIiwgIlsxMSwwXSJdXSkpCisKKyAgICAgICAgIyBEbyBub3Qg
cmVtb3ZlIHRlc3Qgd2hlcmUgYWxsIHJ1biBwYXNzIGJ1dCBtYXggcnVubmluZyB0aW1lID4gMSBz
ZWNvbmRzCisgICAgICAgIHNlbGYuX3Rlc3RfbWVyZ2UoCisgICAgICAgICAgICAjIEFnZ3JlZ2F0
ZWQgcmVzdWx0cworICAgICAgICAgICAgKFsiMiIsICIxIl0sIFtbIjAwMS5odG1sIiwgIlsyMDAs
XCJQXCJdIiwgIlsyMDAsMF0iXSwgWyIwMDIuaHRtbCIsICJbMTAsXCJGXCJdIiwgIlsxMCwwXSJd
XSksCisgICAgICAgICAgICAjIEluY3JlbWVudGFsIHJlc3VsdHMKKyAgICAgICAgICAgIChbIjMi
XSwgW1siMDAxLmh0bWwiLCAiWzEsXCJQXCJdIiwgIlsxLDJdIl0sIFsiMDAyLmh0bWwiLCAiWzEs
XCJQXCJdIiwgIlsxLDBdIl1dKSwKKyAgICAgICAgICAgICMgRXhwZWN0ZWQgcmVzdWx0cworICAg
ICAgICAgICAgKFsiMyIsICIyIiwgIjEiXSwgW1siMDAxLmh0bWwiLCAiWzIwMSxcIlBcIl0iLCAi
WzEsMl0sWzIwMCwwXSJdLCBbIjAwMi5odG1sIiwgIlsxLFwiUFwiXSxbMTAsXCJGXCJdIiwgIlsx
MSwwXSJdXSkpCisKKyAgICAgICAgIyBSZW1vdmUgaXRlbXMgZnJvbSB0ZXN0IHJlc3VsdHMgYW5k
IHRpbWVzIHRoYXQgZXhjZWVkcyB0aGUgbWF4IG51bWJlcgorICAgICAgICAjIG9mIGJ1aWxkcyB0
byB0cmFjay4KKyAgICAgICAgbWF4X2J1aWxkcyA9IHN0cihqc29ucmVzdWx0cy5KU09OX1JFU1VM
VFNfTUFYX0JVSUxEUykKKyAgICAgICAgc2VsZi5fdGVzdF9tZXJnZSgKKyAgICAgICAgICAgICMg
QWdncmVnYXRlZCByZXN1bHRzCisgICAgICAgICAgICAoWyIyIiwgIjEiXSwgW1siMDAxLmh0bWwi
LCAiWyIgKyBtYXhfYnVpbGRzICsgIixcIkZcIl0sWzEsXCJJXCJdIiwgIlsiICsgbWF4X2J1aWxk
cyArICIsMF0sWzEsMV0iXV0pLAorICAgICAgICAgICAgIyBJbmNyZW1lbnRhbCByZXN1bHRzCisg
ICAgICAgICAgICAoWyIzIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiVFwiXSIsICJbMSwxXSJdXSks
CisgICAgICAgICAgICAjIEV4cGVjdGVkIHJlc3VsdHMKKyAgICAgICAgICAgIChbIjMiLCAiMiIs
ICIxIl0sIFtbIjAwMS5odG1sIiwgIlsxLFwiVFwiXSxbIiArIG1heF9idWlsZHMgKyAiLFwiRlwi
XSIsICJbMSwxXSxbIiArIG1heF9idWlsZHMgKyAiLDBdIl1dKSkKKwogaWYgX19uYW1lX18gPT0g
J19fbWFpbl9fJzoKICAgICB1bml0dGVzdC5tYWluKCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>