<?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>19158</bug_id>
          
          <creation_ts>2008-05-20 16:16:46 -0700</creation_ts>
          <short_desc>Inspector should support console.group/console.groupEnd</short_desc>
          <delta_ts>2008-07-29 11:21:02 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>14354</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Keishi Hattori">keishi</assigned_to>
          <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>81049</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-05-20 16:16:46 -0700</bug_when>
    <thetext>The Inspector should support console.group/console.groupEnd for Firebug parity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>81058</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2008-05-20 16:23:09 -0700</bug_when>
    <thetext>&lt;rdar://problem/5950862&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84656</commentid>
    <comment_count>2</comment_count>
      <attachid>21986</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-06-28 05:49:00 -0700</bug_when>
    <thetext>Created attachment 21986
prototype

Prototype implementation of console.group/groupEnd.

This patch works by using ConsoleMessage &quot;startGroup&quot; and &quot;endGroup&quot; to find out where the groups begin and end. This is very ugly, so I think maybe a new MessageLevel(something like GroupStartMessageLevel) might be good?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84661</commentid>
    <comment_count>3</comment_count>
      <attachid>21986</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-06-28 09:14:08 -0700</bug_when>
    <thetext>Comment on attachment 21986
prototype

I think we need a slightly different approach here. Here&apos;s the Firebug documentation for console.group:

&gt; console.group(object[, object, ...])
&gt; Writes a message to the console and opens a nested
&gt; block to indent all future messages sent to the console.
&gt; Call console.groupEnd() to close the block.

So it looks like console.group essentially does a console.log, then increases the indent level for all future console messages. console.groupEnd just decreases the indent level for all future console messages.

So I think somewhere we&apos;re going to have to keep track of the current indent level. console.group will increment it, and console.groupEnd will decrement it. Every time a message is added to the console, we&apos;ll indent it according to the current indent level.

We should probably store the indent level in the ConsoleMessage struct in InspectorController.cpp. Then we can pass the indent level down to the Inspector&apos;s JS with the rest of the message. This will let us get rid of the messy &quot;startGroup&quot;/&quot;endGroup&quot; special messages.

Make sense?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84820</commentid>
    <comment_count>4</comment_count>
      <attachid>22016</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-06-30 22:20:40 -0700</bug_when>
    <thetext>Created attachment 22016
interim report

I fixed it to match your description. The prompt and command messages doesn&apos;t get grouped yet, so I&apos;ll have to do that next.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84853</commentid>
    <comment_count>5</comment_count>
      <attachid>22024</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-01 05:05:55 -0700</bug_when>
    <thetext>Created attachment 22024
proposed patch

Prompt and CommandMesssages get properly indented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84857</commentid>
    <comment_count>6</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-01 05:33:03 -0700</bug_when>
    <thetext>Oops, doesn&apos;t work when you close and reopen the inspector.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84860</commentid>
    <comment_count>7</comment_count>
      <attachid>22026</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-01 05:56:57 -0700</bug_when>
    <thetext>Created attachment 22026
minor mistake fix

fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84874</commentid>
    <comment_count>8</comment_count>
      <attachid>22026</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-07-01 07:53:50 -0700</bug_when>
    <thetext>Comment on attachment 22026
minor mistake fix

This is looking really good! Pretty minor comments below. I guess I&apos;ll r- until we are actually showing the indentation in the messages.

+    page-&gt;inspectorController()-&gt;increaseGroupLevel();
+    
+    return log(exec, arguments);

Does Firebug increase the indent level before or after printing the message passed to console.group? We should match either way.

You don&apos;t need the &quot;return&quot; keyword here since this function doesn&apos;t have a return value.

@@ -179,6 +181,7 @@ struct ConsoleMessage {
     Vector&lt;ProtectedPtr&lt;JSValue&gt; &gt; wrappedArguments;
     unsigned line;
     String url;
+    unsigned group;
 };

Why don&apos;t we call this new member &quot;groupLevel&quot; to match the terminology in the rest of the patch?

+    void increaseGroupLevel();
+    void decreaseGroupLevel();
+    void setScriptGroupLevel();

I think setScriptGroupLevel can be a private function.

+    setGroupLevel: function(group)
+    {
+        this.groupLevel = group;
+        this.promptElement.style.marginLeft = (this.groupLevel * 10) + &quot;px&quot;;
+    },

I&apos;m a little confused by this function. Is the point of it to indent the prompt itself? What&apos;s the purpose of that?

+    this.group = group;

Let&apos;s call this &quot;this.groupLevel&quot; as well.

What is Firebug&apos;s behavior when you evaluate something in the command line after console.group has been called? Is the expression you evaluated indented just like a call to console.log would be? If so, we need to modify _enterKeyPressed to pass the current group level to the ConsoleCommand constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84875</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-07-01 07:54:19 -0700</bug_when>
    <thetext>Tim might have some good ideas for how to indent the messages properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84887</commentid>
    <comment_count>10</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-01 09:54:11 -0700</bug_when>
    <thetext>Does Firebug make the groups collapsable? Either way we might want to make our groups collapsable I think.

I would not indent the prompt, that seems really odd to me. I would guess the results of the prompt would be indented though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85059</commentid>
    <comment_count>11</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-03 05:54:38 -0700</bug_when>
    <thetext>Some behavior of the firebug implementation:
- Arguments for console.group gets bold is text and gets treated like the title of the group.
- As Tim mentioned they are collapsible
Screenshot: http://gyazo.com/26d0c7eda57989ede5ba116ae3a0de9b.png</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85060</commentid>
    <comment_count>12</comment_count>
      <attachid>22063</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-07-03 06:09:39 -0700</bug_when>
    <thetext>Created attachment 22063
screenshot of console.group usage in Firebug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85161</commentid>
    <comment_count>13</comment_count>
      <attachid>22082</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-04 00:30:53 -0700</bug_when>
    <thetext>Created attachment 22082
collapsible

Features:
- I added GroupTitle Message Level
- Groups are collapsible by clicking on the group title message
Todo:
- group title disappear when collapsed
- design</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85165</commentid>
    <comment_count>14</comment_count>
      <attachid>22085</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-04 01:04:13 -0700</bug_when>
    <thetext>Created attachment 22085
comparison screenshot

very minor details

console.group gets included in the group and console.groupEnd doesn&apos;t. This is the opposite of firebug. 
Also firebug doesn&apos;t indent groupEnd but is in the group(it collapses).

They don&apos;t bug me but should we do the same?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85215</commentid>
    <comment_count>15</comment_count>
      <attachid>22097</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-05 04:43:00 -0700</bug_when>
    <thetext>Created attachment 22097
improved

I added triangles to show that they are collapsible. Title now shows fine.

Bug: Top level group gets nested when you go to another page without ending a group.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85218</commentid>
    <comment_count>16</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-05 08:08:58 -0700</bug_when>
    <thetext>Can you attach an updated screenshot?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85317</commentid>
    <comment_count>17</comment_count>
      <attachid>22125</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-07 04:14:23 -0700</bug_when>
    <thetext>Created attachment 22125
Bug fixed

Sorry the previous patch might have been corrupted.
I was able to fix the bug. I left out m_groupLevel=0; in InspectorController::didCommitLoad.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85318</commentid>
    <comment_count>18</comment_count>
      <attachid>22126</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-07 04:15:38 -0700</bug_when>
    <thetext>Created attachment 22126
New screenshot

here is the screen shot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85377</commentid>
    <comment_count>19</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-07-07 12:44:48 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; console.group gets included in the group and console.groupEnd doesn&apos;t. This is
&gt; the opposite of firebug. 

This will probably be fixed by bug 19931.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85610</commentid>
    <comment_count>20</comment_count>
      <attachid>22125</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-07-10 08:21:45 -0700</bug_when>
    <thetext>Comment on attachment 22125
Bug fixed

+    const KURL&amp; url = m_frame-&gt;loader()-&gt;url();
+    
+    if (arguments.isEmpty())
+        page-&gt;inspectorController()-&gt;addMessageToConsole(JSMessageSource, GroupTitleMessageLevel, String(), 0, url.string());
+    else
+        page-&gt;inspectorController()-&gt;addMessageToConsole(JSMessageSource, GroupTitleMessageLevel, exec, arguments, 0, url.string());

I don&apos;t think we want to pass in the Frame&apos;s URL here. Just passing String() would be better.

+        callFunction(m_scriptContext, m_scriptObject, &quot;startGroupInConsole&quot;, 0, NULL, exception);

We use 0 instead of NULL in C++ code. (Ditto for endGroup.)

+        if (typeof msg.groupLevel === &quot;number&quot;) {

When will this be false?

+            while (msg.groupLevel &gt; this.groupLevel)
+                this.startGroup();
+            while (msg.groupLevel &lt; this.groupLevel)
+                this.endGroup();

It seems like if the difference between msg.groupLevel and this.groupLevel were more than 1, we&apos;d end up with groups without titles. Do we really want to allow that?

+    startGroup: function() {

The opening brace should be on the next line, aligned with the &quot;s&quot; in &quot;startGroup&quot;. Ditto for the other functions you added.

+        this.currentGroup.appendChild(groupElement);groupElement.className += &quot; &quot; + this.groupLevel;

You&apos;re missing a newline after the semicolon here. You should use addStyleClass instead of manually appending to .className.

Why do we need the groupLevel as part of the class name?

     _messagesClicked: function(event)
     {
+        var groupTitleElement = event.target.enclosingNodeOrSelfWithClass(&quot;console-group-title-level&quot;);
+        if (groupTitleElement) {
+            var groupElement = groupTitleElement.enclosingNodeOrSelfWithClass(&quot;console-group&quot;);
+            if (groupElement)

There should be braces around the body of this if since it&apos;s more than one line.

+                if (groupElement.hasStyleClass(&quot;collapsed&quot;))
+                    groupElement.removeStyleClass(&quot;collapsed&quot;);
+                else
+                    groupElement.addStyleClass(&quot;collapsed&quot;);
+                groupTitleElement.scrollIntoViewIfNeeded(true);
+        }

Should we return at the end of the if block?

@@ -605,6 +656,9 @@ WebInspector.ConsoleMessage.prototype = 
             case WebInspector.ConsoleMessage.MessageLevel.Error:
                 levelString = &quot;Error&quot;;
                 break;
+            case WebInspector.ConsoleMessage.MessageLevel.GroupTitle:
+                            levelString = &quot;GroupTitle&quot;;
+                            break;
         }

Indentation got a little funny here.

There are tabs in inspector.css. Our pre-commit hook won&apos;t let us land the patch that way. Please replace the tabs with 4 spaces.

I think this is really close!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86249</commentid>
    <comment_count>21</comment_count>
      <attachid>22344</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-17 11:41:25 -0700</bug_when>
    <thetext>Created attachment 22344
Improved

Sorry the quality of the previous patch was awful.

I thought group deserves a javascript class so I added WebInspector.ConsoleGroup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86255</commentid>
    <comment_count>22</comment_count>
      <attachid>22347</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-17 11:54:11 -0700</bug_when>
    <thetext>Created attachment 22347
Minor fix

I forgot to put in event.preventDefault</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86502</commentid>
    <comment_count>23</comment_count>
      <attachid>22347</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2008-07-20 14:23:42 -0700</bug_when>
    <thetext>Comment on attachment 22347
Minor fix

You&apos;ve introduced a number of tab characters into the changelog, WebCore/page/Console.idl alas i&apos;m not up to the task of doing any real inspector patch reviewing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86573</commentid>
    <comment_count>24</comment_count>
      <attachid>22405</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-21 08:43:01 -0700</bug_when>
    <thetext>Created attachment 22405
Tabs replaced

I&apos;ll run a script to check for tabs from now on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86586</commentid>
    <comment_count>25</comment_count>
      <attachid>22405</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-21 10:42:27 -0700</bug_when>
    <thetext>Comment on attachment 22405
Tabs replaced

Please remove the red color.

+.console-group .console-group {
+    border-left: 10px solid rgb(255, 0, 0);
+}

This would be better as margin-left: 10px;

Otherwise this is ready to land!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86714</commentid>
    <comment_count>26</comment_count>
      <attachid>22446</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-23 04:06:56 -0700</bug_when>
    <thetext>Created attachment 22446
Changed css

I changed
   .console-group .console-group {
      border-left: 10px solid rgb(255, 0, 0);
  }
to
   .console-group .console-group &gt; .console-group-messages {
      margin-left: 10px;
  }

This way group title indentation matches Firebug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86715</commentid>
    <comment_count>27</comment_count>
      <attachid>22447</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-23 04:12:49 -0700</bug_when>
    <thetext>Created attachment 22447
Screenshot

Maybe the groups aren&apos;t apparent enough? More margin or some kind of background?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86726</commentid>
    <comment_count>28</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-23 06:57:15 -0700</bug_when>
    <thetext>(In reply to comment #27)
&gt; Created an attachment (id=22447) [edit]
&gt; Screenshot
&gt; 
&gt; Maybe the groups aren&apos;t apparent enough? More margin or some kind of
&gt; background?
&gt; 

I think the disclosure triangle is too far from the group title. Maybe move it over to the right more. ANd the indent might need to be more, I don&apos;t think a background color is suitable.

Try 16px and reducing the space between the disclosure triangle and group title.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86728</commentid>
    <comment_count>29</comment_count>
      <attachid>22452</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2008-07-23 07:35:26 -0700</bug_when>
    <thetext>Created attachment 22452
Fixed css

16px margin looks perfect!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87272</commentid>
    <comment_count>30</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 10:02:47 -0700</bug_when>
    <thetext>The new version looks better! I still think the disclosure arrow should be closer to the group title.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87273</commentid>
    <comment_count>31</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 10:05:32 -0700</bug_when>
    <thetext>Try:

.console-group-title-level {
    background-image: url(Images/disclosureTriangleSmallDown.png);
    background-repeat: no-repeat;
    background-position: 6px 0;
    font-weight: bold;
}

.console-group.collapsed .console-group-title-level {
    background-image: url(Images/disclosureTriangleSmallRight.png);
}
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87274</commentid>
    <comment_count>32</comment_count>
      <attachid>22452</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 10:06:19 -0700</bug_when>
    <thetext>Comment on attachment 22452
Fixed css

Try moving the disclosure arrow over to the right a bit. See my comment about shifting it 6px. Might look good with 8px too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87278</commentid>
    <comment_count>33</comment_count>
      <attachid>22452</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 10:40:39 -0700</bug_when>
    <thetext>Comment on attachment 22452
Fixed css

I am going to tweak the look locally and land.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87279</commentid>
    <comment_count>34</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 11:08:02 -0700</bug_when>
    <thetext>Landed in r35421.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87286</commentid>
    <comment_count>35</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-07-29 11:21:02 -0700</bug_when>
    <thetext>Found a major bug after landing. Filed as bug 20210.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21986</attachid>
            <date>2008-06-28 05:49:00 -0700</date>
            <delta_ts>2008-07-01 05:05:55 -0700</delta_ts>
            <desc>prototype</desc>
            <filename>MyThirdPatch1.txt</filename>
            <type>text/plain</type>
            <size>5256</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDg0OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDYtMjggIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgQWRkZWQgY29uc29sZS5ncm91cC9ncm91cEVuZC4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvQ29u
c29sZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cCk6IEFkZGVkLgorICAg
ICAgICAoV2ViQ29yZTo6Q29uc29sZTo6Z3JvdXBFbmQpOiBBZGRlZC4KKyAgICAgICAgKiBwYWdl
L0NvbnNvbGUuaDoKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOgorICAgICAgICAqIHBhZ2Uv
aW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVkIFdlYkluc3BlY3Rvci5Db25zb2xlLnN0YXJ0R3Jv
dXAvZW5kR3JvdXAuCisgICAgICAgICogcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzczogQWRk
ZWQgc3R5bGVzIGZvciAuY29uc29sZS1ncm91cC4KKwogMjAwOC0wNi0yNyAgU2FtIFdlaW5pZyAg
PHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCklu
ZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdl
L0NvbnNvbGUuY3BwCShyZXZpc2lvbiAzNDgyNykKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjY2LDYgKzI2Niw3MiBAQCB2b2lkIENvbnNvbGU6OnByb2Zp
bGVFbmQoRXhlY1N0YXRlKiBleGVjCiAgICAgUHJvZmlsZXI6OnByb2ZpbGVyKCktPnN0b3BQcm9m
aWxpbmcoZXhlYywgdGl0bGUpOwogfQogCit2b2lkIENvbnNvbGU6Omdyb3VwKCkKK3sKKyAgICBp
ZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1l
LT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgY29u
c3QgS1VSTCYgdXJsID0gbV9mcmFtZS0+bG9hZGVyKCktPnVybCgpOworICAgIAorICAgIHBhZ2Ut
Pmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3Vy
Y2UsIExvZ01lc3NhZ2VMZXZlbCwgU3RyaW5nKCJzdGFydEdyb3VwIiksIDAsIHVybC5zdHJpbmco
KSk7Cit9CisKK3ZvaWQgQ29uc29sZTo6Z3JvdXBFbmQoKQoreworICAgIGlmICghbV9mcmFtZSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAg
ICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIGNvbnN0IEtVUkwmIHVybCA9IG1f
ZnJhbWUtPmxvYWRlcigpLT51cmwoKTsKKworICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIo
KS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3VyY2UsIExvZ01lc3NhZ2VMZXZlbCwg
U3RyaW5nKCJlbmRHcm91cCIpLCAwLCB1cmwuc3RyaW5nKCkpOworfQorCiB2b2lkIENvbnNvbGU6
OmZpbmlzaGVkUHJvZmlsaW5nKFBhc3NSZWZQdHI8UHJvZmlsZT4gcHJwUHJvZmlsZSkKIHsKICAg
ICBpZiAoUGFnZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKSkKSW5kZXg6IFdlYkNvcmUvcGFnZS9D
b25zb2xlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAkocmV2aXNpb24g
MzQ4MjcpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCSh3b3JraW5nIGNvcHkpCkBAIC03Niw2
ICs3NiwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgYXNzZXJ0Q29uZGl0
aW9uKGJvb2wgY29uZGl0aW9uLCBLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYg
YXJndW1lbnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlKEtKUzo6RXhlY1N0YXRlKiwgY29uc3Qg
S0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwogICAgICAgICB2b2lkIHByb2ZpbGVFbmQoS0pTOjpF
eGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CisgICAgICAgIHZvaWQg
Z3JvdXAoKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgpOwogCiAgICAgICAgIHZvaWQgZmluaXNo
ZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxLSlM6OlByb2ZpbGU+KTsKIApJbmRleDogV2ViQ29yZS9w
YWdlL0NvbnNvbGUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAko
cmV2aXNpb24gMzQ4MjcpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29sZS5pZGwJKHdvcmtpbmcgY29w
eSkKQEAgLTM4LDYgKzM4LDEwIEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIFtDdXN0b21d
IHZvaWQgcHJvZmlsZShpbiBET01TdHJpbmcgdGl0bGUpOwogICAgICAgICBbQ3VzdG9tXSB2b2lk
IHByb2ZpbGVFbmQoKTsKKyAgICAgICAgdm9pZCBncm91cCgpOworICAgICAgICB2b2lkIGdyb3Vw
RW5kKCk7CiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xl
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkocmV2
aXNpb24gMzQ4MjcpCisrKyBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMJKHdvcmtp
bmcgY29weSkKQEAgLTE0MiwxMCArMTQyLDE2IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3Rv
dHlwZSA9IHsKICAgICAgICAgfQogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwot
Ci0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVzc2FnZUVsZW1lbnQoKTsKLSAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsIHRoaXMucHJvbXB0RWxl
bWVudCk7Ci0gICAgICAgIHRoaXMucHJvbXB0RWxlbWVudC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7
CisgICAgICAgIAorICAgICAgICBpZiAobXNnLm1lc3NhZ2UgPT0gInN0YXJ0R3JvdXAiKQorICAg
ICAgICAgICAgdGhpcy5zdGFydEdyb3VwKCk7CisgICAgICAgIGVsc2UgaWYgKG1zZy5tZXNzYWdl
ID09ICJlbmRHcm91cCIpCisgICAgICAgICAgICB0aGlzLmVuZEdyb3VwKCk7CisgICAgICAgIGVs
c2UgeworICAgICAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOwor
ICAgICAgICAgICAgdGhpcy5wcm9tcHRFbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGVs
ZW1lbnQsIHRoaXMucHJvbXB0RWxlbWVudCk7CisgICAgICAgICAgICB0aGlzLnByb21wdEVsZW1l
bnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UpOworICAgICAgICB9CiAgICAgfSwKIAogICAgIGNsZWFy
TWVzc2FnZXM6IGZ1bmN0aW9uKCkKQEAgLTE1NCw4ICsxNjAsOSBAQCBXZWJJbnNwZWN0b3IuQ29u
c29sZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAg
ICAgIHdoaWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVudC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0
RWxlbWVudCkKKyAgICAgICAgd2hpbGUgKHRoaXMubWVzc2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQp
CiAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLm1lc3Nh
Z2VzRWxlbWVudC5maXJzdENoaWxkKTsKKyAgICAgICAgdGhpcy5tZXNzYWdlc0VsZW1lbnQuYXBw
ZW5kQ2hpbGQodGhpcy5wcm9tcHRFbGVtZW50KTsKICAgICB9LAogCiAgICAgY29tcGxldGlvbnM6
IGZ1bmN0aW9uKHdvcmRSYW5nZSwgYmVzdE1hdGNoT25seSkKQEAgLTIwOSw2ICsyMTYsMjMgQEAg
V2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gcmVzdWx0
czsKICAgICB9LAogCisgICAgc3RhcnRHcm91cDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
dmFyIGdyb3VwID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgIGdyb3Vw
LmFkZFN0eWxlQ2xhc3MoImNvbnNvbGUtZ3JvdXAiKTsKKyAgICAgICAgCisgICAgICAgIHRoaXMu
cHJvbXB0RWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShncm91cCwgdGhpcy5wcm9tcHRF
bGVtZW50KTsKKyAgICAgICAgZ3JvdXAuYXBwZW5kQ2hpbGQodGhpcy5wcm9tcHRFbGVtZW50KTsK
KyAgICB9LAorCisgICAgZW5kR3JvdXA6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGlmICgh
dGhpcy5wcm9tcHRFbGVtZW50LnBhcmVudE5vZGUuaGFzU3R5bGVDbGFzcygiY29uc29sZS1ncm91
cCIpKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAKKyAgICAgICAgdGhpcy5wcm9tcHRF
bGVtZW50LnBhcmVudE5vZGUucGFyZW50Tm9kZS5hcHBlbmRDaGlsZCh0aGlzLnByb21wdEVsZW1l
bnQpOworICAgIH0sCisKICAgICBfdG9nZ2xlQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQogICAg
IHsKICAgICAgICAgdGhpcy52aXNpYmxlID0gIXRoaXMudmlzaWJsZTsKSW5kZXg6IFdlYkNvcmUv
cGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2Uv
aW5zcGVjdG9yL2luc3BlY3Rvci5jc3MJKHJldmlzaW9uIDM0ODI3KQorKysgV2ViQ29yZS9wYWdl
L2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCSh3b3JraW5nIGNvcHkpCkBAIC00NjYsNiArNDY2LDEw
IEBAIGJvZHkuY29uc29sZS12aXNpYmxlICNjb25zb2xlIHsKICAgICBtaW4taGVpZ2h0OiAxNnB4
OyAKIH0KIAorLmNvbnNvbGUtZ3JvdXAgeworCXBhZGRpbmctbGVmdDogMjBweDsKK30KKwogLmNv
bnNvbGUtbWVzc2FnZTo6YmVmb3JlLCAuY29uc29sZS11c2VyLWNvbW1hbmQ6OmJlZm9yZSwgI2Nv
bnNvbGUtcHJvbXB0OjpiZWZvcmUgewogICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICBkaXNw
bGF5OiBibG9jazsK
</data>
<flag name="review"
          id="9668"
          type_id="1"
          status="-"
          setter="aroben"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22016</attachid>
            <date>2008-06-30 22:20:40 -0700</date>
            <delta_ts>2008-07-01 05:05:55 -0700</delta_ts>
            <desc>interim report</desc>
            <filename>MyThirdPatch2.txt</filename>
            <type>text/plain</type>
            <size>9987</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDkwNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDgtMDYtMzAgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkZWQgY29uc29sZS5ncm91cC9ncm91cEVuZDsKKyAgICAgICAgCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1OTgKKworICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0Nv
bnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpD
b25zb2xlOjpncm91cEVuZCk6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOiBBZGRl
ZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91
cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q29uc29sZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKTogQWRkZWQgZ3Jv
dXAuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250
cm9sbGVyKTogQWRkZWQgbV9ncm91cExldmVsLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
Q29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ29uc29sZSk6IEFkZGVkIGdyb3VwIGFyZ3VtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6aW5jcmVhc2VHcm91cExldmVs
KTogSW5jcmVtZW50cyBtX2dyb3VwTGV2ZWwuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
b250cm9sbGVyOjpkZWNyZWFzZUdyb3VwTGV2ZWwpOiBEZWNyZW1lbnRzIG1fZ3JvdXBMZXZlbC4K
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFNjcmlwdENvbnNvbGVN
ZXNzYWdlKTogQWRkZWQgZ3JvdXAgYXJndW1lbnQuCisgICAgICAgICogcGFnZS9JbnNwZWN0b3JD
b250cm9sbGVyLmg6IAorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVk
IGdyb3VwIHRvIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS4KKwogMjAwOC0wNi0zMCAgQWRl
bGUgUGV0ZXJzb24gIDxhZGVsZUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xp
dmVyLgpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNp
b24gMzQ5MDUpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTgzLDQgKzgzLDEwIEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmls
ZUVuZChFeGVjU3RhdGUKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSog
SlNDb25zb2xlOjpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50
cykKK3sKKyAgICBpbXBsKCktPmdyb3VwKGV4ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpz
VW5kZWZpbmVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUv
cGFnZS9Db25zb2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJ
KHJldmlzaW9uIDM0OTA1KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNjYsNiArMjY2LDMyIEBAIHZvaWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3Rh
dGUqIGV4ZWMKICAgICBQcm9maWxlcjo6cHJvZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0
aXRsZSk7CiB9CiAKK3ZvaWQgQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBB
cmdMaXN0JiBhcmd1bWVudHMpCit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47
CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAg
ICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+aW5j
cmVhc2VHcm91cExldmVsKCk7CisgICAgCisgICAgcmV0dXJuIGxvZyhleGVjLCBhcmd1bWVudHMp
OworfQorCit2b2lkIENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1fZnJhbWUpCisg
ICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAg
aWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgcGFnZS0+aW5zcGVjdG9yQ29u
dHJvbGxlcigpLT5kZWNyZWFzZUdyb3VwTGV2ZWwoKTsKK30KKwogdm9pZCBDb25zb2xlOjpmaW5p
c2hlZFByb2ZpbGluZyhQYXNzUmVmUHRyPFByb2ZpbGU+IHBycFByb2ZpbGUpCiB7CiAgICAgaWYg
KFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29s
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHJldmlzaW9uIDM0OTA1
KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYs
OCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgYXNzZXJ0Q29uZGl0aW9uKGJv
b2wgY29uZGl0aW9uLCBLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1l
bnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlKEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpB
cmdMaXN0JiBhcmd1bWVudHMpOwogICAgICAgICB2b2lkIHByb2ZpbGVFbmQoS0pTOjpFeGVjU3Rh
dGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CisgICAgICAgIHZvaWQgZ3JvdXAo
S0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CisgICAgICAg
IHZvaWQgZ3JvdXBFbmQoKTsKIAogICAgICAgICB2b2lkIGZpbmlzaGVkUHJvZmlsaW5nKFBhc3NS
ZWZQdHI8S0pTOjpQcm9maWxlPik7CiAKSW5kZXg6IFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5pZGwJKHJldmlzaW9uIDM0OTA1KQor
KysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw2ICszOCw4
IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZShpbiBE
T01TdHJpbmcgdGl0bGUpOwogICAgICAgICBbQ3VzdG9tXSB2b2lkIHByb2ZpbGVFbmQoKTsKKyAg
ICAgICAgW0N1c3RvbV0gdm9pZCBncm91cCgpOworICAgICAgICB2b2lkIGdyb3VwRW5kKCk7CiAg
ICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAkocmV2aXNp
b24gMzQ5MDUpCisrKyBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTE1MiwyMSArMTUyLDIzIEBAIEpTVmFsdWVSZWYgSW5zcGVjdG9yQ29udHJv
bGxlcjo6Y2FsbEZ1bmMKIC8vIENvbnNvbGVNZXNzYWdlIFN0cnVjdAogCiBzdHJ1Y3QgQ29uc29s
ZU1lc3NhZ2UgewotICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxl
dmVsIGwsIGNvbnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSkKKyAg
ICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1lc3NhZ2VMZXZlbCBsLCBjb25zdCBT
dHJpbmcmIG0sIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcmIHUsIHVuc2lnbmVkIGcpCiAgICAg
ICAgIDogc291cmNlKHMpCiAgICAgICAgICwgbGV2ZWwobCkKICAgICAgICAgLCBtZXNzYWdlKG0p
CiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwodSkKKyAgICAgICAgLCBncm91cChn
KQogICAgIHsKICAgICB9CiAKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1l
c3NhZ2VMZXZlbCBsLCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIHVuc2ln
bmVkIGxpLCBjb25zdCBTdHJpbmcmIHUpCisgICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJj
ZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdz
LCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBnKQogICAgICAgICA6IHNv
dXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgd3JhcHBlZEFyZ3VtZW50cyhh
cmdzLnNpemUoKSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1KQorICAgICAg
ICAsIGdyb3VwKGcpCiAgICAgewogICAgICAgICBKU0xvY2sgbG9jazsKICAgICAgICAgZm9yICh1
bnNpZ25lZCBpID0gMDsgaSA8IGFyZ3Muc2l6ZSgpOyArK2kpCkBAIC0xNzksNiArMTgxLDcgQEAg
c3RydWN0IENvbnNvbGVNZXNzYWdlIHsKICAgICBWZWN0b3I8UHJvdGVjdGVkUHRyPEpTVmFsdWU+
ID4gd3JhcHBlZEFyZ3VtZW50czsKICAgICB1bnNpZ25lZCBsaW5lOwogICAgIFN0cmluZyB1cmw7
CisgICAgdW5zaWduZWQgZ3JvdXA7CiB9OwogCiAvLyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENs
YXNzCkBAIC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JD
b250cm9sbGVyCiAgICAgLCBtX3JlY29yZGluZ1VzZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQog
ICAgICwgbV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1lbnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVu
dGlmaWVyKC0yKQorICAgICwgbV9ncm91cExldmVsKDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdl
LCBwYWdlKTsKICAgICBBU1NFUlRfQVJHKGNsaWVudCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5
MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAo
IWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3
IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJl
ciwgc291cmNlVVJMKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdl
KHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMLCBt
X2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdl
VG9Db25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3Vy
Y2VJRCkKQEAgLTExOTUsNyArMTE5OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRk
TWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
YWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3Nh
Z2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlEKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENv
bnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlE
LCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25z
b2xlTWVzc2FnZShDb25zb2xlTWVzc2FnZSogY29uc29sZU1lc3NhZ2UpCkBAIC0xMjIxLDYgKzEy
MjUsMTcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRQcm9maWxlKFBhcwogICAgICAg
ICBhZGRTY3JpcHRQcm9maWxlKHByb2ZpbGUuZ2V0KCkpOwogfQogCit2b2lkIEluc3BlY3RvckNv
bnRyb2xsZXI6OmluY3JlYXNlR3JvdXBMZXZlbCgpCit7CisgICAgKyttX2dyb3VwTGV2ZWw7Cit9
CisKK3ZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZGVjcmVhc2VHcm91cExldmVsKCkKK3sKKyAg
ICBpZiAobV9ncm91cExldmVsID4gMCkKKyAgICAgICAgLS1tX2dyb3VwTGV2ZWw7Cit9CisKIHZv
aWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YXR0YWNoV2luZG93KCkKIHsKICAgICBpZiAoIWVuYWJs
ZWQoKSkKQEAgLTE4NTYsNiArMTg3MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRk
U2NyaXB0Q29uc28KICAgICBKU1ZhbHVlUmVmIGxldmVsVmFsdWUgPSBKU1ZhbHVlTWFrZU51bWJl
cihtX3NjcmlwdENvbnRleHQsIG1lc3NhZ2UtPmxldmVsKTsKICAgICBKU1ZhbHVlUmVmIGxpbmVW
YWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGluZSk7
CiAgICAgSlNWYWx1ZVJlZiB1cmxWYWx1ZSA9IEpTVmFsdWVNYWtlU3RyaW5nKG1fc2NyaXB0Q29u
dGV4dCwganNTdHJpbmdSZWYobWVzc2FnZS0+dXJsKS5nZXQoKSk7CisgICAgSlNWYWx1ZVJlZiBn
cm91cFZhbHVlID0gSlNWYWx1ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5n
cm91cCk7CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVu
dHMgPSAyNTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVu
dHNdOwpAQCAtMTg2NCw2ICsxODgwLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRT
Y3JpcHRDb25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsK
ICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVu
dHNbYXJndW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENv
dW50KytdID0gZ3JvdXBWYWx1ZTsKIAogICAgIGlmICghbWVzc2FnZS0+d3JhcHBlZEFyZ3VtZW50
cy5pc0VtcHR5KCkpIHsKICAgICAgICAgdW5zaWduZWQgcmVtYWluaW5nU3BhY2VJbkFyZ3VtZW50
cyA9IG1heGltdW1NZXNzYWdlQXJndW1lbnRzIC0gYXJndW1lbnRDb3VudDsKSW5kZXg6IFdlYkNv
cmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdl
L0luc3BlY3RvckNvbnRyb2xsZXIuaAkocmV2aXNpb24gMzQ5MDUpCisrKyBXZWJDb3JlL3BhZ2Uv
SW5zcGVjdG9yQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTQsNiArMTE0LDkgQEAg
cHVibGljOgogICAgIHZvaWQgYWRkU2NyaXB0UHJvZmlsZShLSlM6OlByb2ZpbGUqIHByb2ZpbGUp
OwogICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8S0pTOjpQcm9maWxlPiA+JiBwcm9maWxlcygpIGNv
bnN0IHsgcmV0dXJuIG1fcHJvZmlsZXM7IH0KIAorICAgIHZvaWQgaW5jcmVhc2VHcm91cExldmVs
KCk7CisgICAgdm9pZCBkZWNyZWFzZUdyb3VwTGV2ZWwoKTsKKwogICAgIHZvaWQgYXR0YWNoV2lu
ZG93KCk7CiAgICAgdm9pZCBkZXRhY2hXaW5kb3coKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHBy
aXZhdGU6CiAgICAgU3BlY2lhbFBhbmVscyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBs
b25nIG1fbmV4dElkZW50aWZpZXI7CiAgICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2Rl
OworICAgIHVuc2lnbmVkIG1fZ3JvdXBMZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMJKHJldmlzaW9uIDM0OTA1KQorKysg
V2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00NDMs
MTkgKzQ0MywyMCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYklu
c3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5w
cm90b3R5cGU7CiAKLVdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJj
ZSwgbGV2ZWwsIGxpbmUsIHVybCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0
aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCwgZ3JvdXApCiB7CiAgICAgdGhpcy5zb3VyY2Ug
PSBzb3VyY2U7CiAgICAgdGhpcy5sZXZlbCA9IGxldmVsOwogICAgIHRoaXMubGluZSA9IGxpbmU7
CiAgICAgdGhpcy51cmwgPSB1cmw7CisgICAgdGhpcy5ncm91cCA9IGdyb3VwOwogCiAgICAgLy8g
VGhpcyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1l
bnQuIFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBt
ZXNzYWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJl
c2VudGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90
eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhp
cy5tZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3Vt
ZW50cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2Fn
ZSBwcm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4K
LSAgICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBl
LnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0g
dGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwog
fQogCiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTEwLDcg
KzUxMSw3IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAg
ICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgICAg
ZWxlbWVudC5tZXNzYWdlID0gdGhpczsKICAgICAgICAgZWxlbWVudC5jbGFzc05hbWUgPSAiY29u
c29sZS1tZXNzYWdlIjsKLQorICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpbkxlZnQgPSAoMTAg
KiB0aGlzLmdyb3VwKSArICJweCI7CiAgICAgICAgIHN3aXRjaCAodGhpcy5zb3VyY2UpIHsKICAg
ICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VTb3VyY2Uu
SFRNTDoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNvbnNvbGUtaHRt
bC1zb3VyY2UiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22024</attachid>
            <date>2008-07-01 05:05:55 -0700</date>
            <delta_ts>2008-07-01 05:56:57 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>MyThirdPatch3.txt</filename>
            <type>text/plain</type>
            <size>11327</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDkxMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDgtMDYtMzAgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkZWQgY29uc29sZS5ncm91cC9ncm91cEVuZDsKKyAgICAgICAgCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1OTgKKworICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0Nv
bnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpD
b25zb2xlOjpncm91cEVuZCk6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOiBBZGRl
ZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91
cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q29uc29sZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKTogQWRkZWQgZ3Jv
dXAuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250
cm9sbGVyKTogQWRkZWQgbV9ncm91cExldmVsLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
Q29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ29uc29sZSk6IEFkZGVkIGdyb3VwIGFyZ3VtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6aW5jcmVhc2VHcm91cExldmVs
KTogSW5jcmVtZW50cyBtX2dyb3VwTGV2ZWwuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
b250cm9sbGVyOjpkZWNyZWFzZUdyb3VwTGV2ZWwpOiBEZWNyZW1lbnRzIG1fZ3JvdXBMZXZlbC4K
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFNjcmlwdENvbnNvbGVN
ZXNzYWdlKTogQWRkZWQgZ3JvdXAgYXJndW1lbnQuCisgICAgICAgICogcGFnZS9JbnNwZWN0b3JD
b250cm9sbGVyLmg6IAorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVk
IGdyb3VwIHByb3BlcnR5IHRvIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS4gQWRkZWQgV2Vi
SW5zcGVjdG9yLkNvbnNvbGUuc2V0R3JvdXBMZXZlbC4KKwogMjAwOC0wNy0wMSAgTmlrb2xhcyBa
aW1tZXJtYW5uICA8emltbWVybWFubkBrZGUub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFu
dHRpICYgRXJpYy4KSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJ
KHJldmlzaW9uIDM0OTA1KQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC04Myw0ICs4MywxMCBAQCBKU1ZhbHVlKiBKU0NvbnNvbGU6
OnByb2ZpbGVFbmQoRXhlY1N0YXRlCiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKK0pT
VmFsdWUqIEpTQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBh
cmd1bWVudHMpCit7CisgICAgaW1wbCgpLT5ncm91cChleGVjLCBhcmd1bWVudHMpOworICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBX
ZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNv
bGUuY3BwCShyZXZpc2lvbiAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjY2LDYgKzI2NiwzMiBAQCB2b2lkIENvbnNvbGU6OnByb2ZpbGVFbmQo
RXhlY1N0YXRlKiBleGVjCiAgICAgUHJvZmlsZXI6OnByb2ZpbGVyKCktPnN0b3BQcm9maWxpbmco
ZXhlYywgdGl0bGUpOwogfQogCit2b2lkIENvbnNvbGU6Omdyb3VwKEV4ZWNTdGF0ZSogZXhlYywg
Y29uc3QgQXJnTGlzdCYgYXJndW1lbnRzKQoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAgICBpZiAoIXBh
Z2UpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVy
KCktPmluY3JlYXNlR3JvdXBMZXZlbCgpOworICAgIAorICAgIHJldHVybiBsb2coZXhlYywgYXJn
dW1lbnRzKTsKK30KKwordm9pZCBDb25zb2xlOjpncm91cEVuZCgpCit7CisgICAgaWYgKCFtX2Zy
YW1lKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgp
OworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3Bl
Y3RvckNvbnRyb2xsZXIoKS0+ZGVjcmVhc2VHcm91cExldmVsKCk7Cit9CisKIHZvaWQgQ29uc29s
ZTo6ZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewog
ICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJbmRleDogV2ViQ29yZS9wYWdl
L0NvbnNvbGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCShyZXZpc2lv
biAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTc2
LDYgKzc2LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGFzc2VydENvbmRp
dGlvbihib29sIGNvbmRpdGlvbiwgS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3Qm
IGFyZ3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZShLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0
IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlRW5kKEtKUzo6
RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAgICAgICB2b2lk
IGdyb3VwKEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwor
ICAgICAgICB2b2lkIGdyb3VwRW5kKCk7CiAKICAgICAgICAgdm9pZCBmaW5pc2hlZFByb2ZpbGlu
ZyhQYXNzUmVmUHRyPEtKUzo6UHJvZmlsZT4pOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29s
ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCShyZXZpc2lvbiAz
NDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzgs
NiArMzgsOCBAQCBtb2R1bGUgd2luZG93IHsKIAogICAgICAgICBbQ3VzdG9tXSB2b2lkIHByb2Zp
bGUoaW4gRE9NU3RyaW5nIHRpdGxlKTsKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlRW5k
KCk7CisgICAgICAgIFtDdXN0b21dIHZvaWQgZ3JvdXAoKTsKKyAgICAgICAgdm9pZCBncm91cEVu
ZCgpOwogICAgIH07CiAKIH0KSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAJ
KHJldmlzaW9uIDM0OTA1KQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsMjEgKzE1MiwyMyBAQCBKU1ZhbHVlUmVmIEluc3BlY3Rv
ckNvbnRyb2xsZXI6OmNhbGxGdW5jCiAvLyBDb25zb2xlTWVzc2FnZSBTdHJ1Y3QKIAogc3RydWN0
IENvbnNvbGVNZXNzYWdlIHsKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1l
c3NhZ2VMZXZlbCBsLCBjb25zdCBTdHJpbmcmIG0sIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcm
IHUpCisgICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwg
Y29uc3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBn
KQogICAgICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgbWVz
c2FnZShtKQogICAgICAgICAsIGxpbmUobGkpCiAgICAgICAgICwgdXJsKHUpCisgICAgICAgICwg
Z3JvdXAoZykKICAgICB7CiAgICAgfQogCi0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJj
ZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdz
LCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJnTGlz
dCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAg
ICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRBcmd1
bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwodSkK
KyAgICAgICAgLCBncm91cChnKQogICAgIHsKICAgICAgICAgSlNMb2NrIGxvY2s7CiAgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytpKQpAQCAtMTc5LDYgKzE4
MSw3IEBAIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9yPFByb3RlY3RlZFB0cjxK
U1ZhbHVlPiA+IHdyYXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQgbGluZTsKICAgICBTdHJp
bmcgdXJsOworICAgIHVuc2lnbmVkIGdyb3VwOwogfTsKIAogLy8gWE1MSHR0cFJlcXVlc3RSZXNv
dXJjZSBDbGFzcwpAQCAtMTAyMyw2ICsxMDI2LDcgQEAgSW5zcGVjdG9yQ29udHJvbGxlcjo6SW5z
cGVjdG9yQ29udHJvbGxlcgogICAgICwgbV9yZWNvcmRpbmdVc2VySW5pdGlhdGVkUHJvZmlsZShm
YWxzZSkKICAgICAsIG1fc2hvd0FmdGVyVmlzaWJsZShFbGVtZW50c1BhbmVsKQogICAgICwgbV9u
ZXh0SWRlbnRpZmllcigtMikKKyAgICAsIG1fZ3JvdXBMZXZlbCgwKQogewogICAgIEFTU0VSVF9B
UkcocGFnZSwgcGFnZSk7CiAgICAgQVNTRVJUX0FSRyhjbGllbnQsIGNsaWVudCk7CkBAIC0xMTg3
LDcgKzExOTEsNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZE1lc3NhZ2VUb0NvCiAg
ICAgaWYgKCFlbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGFkZENvbnNvbGVNZXNz
YWdlKG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVsLCBleGVjLCBhcmd1bWVudHMsIGxp
bmVOdW1iZXIsIHNvdXJjZVVSTCkpOworICAgIGFkZENvbnNvbGVNZXNzYWdlKG5ldyBDb25zb2xl
TWVzc2FnZShzb3VyY2UsIGxldmVsLCBleGVjLCBhcmd1bWVudHMsIGxpbmVOdW1iZXIsIHNvdXJj
ZVVSTCwgbV9ncm91cExldmVsKSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRk
TWVzc2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIGNvbnN0IFN0cmlu
ZyYgc291cmNlSUQpCkBAIC0xMTk1LDcgKzExOTksNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZE1lc3NhZ2VUb0NvCiAgICAgaWYgKCFlbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIGFkZENvbnNvbGVNZXNzYWdlKG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVs
LCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBzb3VyY2VJRCkpOworICAgIGFkZENvbnNvbGVNZXNzYWdl
KG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBz
b3VyY2VJRCwgbV9ncm91cExldmVsKSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6
YWRkQ29uc29sZU1lc3NhZ2UoQ29uc29sZU1lc3NhZ2UqIGNvbnNvbGVNZXNzYWdlKQpAQCAtMTIy
MSw2ICsxMjI1LDM1IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkUHJvZmlsZShQYXMK
ICAgICAgICAgYWRkU2NyaXB0UHJvZmlsZShwcm9maWxlLmdldCgpKTsKIH0KIAordm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjppbmNyZWFzZUdyb3VwTGV2ZWwoKQoreworICAgICsrbV9ncm91cExl
dmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgc2V0U2NyaXB0R3JvdXBM
ZXZlbCgpOworfQorCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmRlY3JlYXNlR3JvdXBMZXZl
bCgpCit7CisgICAgaWYgKG1fZ3JvdXBMZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisgICAg
CisgICAgLS1tX2dyb3VwTGV2ZWw7CisgICAgCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAg
ICAgICAgc2V0U2NyaXB0R3JvdXBMZXZlbCgpOworfQorCit2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OnNldFNjcmlwdEdyb3VwTGV2ZWwoKQoreworICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0
aW9uID0gMDsKKyAgICAKKyAgICBKU1ZhbHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVN
YWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbV9ncm91cExldmVsKTsKKworICAgIGNhbGxGdW5j
dGlvbihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAic2V0R3JvdXBMZXZlbCIsIDEs
ICZncm91cExldmVsVmFsdWUsIGV4Y2VwdGlvbik7Cit9CisKIHZvaWQgSW5zcGVjdG9yQ29udHJv
bGxlcjo6YXR0YWNoV2luZG93KCkKIHsKICAgICBpZiAoIWVuYWJsZWQoKSkKQEAgLTE4NTYsNiAr
MTg4OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc28KICAgICBK
U1ZhbHVlUmVmIGxldmVsVmFsdWUgPSBKU1ZhbHVlTWFrZU51bWJlcihtX3NjcmlwdENvbnRleHQs
IG1lc3NhZ2UtPmxldmVsKTsKICAgICBKU1ZhbHVlUmVmIGxpbmVWYWx1ZSA9IEpTVmFsdWVNYWtl
TnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGluZSk7CiAgICAgSlNWYWx1ZVJlZiB1
cmxWYWx1ZSA9IEpTVmFsdWVNYWtlU3RyaW5nKG1fc2NyaXB0Q29udGV4dCwganNTdHJpbmdSZWYo
bWVzc2FnZS0+dXJsKS5nZXQoKSk7CisgICAgSlNWYWx1ZVJlZiBncm91cFZhbHVlID0gSlNWYWx1
ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5ncm91cCk7CiAKICAgICBzdGF0
aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNW
YWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsx
ODk4LDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFy
Z3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJn
dW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsr
XSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gZ3JvdXBWYWx1
ZTsKIAogICAgIGlmICghbWVzc2FnZS0+d3JhcHBlZEFyZ3VtZW50cy5pc0VtcHR5KCkpIHsKICAg
ICAgICAgdW5zaWduZWQgcmVtYWluaW5nU3BhY2VJbkFyZ3VtZW50cyA9IG1heGltdW1NZXNzYWdl
QXJndW1lbnRzIC0gYXJndW1lbnRDb3VudDsKSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JD
b250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xs
ZXIuaAkocmV2aXNpb24gMzQ5MDUpCisrKyBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTQsNiArMTE0LDEwIEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZFNjcmlwdFByb2ZpbGUoS0pTOjpQcm9maWxlKiBwcm9maWxlKTsKICAgICBjb25zdCBWZWN0
b3I8UmVmUHRyPEtKUzo6UHJvZmlsZT4gPiYgcHJvZmlsZXMoKSBjb25zdCB7IHJldHVybiBtX3By
b2ZpbGVzOyB9CiAKKyAgICB2b2lkIGluY3JlYXNlR3JvdXBMZXZlbCgpOworICAgIHZvaWQgZGVj
cmVhc2VHcm91cExldmVsKCk7CisgICAgdm9pZCBzZXRTY3JpcHRHcm91cExldmVsKCk7CisKICAg
ICB2b2lkIGF0dGFjaFdpbmRvdygpOwogICAgIHZvaWQgZGV0YWNoV2luZG93KCk7CiAKQEAgLTIz
Miw2ICsyMzYsNyBAQCBwcml2YXRlOgogICAgIFNwZWNpYWxQYW5lbHMgbV9zaG93QWZ0ZXJWaXNp
YmxlOwogICAgIGxvbmcgbG9uZyBtX25leHRJZGVudGlmaWVyOwogICAgIFJlZlB0cjxOb2RlPiBt
X2hpZ2hsaWdodGVkTm9kZTsKKyAgICB1bnNpZ25lZCBtX2dyb3VwTGV2ZWw7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUu
anMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCShyZXZp
c2lvbiAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtNDcsNiArNDcsOCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZSA9IGZ1bmN0aW9u
KCkKICAgICB0aGlzLmNsZWFyQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsZWFy
LWNvbnNvbGUtc3RhdHVzLWJhci1pdGVtIik7CiAgICAgdGhpcy5jbGVhckJ1dHRvbi50aXRsZSA9
IFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2xlYXIgY29uc29sZSBsb2cuIik7CiAgICAgdGhpcy5j
bGVhckJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NsZWFyQnV0dG9uQ2xp
Y2tlZC5iaW5kKHRoaXMpLCBmYWxzZSk7CisgICAgCisgICAgdGhpcy5ncm91cExldmVsID0gMDsK
IAogICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluLXN0YXR1cy1iYXIiKS5hZGRFdmVu
dExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLl9zdGFydFN0YXR1c0JhckRyYWdnaW5nLmJpbmQo
dGhpcyksIHRydWUpOwogfQpAQCAtMTQ1LDYgKzE0NywxMSBAQCBXZWJJbnNwZWN0b3IuQ29uc29s
ZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxl
bWVudCgpOwogICAgICAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUoZWxlbWVu
dCwgdGhpcy5wcm9tcHRFbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIGlmIChtc2cuZ3JvdXAg
JiYgbXNnLmdyb3VwICE9PSB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICB0aGlzLnNldEdy
b3VwTGV2ZWwobXNnLmdyb3VwKTsKKyAgICAgICAgZWxlbWVudC5zdHlsZS5tYXJnaW5MZWZ0ID0g
KHRoaXMuZ3JvdXBMZXZlbCAqIDEwKSArICJweCI7CisgICAgICAgIAogICAgICAgICB0aGlzLnBy
b21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UpOwogICAgIH0sCiAKQEAgLTIwOSw2ICsy
MTYsMTIgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0gewogICAgICAgICByZXR1
cm4gcmVzdWx0czsKICAgICB9LAogCisgICAgc2V0R3JvdXBMZXZlbDogZnVuY3Rpb24oZ3JvdXAp
CisgICAgeworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cDsKKyAgICAgICAgdGhpcy5w
cm9tcHRFbGVtZW50LnN0eWxlLm1hcmdpbkxlZnQgPSAodGhpcy5ncm91cExldmVsICogMTApICsg
InB4IjsKKyAgICB9LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKCkKICAg
ICB7CiAgICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBAIC00NDMsMTkgKzQ1
NiwyMCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rv
ci5Db25zb2xlLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5
cGU7CiAKLVdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2
ZWwsIGxpbmUsIHVybCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNv
dXJjZSwgbGV2ZWwsIGxpbmUsIHVybCwgZ3JvdXApCiB7CiAgICAgdGhpcy5zb3VyY2UgPSBzb3Vy
Y2U7CiAgICAgdGhpcy5sZXZlbCA9IGxldmVsOwogICAgIHRoaXMubGluZSA9IGxpbmU7CiAgICAg
dGhpcy51cmwgPSB1cmw7CisgICAgdGhpcy5ncm91cCA9IGdyb3VwOwogCiAgICAgLy8gVGhpcyBf
Zm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQuIFRo
ZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNzYWdl
IGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2VudGF0
aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNs
aWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5tZXNz
YWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywg
NSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBwcm9w
ZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAgICB0
aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNl
LmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhpcy5f
Zm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQogCiBX
ZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22026</attachid>
            <date>2008-07-01 05:56:57 -0700</date>
            <delta_ts>2008-07-04 00:30:53 -0700</delta_ts>
            <desc>minor mistake fix</desc>
            <filename>MyThirdPatch4.txt</filename>
            <type>text/plain</type>
            <size>11314</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDkxMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDgtMDYtMzAgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkZWQgY29uc29sZS5ncm91cC9ncm91cEVuZDsKKyAgICAgICAgCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE1OTgKKworICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0Nv
bnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpD
b25zb2xlOjpncm91cEVuZCk6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOiBBZGRl
ZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91
cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q29uc29sZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKTogQWRkZWQgZ3Jv
dXAuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250
cm9sbGVyKTogQWRkZWQgbV9ncm91cExldmVsLgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
Q29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ29uc29sZSk6IEFkZGVkIGdyb3VwIGFyZ3VtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6aW5jcmVhc2VHcm91cExldmVs
KTogSW5jcmVtZW50cyBtX2dyb3VwTGV2ZWwuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
b250cm9sbGVyOjpkZWNyZWFzZUdyb3VwTGV2ZWwpOiBEZWNyZW1lbnRzIG1fZ3JvdXBMZXZlbC4K
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFNjcmlwdENvbnNvbGVN
ZXNzYWdlKTogQWRkZWQgZ3JvdXAgYXJndW1lbnQuCisgICAgICAgICogcGFnZS9JbnNwZWN0b3JD
b250cm9sbGVyLmg6IAorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVk
IGdyb3VwIHByb3BlcnR5IHRvIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS4gQWRkZWQgV2Vi
SW5zcGVjdG9yLkNvbnNvbGUuc2V0R3JvdXBMZXZlbC4KKwogMjAwOC0wNy0wMSAgTmlrb2xhcyBa
aW1tZXJtYW5uICA8emltbWVybWFubkBrZGUub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFu
dHRpICYgRXJpYy4KSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJ
KHJldmlzaW9uIDM0OTA1KQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC04Myw0ICs4MywxMCBAQCBKU1ZhbHVlKiBKU0NvbnNvbGU6
OnByb2ZpbGVFbmQoRXhlY1N0YXRlCiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKK0pT
VmFsdWUqIEpTQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBh
cmd1bWVudHMpCit7CisgICAgaW1wbCgpLT5ncm91cChleGVjLCBhcmd1bWVudHMpOworICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBX
ZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNv
bGUuY3BwCShyZXZpc2lvbiAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjY2LDYgKzI2NiwzMiBAQCB2b2lkIENvbnNvbGU6OnByb2ZpbGVFbmQo
RXhlY1N0YXRlKiBleGVjCiAgICAgUHJvZmlsZXI6OnByb2ZpbGVyKCktPnN0b3BQcm9maWxpbmco
ZXhlYywgdGl0bGUpOwogfQogCit2b2lkIENvbnNvbGU6Omdyb3VwKEV4ZWNTdGF0ZSogZXhlYywg
Y29uc3QgQXJnTGlzdCYgYXJndW1lbnRzKQoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAgICBpZiAoIXBh
Z2UpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVy
KCktPmluY3JlYXNlR3JvdXBMZXZlbCgpOworICAgIAorICAgIHJldHVybiBsb2coZXhlYywgYXJn
dW1lbnRzKTsKK30KKwordm9pZCBDb25zb2xlOjpncm91cEVuZCgpCit7CisgICAgaWYgKCFtX2Zy
YW1lKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgp
OworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3Bl
Y3RvckNvbnRyb2xsZXIoKS0+ZGVjcmVhc2VHcm91cExldmVsKCk7Cit9CisKIHZvaWQgQ29uc29s
ZTo6ZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewog
ICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJbmRleDogV2ViQ29yZS9wYWdl
L0NvbnNvbGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCShyZXZpc2lv
biAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTc2
LDYgKzc2LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGFzc2VydENvbmRp
dGlvbihib29sIGNvbmRpdGlvbiwgS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3Qm
IGFyZ3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZShLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0
IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlRW5kKEtKUzo6
RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAgICAgICB2b2lk
IGdyb3VwKEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwor
ICAgICAgICB2b2lkIGdyb3VwRW5kKCk7CiAKICAgICAgICAgdm9pZCBmaW5pc2hlZFByb2ZpbGlu
ZyhQYXNzUmVmUHRyPEtKUzo6UHJvZmlsZT4pOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29s
ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCShyZXZpc2lvbiAz
NDkwNSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzgs
NiArMzgsOCBAQCBtb2R1bGUgd2luZG93IHsKIAogICAgICAgICBbQ3VzdG9tXSB2b2lkIHByb2Zp
bGUoaW4gRE9NU3RyaW5nIHRpdGxlKTsKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlRW5k
KCk7CisgICAgICAgIFtDdXN0b21dIHZvaWQgZ3JvdXAoKTsKKyAgICAgICAgdm9pZCBncm91cEVu
ZCgpOwogICAgIH07CiAKIH0KSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAJ
KHJldmlzaW9uIDM0OTA1KQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsMjEgKzE1MiwyMyBAQCBKU1ZhbHVlUmVmIEluc3BlY3Rv
ckNvbnRyb2xsZXI6OmNhbGxGdW5jCiAvLyBDb25zb2xlTWVzc2FnZSBTdHJ1Y3QKIAogc3RydWN0
IENvbnNvbGVNZXNzYWdlIHsKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1l
c3NhZ2VMZXZlbCBsLCBjb25zdCBTdHJpbmcmIG0sIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcm
IHUpCisgICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwg
Y29uc3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBn
KQogICAgICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgbWVz
c2FnZShtKQogICAgICAgICAsIGxpbmUobGkpCiAgICAgICAgICwgdXJsKHUpCisgICAgICAgICwg
Z3JvdXAoZykKICAgICB7CiAgICAgfQogCi0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJj
ZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdz
LCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJnTGlz
dCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAg
ICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRBcmd1
bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwodSkK
KyAgICAgICAgLCBncm91cChnKQogICAgIHsKICAgICAgICAgSlNMb2NrIGxvY2s7CiAgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytpKQpAQCAtMTc5LDYgKzE4
MSw3IEBAIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9yPFByb3RlY3RlZFB0cjxK
U1ZhbHVlPiA+IHdyYXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQgbGluZTsKICAgICBTdHJp
bmcgdXJsOworICAgIHVuc2lnbmVkIGdyb3VwOwogfTsKIAogLy8gWE1MSHR0cFJlcXVlc3RSZXNv
dXJjZSBDbGFzcwpAQCAtMTAyMyw2ICsxMDI2LDcgQEAgSW5zcGVjdG9yQ29udHJvbGxlcjo6SW5z
cGVjdG9yQ29udHJvbGxlcgogICAgICwgbV9yZWNvcmRpbmdVc2VySW5pdGlhdGVkUHJvZmlsZShm
YWxzZSkKICAgICAsIG1fc2hvd0FmdGVyVmlzaWJsZShFbGVtZW50c1BhbmVsKQogICAgICwgbV9u
ZXh0SWRlbnRpZmllcigtMikKKyAgICAsIG1fZ3JvdXBMZXZlbCgwKQogewogICAgIEFTU0VSVF9B
UkcocGFnZSwgcGFnZSk7CiAgICAgQVNTRVJUX0FSRyhjbGllbnQsIGNsaWVudCk7CkBAIC0xMTg3
LDcgKzExOTEsNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZE1lc3NhZ2VUb0NvCiAg
ICAgaWYgKCFlbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGFkZENvbnNvbGVNZXNz
YWdlKG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVsLCBleGVjLCBhcmd1bWVudHMsIGxp
bmVOdW1iZXIsIHNvdXJjZVVSTCkpOworICAgIGFkZENvbnNvbGVNZXNzYWdlKG5ldyBDb25zb2xl
TWVzc2FnZShzb3VyY2UsIGxldmVsLCBleGVjLCBhcmd1bWVudHMsIGxpbmVOdW1iZXIsIHNvdXJj
ZVVSTCwgbV9ncm91cExldmVsKSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRk
TWVzc2FnZVRvQ29uc29sZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxpbmVOdW1iZXIsIGNvbnN0IFN0cmlu
ZyYgc291cmNlSUQpCkBAIC0xMTk1LDcgKzExOTksNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZE1lc3NhZ2VUb0NvCiAgICAgaWYgKCFlbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIGFkZENvbnNvbGVNZXNzYWdlKG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVs
LCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBzb3VyY2VJRCkpOworICAgIGFkZENvbnNvbGVNZXNzYWdl
KG5ldyBDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5lTnVtYmVyLCBz
b3VyY2VJRCwgbV9ncm91cExldmVsKSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6
YWRkQ29uc29sZU1lc3NhZ2UoQ29uc29sZU1lc3NhZ2UqIGNvbnNvbGVNZXNzYWdlKQpAQCAtMTIy
MSw2ICsxMjI1LDM1IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkUHJvZmlsZShQYXMK
ICAgICAgICAgYWRkU2NyaXB0UHJvZmlsZShwcm9maWxlLmdldCgpKTsKIH0KIAordm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjppbmNyZWFzZUdyb3VwTGV2ZWwoKQoreworICAgICsrbV9ncm91cExl
dmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgc2V0U2NyaXB0R3JvdXBM
ZXZlbCgpOworfQorCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmRlY3JlYXNlR3JvdXBMZXZl
bCgpCit7CisgICAgaWYgKG1fZ3JvdXBMZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisgICAg
CisgICAgLS1tX2dyb3VwTGV2ZWw7CisgICAgCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAg
ICAgICAgc2V0U2NyaXB0R3JvdXBMZXZlbCgpOworfQorCit2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OnNldFNjcmlwdEdyb3VwTGV2ZWwoKQoreworICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0
aW9uID0gMDsKKyAgICAKKyAgICBKU1ZhbHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVN
YWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbV9ncm91cExldmVsKTsKKworICAgIGNhbGxGdW5j
dGlvbihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAic2V0R3JvdXBMZXZlbCIsIDEs
ICZncm91cExldmVsVmFsdWUsIGV4Y2VwdGlvbik7Cit9CisKIHZvaWQgSW5zcGVjdG9yQ29udHJv
bGxlcjo6YXR0YWNoV2luZG93KCkKIHsKICAgICBpZiAoIWVuYWJsZWQoKSkKQEAgLTE4NTYsNiAr
MTg4OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc28KICAgICBK
U1ZhbHVlUmVmIGxldmVsVmFsdWUgPSBKU1ZhbHVlTWFrZU51bWJlcihtX3NjcmlwdENvbnRleHQs
IG1lc3NhZ2UtPmxldmVsKTsKICAgICBKU1ZhbHVlUmVmIGxpbmVWYWx1ZSA9IEpTVmFsdWVNYWtl
TnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGluZSk7CiAgICAgSlNWYWx1ZVJlZiB1
cmxWYWx1ZSA9IEpTVmFsdWVNYWtlU3RyaW5nKG1fc2NyaXB0Q29udGV4dCwganNTdHJpbmdSZWYo
bWVzc2FnZS0+dXJsKS5nZXQoKSk7CisgICAgSlNWYWx1ZVJlZiBncm91cFZhbHVlID0gSlNWYWx1
ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5ncm91cCk7CiAKICAgICBzdGF0
aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNW
YWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsx
ODk4LDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFy
Z3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJn
dW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsr
XSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gZ3JvdXBWYWx1
ZTsKIAogICAgIGlmICghbWVzc2FnZS0+d3JhcHBlZEFyZ3VtZW50cy5pc0VtcHR5KCkpIHsKICAg
ICAgICAgdW5zaWduZWQgcmVtYWluaW5nU3BhY2VJbkFyZ3VtZW50cyA9IG1heGltdW1NZXNzYWdl
QXJndW1lbnRzIC0gYXJndW1lbnRDb3VudDsKSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JD
b250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xs
ZXIuaAkocmV2aXNpb24gMzQ5MDUpCisrKyBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTQsNiArMTE0LDEwIEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZFNjcmlwdFByb2ZpbGUoS0pTOjpQcm9maWxlKiBwcm9maWxlKTsKICAgICBjb25zdCBWZWN0
b3I8UmVmUHRyPEtKUzo6UHJvZmlsZT4gPiYgcHJvZmlsZXMoKSBjb25zdCB7IHJldHVybiBtX3By
b2ZpbGVzOyB9CiAKKyAgICB2b2lkIGluY3JlYXNlR3JvdXBMZXZlbCgpOworICAgIHZvaWQgZGVj
cmVhc2VHcm91cExldmVsKCk7CisgICAgdm9pZCBzZXRTY3JpcHRHcm91cExldmVsKCk7CisKICAg
ICB2b2lkIGF0dGFjaFdpbmRvdygpOwogICAgIHZvaWQgZGV0YWNoV2luZG93KCk7CiAKQEAgLTIz
Miw2ICsyMzYsNyBAQCBwcml2YXRlOgogICAgIFNwZWNpYWxQYW5lbHMgbV9zaG93QWZ0ZXJWaXNp
YmxlOwogICAgIGxvbmcgbG9uZyBtX25leHRJZGVudGlmaWVyOwogICAgIFJlZlB0cjxOb2RlPiBt
X2hpZ2hsaWdodGVkTm9kZTsKKyAgICB1bnNpZ25lZCBtX2dyb3VwTGV2ZWw7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUu
anMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCShyZXZp
c2lvbiAzNDkwNSkKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtNDcsNiArNDcsOCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZSA9IGZ1bmN0aW9u
KCkKICAgICB0aGlzLmNsZWFyQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsZWFy
LWNvbnNvbGUtc3RhdHVzLWJhci1pdGVtIik7CiAgICAgdGhpcy5jbGVhckJ1dHRvbi50aXRsZSA9
IFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2xlYXIgY29uc29sZSBsb2cuIik7CiAgICAgdGhpcy5j
bGVhckJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NsZWFyQnV0dG9uQ2xp
Y2tlZC5iaW5kKHRoaXMpLCBmYWxzZSk7CisgICAgCisgICAgdGhpcy5ncm91cExldmVsID0gMDsK
IAogICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluLXN0YXR1cy1iYXIiKS5hZGRFdmVu
dExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLl9zdGFydFN0YXR1c0JhckRyYWdnaW5nLmJpbmQo
dGhpcyksIHRydWUpOwogfQpAQCAtMTQ1LDYgKzE0NywxMSBAQCBXZWJJbnNwZWN0b3IuQ29uc29s
ZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxl
bWVudCgpOwogICAgICAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUoZWxlbWVu
dCwgdGhpcy5wcm9tcHRFbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIGlmICh0eXBlb2YgbXNn
Lmdyb3VwID09PSAibnVtYmVyIikKKyAgICAgICAgICAgIHRoaXMuc2V0R3JvdXBMZXZlbChtc2cu
Z3JvdXApOworICAgICAgICBlbGVtZW50LnN0eWxlLm1hcmdpbkxlZnQgPSAodGhpcy5ncm91cExl
dmVsICogMTApICsgInB4IjsKKyAgICAgICAgCiAgICAgICAgIHRoaXMucHJvbXB0RWxlbWVudC5z
Y3JvbGxJbnRvVmlldyhmYWxzZSk7CiAgICAgfSwKIApAQCAtMjA5LDYgKzIxNiwxMiBAQCBXZWJJ
bnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiByZXN1bHRzOwog
ICAgIH0sCiAKKyAgICBzZXRHcm91cExldmVsOiBmdW5jdGlvbihncm91cCkKKyAgICB7CisgICAg
ICAgIHRoaXMuZ3JvdXBMZXZlbCA9IGdyb3VwOworICAgICAgICB0aGlzLnByb21wdEVsZW1lbnQu
c3R5bGUubWFyZ2luTGVmdCA9ICh0aGlzLmdyb3VwTGV2ZWwgKiAxMCkgKyAicHgiOworICAgIH0s
CisKICAgICBfdG9nZ2xlQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAg
dGhpcy52aXNpYmxlID0gIXRoaXMudmlzaWJsZTsKQEAgLTQ0MywxOSArNDU2LDIwIEBAIFdlYklu
c3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZSA9IHsKIAogV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJv
dG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5WaWV3LnByb3RvdHlwZTsKIAotV2ViSW5z
cGVjdG9yLkNvbnNvbGVNZXNzYWdlID0gZnVuY3Rpb24oc291cmNlLCBsZXZlbCwgbGluZSwgdXJs
KQorV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlID0gZnVuY3Rpb24oc291cmNlLCBsZXZlbCwg
bGluZSwgdXJsLCBncm91cCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICB0aGlz
LmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVybCA9IHVy
bDsKKyAgICB0aGlzLmdyb3VwID0gZ3JvdXA7CiAKICAgICAvLyBUaGlzIF9mb3JtYXQgY2FsbCBw
YXNzZXMgaW4gdHJ1ZSBmb3IgdGhlIHBsYWluVGV4dCBhcmd1bWVudC4gVGhlIHJlc3VsdCdzIHRl
eHRDb250ZW50IGlzCiAgICAgLy8gdXNlZCBmb3IgaW5saW5lIG1lc3NhZ2UgYnViYmxlcyBpbiBT
b3VyY2VGcmFtZXMsIG9yIG90aGVyIHBsYWluLXRleHQgcmVwcmVzZW50YXRpb25zLgotICAgIHRo
aXMubWVzc2FnZSA9IHRoaXMuX2Zvcm1hdChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1
bWVudHMsIDQpLCB0cnVlKS50ZXh0Q29udGVudDsKKyAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9m
b3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA1KSwgdHJ1ZSkudGV4
dENvbnRlbnQ7CiAKICAgICAvLyBUaGUgZm9ybWF0ZWRNZXNzYWdlIHByb3BlcnR5IGlzIHVzZWQg
Zm9yIHRoZSByaWNoIGFuZCBpbnRlcmFjdGl2ZSBjb25zb2xlLgotICAgIHRoaXMuZm9ybWF0dGVk
TWVzc2FnZSA9IHRoaXMuX2Zvcm1hdChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVu
dHMsIDQpKTsKKyAgICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXku
cHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA1KSk7CiB9CiAKIFdlYkluc3BlY3Rvci5D
b25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSB7Cg==
</data>
<flag name="review"
          id="9693"
          type_id="1"
          status="-"
          setter="aroben"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>22063</attachid>
            <date>2008-07-03 06:09:39 -0700</date>
            <delta_ts>2008-07-03 06:09:39 -0700</delta_ts>
            <desc>screenshot of console.group usage in Firebug</desc>
            <filename>26d0c7eda57989ede5ba116ae3a0de9b.png</filename>
            <type>image/png</type>
            <size>14439</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAAATMAAADJCAIAAADARELCAAAB1mlDQ1BJQ0MgUHJvZmlsZQAAeJyV
kT9oE3EUxz+/CyUOIbQaimT6DRI6RLkmgp00/SvaQ44aMcmil7s0qc1df1yuUamDQ2dHW3ARXArq
4KYitptdVESQFtx1cFJxkXIOP0MGCcUHDz7vC4/33vdB4rSjVNsA/CAKF85PyUq1JpN7JDEYYYis
43bUpG1bDIxfnxAAH086SrWzz96c2ZDrI/uPX3679jm3O7gPgHRYqdZA5IFMU3MJyNQ1l4HMzUhF
IFpAxm05Hog7QD4sL0yD2ALSTc3PgXRd8y6Q7rrNCMQeYAbeUgDGEWDCa3RcMErAotdxfTC2gLO+
v+KB8RUYc1UYQWIYOFGp1qReufsFzmXBuNfXquvwtASj230ttwzHXsGL/b724z0CEMfrncViAQCR
ysLQThx/jyF5HQ7exfHvzTg+uA+Jn7B9yV0Nu3/9EuItHFbrm3UNH6IeDWLtCwAmPCrB1bswDzzY
gdwGHF0DGyiDUSz2UnsIQGpm1rJkwTTH5+xDXv7/4bdXe3MMINUIrlwGRoGxG85Fu8fMMIuFhaSA
ick4c9igfwow/AQeJk1r3nq9ufbPnKhxKwKYXlG3w6VmK5KTSrUbeXkhcE/lZcE0J/gDn1uG7+2n
O8IAAAAJcEhZcwAACxMAAAsTAQCanBgAACAASURBVHic7Z17XFR1/v9fB84wAzhc5SKooHjLy6CS
aeVtUPNSCW26tYW/tRvW1ha2bYVb20Z91y/W92vYfgttXWgTN5PasE26qBhmQTiQQwIpKGhgggw4
g8wMZ4b37485cwGG26A56uf5mD9mPuf9+XzenzPznvP+fM75vN+cTqcDg8FwMzyutAIMBsMJXEdH
x5XWgcFgdIc3Go1XWgcGg9EdnogGW+dCq2aYzKPT06ep6bzeYLyoa/HhLtY2dhB1zp8/XyqVXg5F
GYzrClcs84ej3/pqjgTHrQ0NCzebTaYgP72xA40V+/btu/nmm728vC6HogzGdYXn888/P9g6IWGR
tc3Cj7U/T508ieclXlLvQ4WHduXuDgoMbG1tHTNmDAAPD7a2xGC4Du9CHZnMp80omXZDFADP8z+2
Vx58JfX1kImz/OW6srIytVqtUChWr159qVVlMK4jBurN6i60yH2l4H0sH3/48cTsSA/vwn97jLpp
2Ow7UxK/eXr7Qc9bb4VgfPTRR5tbWl1wkhkMhg3P5557biByxV99KGv53iNoYsWP1Ue+Kxl55tOp
um88QhUew0I8ZPKZt8wdbqj7eH/Rr359X8LKOzq1dSNGT7zcql9ZjO1aTWu70djRyfEST87cVL73
PyWG0NGhPp5XWrX+6Dh/5GBBifq4ThroT+0XzLyPxLOluqxIfXZYZLgPm4W4BwO9Zk65cXHOzn8F
//hhhJ/nhBM5kyN9Wj1HeJ6tC/HkSOrJ+Uc+8qe/3jR524iEhwWhw0iywV0zjVX/nZJRF3XH/zx/
u4+LA/kFaa/9OGvb5z+02AqWPvU/t6HykwMH5k2bO3X4L7MAZjicvU2lFT/4+EXPS1g2MXAgXXcc
+Sjnm3Pw8fPDTw3NeQVV0UufXDmxtbbk6DFEzp4e7Mr8hnHp4Ts7Owci5+8//HeP/d6ka/Lc9xJG
BB/TcK1tjaPDDCGRIZ1nK2Ewcr6BY2bM7fDw4DgPD2nAAJsV6SQCcKFDGFw1F6nd+8Zrn55Qrv/f
VeNcuMHz87t/SP8OCJiR+EjCdJnxQrX6e3h1dpp4ADx1/iIjANBJACSRc5WTWo59e6y+9vM8VfT/
my3pvyIZ9ICPYs3/my8Bzo+QTRwW2dnZyXlKAHj8Yuoz+mOglmlB+lVaS6v2+9ZhmqbzE0K8Ro3w
r6085u07PGg0x9cdbp/1pEdnJ8/zQcFBg7TMTgCQEtfZeWrf269/hbvviN6/Y28rZAvX/uHuuHAY
f87f8d7e708DwOgV6X9c7mOsefuFTMxZGvrT5werDbLRtz7x+L1RPmj/qfjdrTsqWgHZuKSnHpk9
0gcwHtv3wft537UCwLiUvy776NMTAAo2P31mRcpTy2MGoSfQovr8OwDjEl54cJEUAIJDI8YCaK8h
ANTZ2dnZifa6D9/5+8HqVkC2MOmpu2ePNP789Wv/tescAGDcrfc8eO9cOdoPvr1xP6YvCP0p76Du
ifQXJg7OW+gkAHzolHETPcfIzmz9VCtcNBhPf5Kdj/GxAeePVOimPfjAvIsnvs0/WKYVAInftLm3
zbvB77vc90q1ANT/2FoJ8HJvybDJiyKDRlh8HMsfi6Hxh88+LWzQA5LQ+Ql3TA2VDUozxiVhQLMK
g8Hwj5xdpe/+SX+m6vOffI+d/DnGv2PWpJBjJxpOnDlvam+h6n01knG1Z+rzvyxo+vlM5IgRLitk
am9Da8WHO1SzViwMgOHg+4d1wPnvP937/emwhQ//9a9/evi2CZ4AYGo2GCoO5p0MW7riptGG04df
/1exuf3Y/6bvqJAufC7tmVtl1TvSPzwP/LhnS2bed4ZxS554JmXtPXN8vUbNmiwDMG5J0t1zBq1n
Y20dgIXLZvd+tdXt+d/XD1b7rf3TS2tv9T+4I0PVApi8565N+Wt62j03BVQf3qX62QxA29zaWnEw
rwgLl8zxdXFyevFs89nvvjykBbxHjfaFuU0QGiqOnMDYaVPCjXWHdn1ZppVPvuueu6YF6ssLcg+e
7Jg0f+FoCSAZvXD5HXOnyjVabau26+OZhpO5uYUNksmrku6awDcW5h5sdU01xtAY0Kxiz6efhetr
J9PRvW2TymrqVkW3zZoQrTpWV9nsMTkyIJg7X9jg9W1La2jQ0ZEjQtrKd3rHrZEERbiqkhGQ3fOn
F+aGmyWqg3uNEk/AJyAEwLmDuTuEBSuWKm1WIbvp4T/eGwvzmB++e+N07U/NZyXnAJyr/PoQzgGA
ur69vU59Ggh7+NGVE6VAVAwAY3QoKk6PmTJ9ZODgvVnRX+zdktpPq88BOP394a+8zhkBw4kGXdyU
qWOav/30XwfPnTUAaL7QjnBPCQBM/9NrD4UPWgkr+uN7dh0HEDrh1tsWj4VQB0Ayev6Dd0z1BH46
pAIwbe6tI4Ilw2+dWv7vslOnzy9cGB3sjdOCf/TIER6ekQVljd2aNJyv1wLQ/qQ+ilYAONNkQAC7
av7i8BzH9XasvKRgwki/kpMdfKdx3pSwE98FfnX0zK9Hno0bP6aovO6bRp9J0aHjhqOmsennmEfW
LV0mkUgAlJchmJP00awTRGGO4yz1/EP9OY7rsBX6TErY9PzIvE/2Hj6cV3H486S/pM+RcwD8A+Qc
x9mrmzkACIgYNXLkqOCkObw8Ssadtjct9mY2GQFwXOfglAQABARHAOeKCsrumjTX0TodRmCx3YCI
kSP9wkdOmIMRkbLDmU+/fww3JSTNi+Kq88o4jhflA0L9XVACADgA8J685kGlX1clvAP8LK1znAnW
c2rtg+c4yyyD6+Q4rtNsU9qufqel5cDQkJBQ/wU3ePqEe7moImMoeHC9Y/b0PPxt0fGTtcuW3mas
yv/31+XLAn+cNTHsm/K6D076BIVFzAzSS2Qep0bdHTYy2svLy1JLMXN+QHBYH806BQCM6OQ4gLP/
nDgA4Dju/PHiSmPUPb97ZtUUb8DQeKHDcvDcdwcrzrceLzh4GvCeMD4sMjoAgLFNEjBu+vRxIX6c
2ewbPT4AOLd7x8Fzra31NTWtHZzMzw9A/anaNn3nYPUcccuyKYDh2Psb/7mv7lzr+fP1FYf3fHi4
noPFGDjON2xyAACjnguZPn3qqBA/E6c7Vw94z7h11jjD2bMAhLZ2x9G5CACOl/Y4iyaz2KZ/+AgA
lUfKWo2648dqAESM8LdWhFVcfA/Lmec475BwHwAmAy8fOX78yAAfdJLrOjJcpq9r5swbF3bOnO/h
4WFsPff98RPTgtqnjRv9xZGafdrxC6ZFLfc/KQ0ebVqafuaj//xqYlQf7fSP5Xct8+I5juOkgNF+
+ZRxHMe1ny7K+vi9LABA+IzV8eN9OSOkAIy1b/3lBQAIn7v+N9M5KZ5/9jdvv/mv9zb/xSL75OtT
p9/3x9UX39xdlvtKWS4Q+LvX/2vqDGVU7oljH7/1/PnfvXXf1MGpyo96/L+fzd3+zoHvPn7tu48t
ZTNW32gZvQQcxwWtfuFp4c23C97bXAAAWPr06zMWTin4uGzzC2XjZ0zxxs9fv194x6wVttG5fs3k
u1a3XK95scx/4qI7W02ffFeS8/cSAFEzVyydHMTBYK/I8w6NSACB4zhu2MR779bn7Tl0MC/nIAD4
3fnIuCB2zfzF4Zqbm/sV6jj3449v3i14B56oPlN1YdiquZNGDRO+N46e97vNnCf/z3+9v2hs+4gZ
qz285JdRU7Ox3WiGp9RH6gkAxqqXUzKw9A8vJY7Rao1+fo4rm+b2diPg6eMj7VZbKvXx9LTL2Bpz
AWO7VtTHz8fpbNXY3m4GpD7ikwfm9najp4+PdMgdDxZzh0Ho9JDIvAbXodlgEAAPmYztT7gy9HXN
tAsNC/GLubH1RFFYgPei+JtM45Z/Xlbd6j9mLufhwXF33bH8WOkBb50xeLhfv00NQVOZr+NyVSdn
BAztRo7j/f27rWPxvr7dV7a61XYqMyhkvv4y374Fuhy29TfUjgcLL/V2pT/e26VqjEsF19LS0r8U
YNL+bL6oIS+5SSJ//+O9fr4+K29fJpNdwTU7s7HdaP4lLz4Mxi8Id+HChUFVeOudrNkzJsfdOPsy
KcRgMDBAb9YGEU0MuDAtAkNa72EwGP3BD3aL84gbbqluommj2JYEBuMywrW1tV1pHRgMRnf4bw9/
AwAgqcz7ptk3XWF1XMVx01mbrk115IinJ1sZYlzF8JMm3wCg+fx5ne6aunhaxsVgXKWw6SKD4Y6I
a7PX3lrrtTcixnWFuDZ7LdmnZRAsrCbjqmZAT2AZL164cNHM855SX19f6eV4aMt4rCD/hDBm+W2x
LMC7jXZdS7sJnrzU18fH+tSrWdeiNYH39fPxsi5xtetajCZIff18BvlobDfMhovtQqeHRCaTSQbS
kK65UQ/v4GD5lVxq69C1aE3w5P0Cr6gal4Eu3qyTa+bFkx+8nbHne/tT7ytTt/56Sp8PjLqCueL9
D/dgefzS6Zfgeb+BXv/bP/trav65UY9vemaC1PoRi/98D9K27Ospfcvjr97449Yt+85ANis1PSkc
AMylO9LeLWkNW/z4hjsn1Hzy+pZ9ZxY/ufHOmKGGGWuvL35v284KezSBsMc3bohpV7/12vZqg6Uk
4PGNL0+Qnv/krdf2WYsWPL7xVxNc69p84uu8/T+Iu6i9b1j+2wVR/VW5WJL77xMYs+bRpZf812Cj
veaTVMfvImDU8oTfLJsZaTlY+sl77+6rEA/JRv06ed2tMXIAli+it6/JNU1++vqD//ygGb/o/kXj
5QAMP32d/Z+65Wvvj7psz6fyXXcRdfs1N2Su+/MhIHj2b1LuvUlmaKlSlcDH1X1LfcF5BQIGr0Fu
uO6lrYFapkWgwyTuoOZMAIycT8Ssh+6PNMl4w+lvd31ZgdG3/HbJDTCYhkf4mo5zAGAoOXLy7jtj
fGCsKyhpBQCTfdeayezKhmxHzOeLX9600wBMX/nQyrhIo+acuuSkjOs4+O72agOW/PYPN0eafiw7
JeO50wff3VdtGLfkt/fdHFn/Q5lhmItfjXC2ZP8PjZLQabcvmmpuOnm2w2cA7XjPuHPpWPh79yoq
lOz6+xGN34qH748aQOAwp4htj1742yVRutMVe78syX93U51hw6O3hh99L/3dklaMXvjUWiVf//X/
bf/ygy0vmDZsXhjuKdbq5WtyVRMAOLE/f+zoe8bKLO2YetnCdwkGjr692eaiPYcATP7Na0/eIQWA
0AgxiuzFI//evjW3uB3wiZzx0BOPzRntazz5nz+++MXchxJ//nh7cTNilv/+T0lzpDAe+WDrP/OK
mwEg5s//SJsohbHhyNY3thbXtwM+MxIeeuzXc7r+6V4s2vH2m/llACYvejTlwXm2o5aYCd1PgyC4
PnoAgEx0oD3Fc+ETHjs7HIA5oGHXlxVhE2fFxYpRvGqsVUq+qbwzJq7lh29OD7FvZ3yf/6kBGLfy
Dw8ujgKAwOGRMVOA9gojABlkvsPDhw9fHgOgRi+OIHB4+PCFy13u0Wy2BDfw9JYHBATMHGkpFZpL
Duw7clIDAEE3PnDPtIq899WInuLffKTSsOKBu5uPfluJGyJGBnsKP+W9+xnGxfo3H61sFCRBE25P
WBR4vviIBoB279/fnn7nAzePdP3iEjYxNi42BrFxN00e/nxGfkXel+cnKz4saQVGP/X7X8VIgeF3
pj508aXt33z0waGbn1xoq3gZvibN53klD98zy8FzNlQd/LygsgFA6IT5ty+agp8uzcC7LJN021V9
ruYkgBV3zZd1La/44OXNucUjVvz+tY2/j64vezP15aNazmxqb0Zz3vbt3NzVM4JRk7+zqp3jGks2
5xU3Rya89s6bLz19dyDHce1HX/zj5uL6EY+98trTCdFleW+m5hy1/fVYGn8zv2zF0xs3/n5xxf7M
fxQ12vo1mUzdtDeZTE73gw/mDJx7d/OWLVu2bNnyZsG5LgeMlu4Ex06NCJg8fTRaS0p+hvloQYls
3PSwwXQ2AHQNp1uBsEW3dPMnfWYtuwUwfLk17dnX3zv6czuA6JuVAUD1l1vXP/v6vqM/u9ylbOTU
Cd4QGr//17a/f15y0gAAF7/+4IMjJzUR0+YnJi69ZVKwJ9Deptc3VB6pxg3TJnh7or1Vq21qNwOw
RAarPHIuIHb62CBBc/zj/cckw6MjAEAybf6KKcOHcO2A/SvwiZkxXQYYTp8+U9MKyGYpY6zLEoHj
p4UBOK/rAC7P12SCJHR0kASaI3uPtXpYp/R1X39YUNlww+K771ZOaDxeuL+qVXaJBu7R169ZbLbb
dfXiD0fqgch7V98cGXXzb1bHAPU/nBI3rMx5+LUn77nrV/GRgEwCYFhQJID6vMy38jSBo8KkuPjT
j/VAZELSvJjIG+9eHQk0F/9woXvjOPrNoUNHTwFQV57tcnocjLOnoTri1GKdWnDE2AlTJkyYMmWi
JXpjDwN3LDBCGj13/k1AxVdffXngNG5fdqPcFoJhEB33gXi2JT0OhNz4m/Tn1k4Pg+F0yfa/Pv9J
RSsfcuMr6c+smB4Gw+k92//6+icVrnYauPiB3yqnjQaEk0c+z9r1tc7YWKcFvKctmzc1IiJm+vQY
L1Gz0fc8sko576YwL1FRW1gFydgl9y6+6ZYlc4MANJ03eoeE+QHwHj0x2t+bd1WxbufUP8IfADhI
AMg4h5PEe0tton1/TS4qIoCPXJx4mx/QUPh5aX07IOE445k6LYD645WVdecBnK1v4S7NwDnRMp3+
qAJDRwE4uPc7c3ctHX46DjUBhI8M5DjOLFjLhk19/e+v3rd4xtmyfW+++Psthxo4x+g3YoQom/dv
b3DUqMioifGPPfbYYwtHd+vc4nqZzd2V6qbgQAYPABi99K4VS1asWLLkjqn+3ev1OCmAEaNnzA4D
Dn+4tzXgthvHBHbYZQDAS9I1NM+gkYUNlwHnCsrO9TzmO+rGh1/82x9XTQFQUn6W4zjON3rFwy9u
+mOCDDhd8mOb6/0Omzz/zscfSoiUAJrqZiPf8xcBAN4Bwxw/Oozce5iPQzk4jjP3bGLwWM6p5X3n
ubID5wDZuKiRwTKgVV1pG29bzdHTAKQSMdZKX1+Tq4qYzJx3dMKSCYDmSNFx678AAAQGB4VETF6w
YMHCqSHcJRo4b/mhO012EDk/ccY7RWVl7zz/9sXHVt4yjG87e6yoHHNuuCEY9fV5Xxx7fL7s4Dc1
gE/UCF9LCMSOrtcx07ljhSf5+IeenTxy0wvZZWfOtvlOiQkG6r/47NjikbJjRfWAz5Rx/vYavhNj
I1Ffr7vIT1wUi9afzxp66mWbF/XFAGTMBFiigph9ALQTAHSarTXN5k4A6Oy0NWXuBAwd4MctGIcP
qjEuPs6Hu2i0ypg7CcDJctXxjkCjyQRp0MSYcBeW8meuXLHj2EfH3n/13YsPLY4bxbdrfiw9AsVS
+YkjGDN1VKhUayQA4D3qyw7UYOTEMaGmdktEPM8BnZoeCM0nvj+NsWPCvcx6TwDgIfEPk0CrV395
JHzehKAL5zvCovyIHM+P2f7RbCZAd6LsxORhnifKNIAkfITMDG8ZoNWfrW0cHhUsc+mehuUruHCy
vPK4ue3no3kffGUAbrl/SWCg369iP9559HD6O2GP3TUTGvWOtwsALL9/ntRs7vtrckUPy1ePzg6z
2TdmwcLqMwdP6QEymyXhkXK1Vqc3cCOmRuNii6aj03wpBg6At6ygONeYj3o289X33ty8t3DnC4U7
LWVz1s658aGX17ZtzN756sM7AQSvfu7F+WH8xVYAsAaNkQEGAGbDyXe27HxnCwAgcv4jyybCHy+/
sHbjq9mvPlEEIHjOfS8+cjNwUawETF/z4iMdr72z9+2UvQAQmfiX6ROD+x0G5+CNW8J9DWBlSDAT
AAkEi6xgJsDLLFhrCiYzAImUbE2ZzF6Qmg2CMP2udeaTbWPjggWDRgKQh0kQBJOZAFTv2ymu88vm
vfRqgiuRkYJveelJyXvv7ir5ZHvJJ5YiWYJiUWvxJ198Yv08ct6Di8ZcKNj9QYE1YKxs7D0Pzpe4
tCBmaDurKq5QFVs+8RNvUUZ4yiJW3Sb854va4i9yigF+4v2/vdEMgO8UBMETAAT7R8HMAxCavng/
BwDkMcvnRQsCoiZPLm6sUH2xu3XRbxZGu3I7x/IVGKr3/d+WfQBkoZPuXrXq5rHDBKFz5prnzH7v
7Tr00cajH1nOSMKDa+dFSARB6PtrckENAOZOHnxnpyAIQMyCJbVn9tSaeLMgjLrljtkdnxVXHnq/
8hAA+eTlo8Iihj5wAFxtbS2AFo2mre3iLbfe4lTIePFCm8EEXjbM39f2JIDJeNFogrT/qDYWQd7X
1/EhAtPFi0bw0t6eWxDr9Hq8L3RaXdG3314DT7TrW1uNgKenVC73BgCY9fp2o9HsKfWRe4v/gR16
fbvRCE+pXO49lFvtnYLRYOgww1Pm6yNxWBYUjMZOeEikkr6eqBLO7N6xDzcsXT0nvL1dcAyMhk7B
KKCf6kPA3KHTGQEz5AFX8kmDTsEodDtNQx74gGIaSH39pT1uJ/NSX35AD+w4FewnTtWAG++VgYzL
zfEJDOz6f8v7+Pj5dC2S+vhIfS5B/jRPL5mvl5P1fa+BhHrq5EyAqUPgOE/fbnkgPL1cducGAi/1
cyHO/iXHySiHPHDRPDgPD4CugV8zAAJLqvvLIotcfd99Zk8W//JSIubP9PX1bbtW9mc2NjZyHMeS
Xv+CcLxUyveyjshwDdENlkgkABUXF7e3t19ZhYZIQ0PDqZqT4RGuJyNjMNwBcQXIQv2Zn67SzKYX
L14E4OHh0UmdIyIi/P39+63CYLgzXZZhIkeNvFJ6MBgMR/gTPx6/0jowGIzusJUSBsMdYSE5GAx3
hFkmg+GOMMv8hdDp+pcx6KDToa+9bQPBBJ2zbQCMq4ur2TJ1SOTAceASMYCf/RWjNBexHPzmikpm
xyMxGzV7wMWiwUEsex28/eDnh7hNg2i8fCu4RDTUgONwoAkAyrfDzxuJG1DjzieF0R9Xs2XK8Z4W
tfuBU1dak94p3YK41ViVB70Kln0nRuCUEZETAMC2E6UmFw9sg6oRJODgY4Ps4xTkkVACvjIAmLYO
mmqEbcQ4P9QN9frLuGJczZYJyOUICwHUV1qP3mjBA08hJQ8vroTMeud41jLMiQIPQG13XNsboMjA
zBCAR+Bgdo5FzwLmQM6j2aEwMAZbNVACL3xwKUbBuBLYLfPQTpQ2dDlmqMPOPeg2Z+kp1gfF2eA4
8ZVbAwB1BxBrKYlHaQsA5K5HdjF2rgfHgVsj/s3XfIZ4a8XscrG1A1vEkvgNaLJ20XO/naEO6+PB
ceBiUdzU47ANHbauF8XWbIAOgAEbEnGoHOtjwXFYs1VsbZ1Vk53lAGCoQuI60TW1vc9dj+xDyF4H
jkPselG9Q3+DWok/r+zSrc9ILIgGJEjNRCAAoKEKqlNQH0NpOUrLRXPteaJgwJY1oiYbcm3NIXUB
wGNVCiY4mnQgsvKw435UscvmVQpZUeUQQEiiwkqxRGikVCUBlJZDjfpexXpDlUkA7a8lvZ6qVVTZ
SFo1AZRVRIJA+WkEUD1RZgIBlJRJ9bWUBEovIhIoCZSQQ0SkbaRaDRGROosAKqonQUvpCkKa2Iul
Ta2tVz0lgZJziIiKMglK0nfXyzI2SgUhmao1VJ1PAGmISEsJIIAyiyg/lZAmliRnkV4QxfY3klZl
79H2PiuBAErOovpqSgIl5RARpYHSivo5S0SUn04JCoKCUlIoOY205PxEZSUQkqleT5pqUoLS9vfX
rkAJoEx1/wow3BB0+SSQKp8SQEig3YWkFYiItLWUmUoApWRQZWOvYj1JB6UVdilRZRCSSBTXkgKU
X0+ZSlJmiAKZCkpXERHlJBNAyemkqhUPZShEWyWrPdRb3ne1TMvHpDTKyKC0ZAJI7cw0LWLVRESk
t7WgpwRQeqE46kK12FG1tVYGKCW/S4+2uplKSsgSxbKUpEgn0pNywIZRmUmKDPtHJyeqhpSgHKsq
qnRCSv/N2s4n46qj6zyTh+JWJKUCedjxEer1ACCPwrIEKIE3nsJX5b2K9cQI6Hv6mrZdvhIEAx0C
jM1IVNqrWLhvK2pViKlBXDTiN4kOnty6AdASd1Zw6qcJAPDA7Zg7G7evg7oS0c62/taXA0pYYn3r
mgCFWK4FFs8SRz1vmu2siEgVaO8AYJe31TU2Iz7OOopmjBkJ8BjvMKK+aTei+7Sh24kyAYCXVRWJ
DBjApqA6tTN3n3FVYLNRTTWlJxFAyRlUa7kiCFS0mxQgKChPJf6FOxHrhfxU0f8kIk091WupsVD0
b4lIlUUA1RJlOPyvi+/1VFQkeqEWJ1ZDVJROUFCtnogoK4mQLOpjuYLVCySI+pESlJYvNliptnuz
OWmUafUALRfDwnpqVBNAUIrXTCWoyHFQGlKA0vcTEWlUBFBerVhXraFGlb1upkJ0EFS7RaeXiHIS
SJE+oD9IVUYXSacnKh2kTCc9EWkoCZSc10+bQrVdE8ZVh90yMxMoJcs+nyTLj17RfT7ZU6wPclII
EF8Wv87yO7O88quJiDKVdssU3+spGXaxdKuZZSVbCxOo2qqAxTIBu0vcqCKFrXqy1TK1pAAhwW6o
WUmiTFYmQWH3Zou6/t00FvXQRKB0pViSkyVapmWeaXnttnqw+koCKHMA/qQ6o7sN9zxR1Gg/LQnp
vcyfbQiUClKk9S3EcF/Qv8jQELSk0ZDeYS4q6Emj6e+HRaTvUdFWOBA0GtJ27UPbaJ8SC1rSCiTo
iYiqc6yW2esYnLSm0ZCjauI1s8eU23LNT8kS17EGhdMTpdWQpk9XRdBTZRElgaCg2r4EGW7NZb+f
ycsRGGi/mweAlyEwEP0GfpL1qGgrHAiBgZB37UMeArm1Nf0J+EnweBrWJWLc/cjYhr5uIvJOWgsM
7LK39YIa8HKSJmbaWtSrcKY+rQAAFilJREFUgH8ieuGgH1RyeqLkgf3c8Kx8FzfMwYQsaI6i34Re
DLfl+t0F1lAF9XF0eGFKHGJCLkFriESEK+FlGQwnXL+WyWC4M1f303kMxrUKX1VVdaV1YDAY3eGD
hw+/0jowGIzuMG+WwXBH+GshXwKDcc3Bw8VcJqa21taLRs7X33+YbPD5uhgMRp/wez/99MyZMz0P
jBo1avbs2c5noa2qP4xb+k/rp5c+r34iLuAy6shgXH/wPO/8isfz/PAQpzfgDZ+kLv1nFDDrzR/S
V8jM4H0DrokcYgyGG8EvWbJk165dFy5ccCz19/dfsmRJL44up6nAHTziUu4ODxxAckUGgzF4PDx5
fuLEid1KJ06c6MnzHND9ZWqrLv2q5BhO1qDskx3/+eJg5ZlWDuAMp955ePbwoCDL67/2VFjk6wu3
3mItHL7iZXWryUmb7MVe7NXjxXMcd+OsWRUVFW1tYv7MYcOG3ThrlnNDNp/97N13i4Am4Ny/tjce
mbzsocgpoyU7H45L/QFYs+Xb34Wtv/mej9bOleVVPjb8QGxiKoAtnxWFFqy9N/1f8WN9KlqeDb+c
/zQMxrUBp2lpAVB76tTevXstRStWrIgeM6b3KqbsuSGFBsz+59l1k2UAYDi6csTCJuAPpU2rxvBH
t8xVftaG6f9TEPWScpcW419t3LqSbzsyb9SSNuD1yqZF4Wwtl8HoB96SAX7M2LGhoaGNjY2hoaFj
xo7ts4qxAzACHSYjx3kDAMdxgAcglXAcx3lJg9BJ0AscAC8OPl4cx3ESryCAAMHEXRs55xmMywpv
sxPLUtCSJUv6sxzrUc5qY94jFwPZwLZ/f7P0twEZzx8aC8xfP21kwD14PgvFf/v2mXj/wrcOYQKw
eNpoCbNLBqNf7JYZFBw8bty4oODg/qpwMoAHONiufiEpJ/fXjl2U9eeV4X8GgGVpH6WvGC3DE4Vv
18x/7N2VU8MAAMs+/P6F0eyCyWAMAE6r016ipkxtra0XLpp8/QMChtnvppgMba0XLpikvgEBAewe
C4MxQDiddUmWwWC4DzzzLhkMN4TnwEyTwXA7eHYPg8FwQwa6P7Pu9GkWy4vB+MXgwQ0orAERTZo0
6XJrw2AwLDBvlsFwR3i2AMRguCEe3MC40npeU+gGm0fBVUyG7rn/GFcLHh7gBvK60npeInRItKRY
Txx0lhFdqZiJ3ZIl3jVKcxHLwW+umHw+kUN2FfasQ+wrAKArBxc7aMVslG8Fl4iGGnAcDjQBwPYV
8OawIdv1NhlXCo+BbuS8NpDjPS1q9wOnBl9VAa0W+9OgvtC/sFNKtyBuNVblQa+yJzjSAhNmAlLr
Z7WLjYucgjwSSsBXBgDrDqC6EBsfgN96OM0DzHBbrjtvVi5HWIhLBsBDLkeIv6sdt+CBp5CShxdX
WhOcyRCvQHQwYITaITe1BABcMaToWcAcyHk0OxTGzIOmCHgDH9S4qjnjSuBh8dD6fTnl0E6UNnQp
MdRh557uc5ueYn1QnG3vNLcGAOoOINZSEo/SFgDIXY/sYuxcD44DtwZ1JgCo+Qzx1orZ5WJrB7aI
JfEb0GTtomd+dEMd1seD48DForipx2EHetZ12sVntsJElBsA4NDfoFbizyu71I24HRMCIRmOzNus
RQocPYBYDhIO2aViWVM51sWD4xAbjw25AFCTi/XZKN4p9lJq8VZ9kLoA4LEqBRMcspIFzkZ+Cu7/
C5tzXlWYzZ0DeVVWVvZMvqnKIYCQZM9LLTRSqpIASsux56XuKdYbqkwxC7peT9UqqmwUU0pnFZEg
UH4aAVRPlJlAACVlUn0tJYHSi4gESgIl5BARaRvFNLKWrLJF9SRoKV1BsCZgtrRpTw+rpyRQcg4R
UVEmQdlX1t1uaduddpGfSgAVVpOmlmBNYp0GSivqZ/i2/NlFtVSYSQBVCqStJIBSd5NGS/mpYu/q
TPGUVlcSQIV95rola/ZrVX9iDPcBnebOgbycWiYRkUCqfEoAIYF2F4pJnbW1lJlKAKVkUGVjr2I9
SQelFXYpUWUQkqypnLWkAOXXU6bSnvs9UyEmk89JJoCS00llzbScoRBtlYi0KtGqqYdlWj4mpVFG
BqUlE0Dq3k2zm2U66UJPSlCORQc9KS2WqSclKFPds70uWDSx2I/Floq0VJhKSBUF1JkOlqkky6lV
7afGXs6nHZsmjKuEIa8A8VDciqRUIA87PkK9HgDkUViWACXwxlP4qrxXsZ4YAX1Pf9HH+kaCYKBD
gLEZiUp7FQv3bUWtCjE1iItG/CZxnib3slaVAIDgdPYmAMADt2PubNy+DupKRA9mI2m3LtqqUQBM
iwQA6FBgOcZjvIOqfaHAeLldK38Jyj6F0po7ut6at00wQpEISzjgmfEI6TeyksaqCeMqwWNg00zn
ptlSg01rIPHDl+Go1eLjzZjkjeJcxHKITkaKCgJhXbwzsV5yM89KxcZFKG4AgJYGNOgwagawDYV1
AFD6PgqA2CgAMHQzYAOKixE2E89uhToLBc9BB8y+HzteQZ0BAN7fBCQj0uEXrDPBZAIA+RgogcON
mDkbM2dCIohrMAB2voKtB7r0IwHURhisKzQ9uxgbBSWQ/y0MLVgfKlYBjwUJ2J4/gC9EDR1gaEKa
Aoo0TJIhQoGCr9FkQnE2lr+BMbYlqMHMGmu+AYCxLCX2VcQAr61OvdnMBErJss8nyeKPKbrPJ3uK
9UFOijjXgtX9U2XZS/KriYgylaIHa3+vp2TYxdLzxaNZydbCBKq2KmCbztlc4kYVKWzVk63zTC0p
QEjoMu0UJ3igDFWvXaisMmlZpLD6kBbvNFNFfWBTDKCENNIQEZFQTwlWxfIyCQmkdXBrB4JQS+gx
TWC4OUOyzMuEoCWNhvQOcydBTxpNXwszFvQ9KtoKB4JGQ9qufWgbe50S99qFQI1aIoEEIqG6y7qL
ZbkoJUtcoOoNQd99CCQMdAjdFdNQ0W4CSJFGAxgHw43gaGB7u6qqqthekwGhA+cHZTLmABu3QZmB
A0/aDzaU4rVn8EYztEfxC7iWW+PxaDOyNmNt/OXvjHFJYZZ56WlpQJkamjaMnYGZMVdaG8bVCQuX
fukJjEB8xJVWgnGVw7LBMxjuyCCumVVVVf0LMRiMS8EgLJPNMxmMXwzmzTIY7gizTAbDHWGWyWC4
I0OyTF35Fi52C4tkwWBccoZ8zRxidAwGg+GMS+DNuhwdg8Fg9MaQLVNhOHpgayzHSbjY7FJLtA1T
+Z5N8RzHcVx8/JqdVTrAkLt+XXZx6c718RzHcYnZzAFmMPpmiJYphfq5OYuqttXWF2YqHoh7ocqE
qp2PKxI++52qVqupnFOw46d2EyA0n9r2wJy4/NiNlfmpyGtkF1gGo2+G+NysEUhSaTfPlMOwYC6w
64K+6Yv7t6Xub1w1MwQwRCkghoDUQple+N7a2dCF7y/Usx28DEbfDN2bnWuNjmEEIv2NJwuAqBBL
uI5zddb1IWMzEpdPBwB5VPy8Sew5egajb4a+NntBBxiaStMUTynSkicFDB8PlJafMBgastdEbwT8
JaIZGpwH4WEwGE4Y8jwTz0VynHdoXEXa7oMvzgMf89L+9G33x3l7R347d3dmMvK/qQUgDb4UyjIY
1w1D3zltMhlMJl4mc/BQTboWHeSBcua0MhguMnTj4XkZ360VXh4YOOR2GYzrGfbcLIPhjjDLZDDc
EWaZDIY7wqKNMBjuCIs2wmC4I8ybZTDcEWaZDIY7wizz2kSnAwCTgeWZvlq5zixTh0RL1sFEuOMe
URN2bsKmTXjlFbyyAVs+G0AVAxI5FDsMpjQXsRz85kIHbF8Bbw4bst1ysIw+uc4sU473tKjdD5y6
0po4RY+/P4ecGoSGwj8cw30HVEnr8L50C+JWY1Ue9CrIgXUHUF2IjQ/Abz0LOnGVcd092iqXQxLi
ruGLJADwuyewbppL1VvwwFNIycOLK+1lMfOgKULQHHzwBO5j6Y+uHoZ0zTy0E6UNXUoMddi5p/vc
pqdYHxRn2zNd59YAQN0BxFpK4lHaAgC565FdjJ3rwXHg1qDOBAA1nyHeWjG7XGztwBaxJH4Dmqxd
9Mw3b6jD+nhwHLhYFDf1OGxDh63rRbE1G6ADYMCGRBwqx/pYcBzWbBVbW2fVZGc5ABiqkLhOdClt
73PXI/sQsteB4xC7Hr11W5OL9dk4ZD0tB6xn8jPL0LxRYA3FdOhvUCvx55XdWwicjfwU3P8XNue8
qhhgnk2nmW1VOQQQkuxJpoVGSlUSQGk59iTTPcV6w5KteX8t6fVUraLKRjENc1YRCQLlpxFA9USZ
CQRQUibV11ISKL2ISKAkUEIOEZG2UUwda8kkW1RPgpbSFYQ0sRdLm1pbr3pKAiXnEBEVZRKUvaTQ
FSgVhGSq1lB1PgGkISKtmBA6s4jyUwlpYklyFukFUWx/I2lV9h5t77MSCKDkLKqvpiRQUg6RnhJA
ymTKyKD0NCqsJbJluU6i6kbKShJTTeenEkCF1aSptae1TgOlFTk/sZaM1yqt86MMN2TIOacFUuVT
AggJtLtQzNCsraXMVAIoJYMqG3sV60l6j6TlqgxCkjVfspYUoPx6ylTaE7lnKsTM8DnJBFByOqlq
xUMZCtFWyWoP9Zb3XS3T8jEpjTIyKC2ZAFI7M02LWDUREeltLegpAZReKI66UC12VG2tlQFKye/S
o61uppISskSxLCUp0sXWktJp/37Ky6NKy/9LJkEpZoYXk8DrSQnKsQxTT0qLZepJCcpUOz+xdjHG
VcKQV4B4KG5FUiqQhx0foV4PAPIoLEuAEnjjKXxV3qtYT4yAvqev6WN9I0Ew0CHA2IxEpb2Khfu2
olaFmBrERSN+k7jgIfeyVpUAgPOwCgIAPHA75s7G7eugrkS0zIlUfTmgRCQAQNcEKMRyLbB4ljjq
edb5oW36LlWgvQOAXd5W19iM+DjrKJoxZqTY2tzliI/HypWYFAgAghGKRFh21QlGADDUogCYJqqC
AmuX4x3ORnc0VjHGVcKQLLOlBpvWQOKHL8NRq8XHmzHJG8W5iOUQnYwUFQTCunhnYr2E6JqVio2L
UNwAAC0NaNBh1AxgGwrrAKD0fRQAsVEAYOhmwAYUFyNsJp7dCnUWCp6DDph9P3a8gjoDALy/CUhG
pMOCl84EkwkA5GOgBA43YuZszJwJiSBO2wDsfAVbD4jvIycBBShpQFM5QhcBDlEaBAdl5GOgAHYd
AICWUjyqxu2xgACoUduCplJ7XSlwoRUASnPxqBpPLgEAP6CxCQYdWlrQYrvX0XWCKIuEEsj/FoYW
rA8FLPNMHgsSsD3f+Ymt+QYAxrLIaFcRA7y2OvVmMxMoJcs+nySLy6foPp/sKdYHOSkEiC+Lb6bK
spfkVxMRZSpFD9b+Xk/JsIul54tHs5KthQlUbVXA4lsCdpe4UUUKW/Vk6zxTSwoQEuzTzqwkUSYr
k6Cwe7PdvMTGoh6aCJSuFEtysghK+zzT8tpt8UL1lOQwCmU6kc2DpS7vizJFmbQsu5tqmUxmqqgb
Qi2hxzSB4eYMeZ55GRC0pNGQ3mEuKuhJo+llYcYBfY+KtsKBoNGQtmsf2kb7lFjQklYgQU9EVJ1j
tcxex+CkNY2GHFXLVFBaIVEvU+5+0Wu7t0/WRa+ULHENTK+hot0EkCLN5X4YVwZ3vJ/Jy9EtWAkv
Q6CzuV83ZHL0lHJa6JSeIVLkIfb3+hPwi0NyKlCBbXnIKEJfviHvpLVuJRfUgJfrd5SdjmvaWtQr
8NoziN4M7VHsvBuPNiNrP9bGu9gL40ox9Ahd1xENVVAfR4cXpsQhJqR/+X5bQyQi2NyP4Qx3vGa6
LRGTEHHp/p0uYVOMa4/r7LlZBuMqgUUbYTDckYHOMxkMxi8J82YZDHeEWSaD4Y4wyxwqugHEC9C1
QDfkLVgsdMh1xdVsmUMIHaIrFbc7WnZUuoZjXA9L1I/sKuxZh9hXHIRasI6DXxD8vLGpeBCNl28F
l4iGGnAcDjQBLHTIdcbVbJlDCB0iV0Crxf40qC+42Hm3uB4WtMCEmYDULpb7JLYloVGAoMVjsYPs
4xTkkVACvjKAhQ65zriaLROQyxHmWugQHnI5Qvxd7dghroeYnlCGeAWigwEj1A57sZrVSH8WITx4
OeQDfEoQABA9C5gDOY9mh0JL6BC8gQ9qXNWccZVgt8zrLnSIs7pOu/jMVpiIcgPQS1yPiNsxIRCS
4ci8DQBgQlUpqtSoUaG8FOV1vXbRMzoJAPggdQHAY1UKJjg8wcdCh1wv2J5tv75Ch1g0zLBvsOqt
C8e4HhhAXA87ekpPJiVIkUApyZSe10sXzqKT9NMwCx1yHdB1F9h1EzrEpo+jZTrpwoW4Hl3JVFCG
g2TPLo47i07SDyx0yHVA13nmdRM6pDe6ddFWPfi4Hl0x9gi/0H0UZkuTIvboJH3AQodcB9gt87oK
HWJBAqiNMEC0/J5djI0adFyPvunZxYRxzqKT9AkLHXJdYLt6Xm+hQ8gWMBKUoeq1C5VDXA9Ff3E9
emLzz2307MJJdJLeYaFDrhMu+xPtJh10JnjLrXcXAJMBOj28A/sJNWDQQd+1oq2wZ7iAnrS0gPfu
cqNC1wQEQt7f7pouXZjQpEeIN0w8UAPJOKi0mCkHgPJsKB5AShZSEhA1AH167QJiRy267gp3r9WC
o/sxZzUUaVC9yHbWXuOwvSZ9ogPnB2Uy5gAbt0GZgQNP2g82lOK1Z/BGM7RH+4w8conYGo9Hm5G1
mYUOuS5gltkPLQ0oU0PThrEzMJPlBWH8UjDLZDDckav76TwG41qFZzFEGAw3hHmzDIY7wrxZBsMd
YZbJYLgjTi3TpGtp0RnY7lwG44rRwzJbitdxEr+gID9vyabiliuhEoPB6L4CZMhd470aWY1ZawP1
LXpJ4KC24TMYjEtF96cvm9VI33FvCA/IA9lmBgbjSuHgzZp0VaXfVKlRo/qmvLS4vK4FAAw1W9bE
chzHcdyGXDESRt2BLWJR/IbSFjYdZTAuPY6WWb9na9ZRoOjjXf/Y+o/8o+cAXfa9457yWV+vFzTV
+UWrFa8caNCVZ0cvemp9Ub0gaPKVn8YFbRxwVCAGgzFQus0zTVtjJcYd+ienyQDAUBrvHfdwtXBf
DA+gdFNs3Nl01Zjn4kpeFN5bxQPQFcf6zUmvF5ZFsD1JDMalpNvarN4IGIQu4UO8rEYnkQWLkTB8
7AEzLBFDGAzGpaXPJw1ko5YBb+0qNABoKd30VEHy7bGjZtyPbW8U1hkAlL6/uQApsVHsgslgXGK6
G5UUjoFMQ55tLKoJneP9HAAkpOe/szJKhqdVWTVx0d4AgIT86reifildGYzrh4E80W7StehMvLfj
zU2TQafTm7wDA9n9TgbjcsD2mjAY7gh7op3BcEeYZTIY7giLacBguCNsnslguCPMm2Uw3BFmmQyG
O8Isk8FwR5hlMhjuCLNMBsMdYZbJYLgjzDIZDHeEWSaD4Y4wy2Qw3BFmmQyGO8Isk8FwR5hlMhju
CLNMBsMdYZbJYLgjzDIZDHeEWSaD4Y4wy2Qw3BFmmQyGO8Isk8FwR5hlMhjuCLNMBsMd+f/00gcn
B8Q7XgAAAABJRU5ErkJggg0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22082</attachid>
            <date>2008-07-04 00:30:53 -0700</date>
            <delta_ts>2008-07-05 04:43:00 -0700</delta_ts>
            <desc>collapsible</desc>
            <filename>MyThirdPatch5.txt</filename>
            <type>text/plain</type>
            <size>16588</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDk5MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDgtMDctMDQgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNDb25zb2xlOjpncm91cCk6CisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3VwKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6
Omdyb3VwRW5kKToKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6
Oik6CisgICAgICAgICogcGFnZS9Db25zb2xlLmlkbDogQWRkZWQgZ3JvdXAvZ3JvdXBFbmQuCisg
ICAgICAgICogcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNvbnNvbGVNZXNzYWdlOjpDb25zb2xlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyKTogQWRkZWQgbV9ncm91cExldmVs
LgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ29u
c29sZSk6IEFkZGVkIGdyb3VwTGV2ZWwgYXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpzdGFydEdyb3VwKTogSW5jcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkg
b25lIGFuZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JDb250cm9sbGVyOjplbmRHcm91cCk6IERlY3JlbWVudHMgbV9ncm91cExldmVsIGJ5
IG9uZSBhbmQgY2FsbHMganMgZnVuY3Rpb24gaWYgbmVlZGVkLgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc29sZU1lc3NhZ2UpOiBBZGRlZCBncm91
cExldmVsIGFyZ3VtZW50LgorICAgICAgICAqIHBhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oOgor
ICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVkIGEgZGl2IHRoYXQgd3Jh
cHMgdGhlIG1lc3NhZ2VzLgorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3M6
CisgICAgICAgICogcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzOiBBZGRlZCBzdGFydEdyb3Vw
L2VuZEdyb3VwLgorCiAyMDA4LTA3LTAzICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCShyZXZpc2lvbiAzNDk5MSkKKysrIFdlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODMsNCArODMs
MTAgQEAgSlNWYWx1ZSogSlNDb25zb2xlOjpwcm9maWxlRW5kKEV4ZWNTdGF0ZQogICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOwogfQogCitKU1ZhbHVlKiBKU0NvbnNvbGU6Omdyb3VwKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgQXJnTGlzdCYgYXJndW1lbnRzKQoreworICAgIGltcGwoKS0+Z3JvdXAo
ZXhlYywgYXJndW1lbnRzKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKwogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAkocmV2aXNpb24gMzQ5OTEpCisrKyBXZWJD
b3JlL3BhZ2UvQ29uc29sZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Niw2ICsyNjYsMzcgQEAg
dm9pZCBDb25zb2xlOjpwcm9maWxlRW5kKEV4ZWNTdGF0ZSogZXhlYwogICAgIFByb2ZpbGVyOjpw
cm9maWxlcigpLT5zdG9wUHJvZmlsaW5nKGV4ZWMsIHRpdGxlKTsKIH0KIAordm9pZCBDb25zb2xl
Ojpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sKKyAg
ICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAg
cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7CisgICAgCisgICAgY29u
c3QgS1VSTCYgdXJsID0gbV9mcmFtZS0+bG9hZGVyKCktPnVybCgpOworICAgIAorICAgIGlmIChh
cmd1bWVudHMuaXNFbXB0eSgpKQorICAgICAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCkt
PmFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNNZXNzYWdlU291cmNlLCBHcm91cFRpdGxlTWVzc2FnZUxl
dmVsLCBTdHJpbmcoKSwgMCwgdXJsLnN0cmluZygpKTsKKyAgICBlbHNlCisgICAgICAgIHBhZ2Ut
Pmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3Vy
Y2UsIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwgdXJsLnN0cmlu
ZygpKTsKK30KKwordm9pZCBDb25zb2xlOjpncm91cEVuZCgpCit7CisgICAgaWYgKCFtX2ZyYW1l
KQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOwor
ICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3BlY3Rv
ckNvbnRyb2xsZXIoKS0+ZW5kR3JvdXAoKTsKK30KKwogdm9pZCBDb25zb2xlOjpmaW5pc2hlZFBy
b2ZpbGluZyhQYXNzUmVmUHRyPFByb2ZpbGU+IHBycFByb2ZpbGUpCiB7CiAgICAgaWYgKFBhZ2Uq
IHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHJldmlzaW9uIDM0OTkxKQorKysg
V2ViQ29yZS9wYWdlL0NvbnNvbGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsOCBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIFRpcE1lc3NhZ2VMZXZlbCwKICAgICAgICAgTG9n
TWVzc2FnZUxldmVsLAogICAgICAgICBXYXJuaW5nTWVzc2FnZUxldmVsLAotICAgICAgICBFcnJv
ck1lc3NhZ2VMZXZlbAorICAgICAgICBFcnJvck1lc3NhZ2VMZXZlbCwKKyAgICAgICAgR3JvdXBU
aXRsZU1lc3NhZ2VMZXZlbAogICAgIH07CiAKICAgICBjbGFzcyBDb25zb2xlIDogcHVibGljIFJl
ZkNvdW50ZWQ8Q29uc29sZT4sIHB1YmxpYyBLSlM6OlByb2ZpbGVyQ2xpZW50IHsKQEAgLTc2LDYg
Kzc3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGFzc2VydENvbmRpdGlv
bihib29sIGNvbmRpdGlvbiwgS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFy
Z3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZShLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtK
Uzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlRW5kKEtKUzo6RXhl
Y1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAgICAgICB2b2lkIGdy
b3VwKEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAg
ICAgICB2b2lkIGdyb3VwRW5kKCk7CiAKICAgICAgICAgdm9pZCBmaW5pc2hlZFByb2ZpbGluZyhQ
YXNzUmVmUHRyPEtKUzo6UHJvZmlsZT4pOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29sZS5p
ZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCShyZXZpc2lvbiAzNDk5
MSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiAr
MzgsOCBAQCBtb2R1bGUgd2luZG93IHsKIAogICAgICAgICBbQ3VzdG9tXSB2b2lkIHByb2ZpbGUo
aW4gRE9NU3RyaW5nIHRpdGxlKTsKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlRW5kKCk7
CisgICAgICAgIFtDdXN0b21dIHZvaWQgZ3JvdXAoKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgp
OwogICAgIH07CiAKIH0KSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAJKHJl
dmlzaW9uIDM0OTkxKQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNTIsMjEgKzE1MiwyMyBAQCBKU1ZhbHVlUmVmIEluc3BlY3RvckNv
bnRyb2xsZXI6OmNhbGxGdW5jCiAvLyBDb25zb2xlTWVzc2FnZSBTdHJ1Y3QKIAogc3RydWN0IENv
bnNvbGVNZXNzYWdlIHsKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1lc3Nh
Z2VMZXZlbCBsLCBjb25zdCBTdHJpbmcmIG0sIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcmIHUp
CisgICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgY29u
c3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBnKQog
ICAgICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgbWVzc2Fn
ZShtKQogICAgICAgICAsIGxpbmUobGkpCiAgICAgICAgICwgdXJsKHUpCisgICAgICAgICwgZ3Jv
dXBMZXZlbChnKQogICAgIHsKICAgICB9CiAKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlIHMsIE1lc3NhZ2VMZXZlbCBsLCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFy
Z3MsIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcmIHUpCisgICAgQ29uc29sZU1lc3NhZ2UoTWVz
c2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdM
aXN0JiBhcmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBnKQogICAg
ICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgd3JhcHBlZEFy
Z3VtZW50cyhhcmdzLnNpemUoKSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1
KQorICAgICAgICAsIGdyb3VwTGV2ZWwoZykKICAgICB7CiAgICAgICAgIEpTTG9jayBsb2NrKGZh
bHNlKTsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGFyZ3Muc2l6ZSgpOyArK2kp
CkBAIC0xNzksNiArMTgxLDcgQEAgc3RydWN0IENvbnNvbGVNZXNzYWdlIHsKICAgICBWZWN0b3I8
UHJvdGVjdGVkUHRyPEpTVmFsdWU+ID4gd3JhcHBlZEFyZ3VtZW50czsKICAgICB1bnNpZ25lZCBs
aW5lOwogICAgIFN0cmluZyB1cmw7CisgICAgdW5zaWduZWQgZ3JvdXBMZXZlbDsKIH07CiAKIC8v
IFhNTEh0dHBSZXF1ZXN0UmVzb3VyY2UgQ2xhc3MKQEAgLTEwMjMsNiArMTAyNiw3IEBAIEluc3Bl
Y3RvckNvbnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIKICAgICAsIG1fcmVjb3JkaW5nVXNl
ckluaXRpYXRlZFByb2ZpbGUoZmFsc2UpCiAgICAgLCBtX3Nob3dBZnRlclZpc2libGUoRWxlbWVu
dHNQYW5lbCkKICAgICAsIG1fbmV4dElkZW50aWZpZXIoLTIpCisgICAgLCBtX2dyb3VwTGV2ZWwo
MCkKIHsKICAgICBBU1NFUlRfQVJHKHBhZ2UsIHBhZ2UpOwogICAgIEFTU0VSVF9BUkcoY2xpZW50
LCBjbGllbnQpOwpAQCAtMTE4Nyw3ICsxMTkxLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjphZGRNZXNzYWdlVG9DbwogICAgIGlmICghZW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAK
LSAgICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwg
ZXhlYywgYXJndW1lbnRzLCBsaW5lTnVtYmVyLCBzb3VyY2VVUkwpKTsKKyAgICBhZGRDb25zb2xl
TWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwgZXhlYywgYXJndW1lbnRz
LCBsaW5lTnVtYmVyLCBzb3VyY2VVUkwsIG1fZ3JvdXBMZXZlbCkpOwogfQogCiB2b2lkIEluc3Bl
Y3RvckNvbnRyb2xsZXI6OmFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2FnZVNvdXJjZSBzb3VyY2Us
IE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5l
TnVtYmVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZUlEKQpAQCAtMTE5NSw3ICsxMTk5LDcgQEAgdm9p
ZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9DbwogICAgIGlmICghZW5hYmxlZCgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1l
c3NhZ2Uoc291cmNlLCBsZXZlbCwgbWVzc2FnZSwgbGluZU51bWJlciwgc291cmNlSUQpKTsKKyAg
ICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwgbWVz
c2FnZSwgbGluZU51bWJlciwgc291cmNlSUQsIG1fZ3JvdXBMZXZlbCkpOwogfQogCiB2b2lkIElu
c3BlY3RvckNvbnRyb2xsZXI6OmFkZENvbnNvbGVNZXNzYWdlKENvbnNvbGVNZXNzYWdlKiBjb25z
b2xlTWVzc2FnZSkKQEAgLTEyMDksNiArMTIxMywyOSBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZENvbnNvbGVNZXNzCiAgICAgICAgIGFkZFNjcmlwdENvbnNvbGVNZXNzYWdlKGNvbnNv
bGVNZXNzYWdlKTsKIH0KIAordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpzdGFydEdyb3VwKCkK
K3sgICAgCisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworICAgIAorICAgICsrbV9ncm91
cExldmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgY2FsbEZ1bmN0aW9u
KG1fc2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJzdGFydEdyb3VwSW5Db25zb2xlIiwg
MCwgTlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmRH
cm91cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworICAgIAorICAgIGlmICht
X2dyb3VwTGV2ZWwgPT0gMCkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIC0tbV9ncm91cExl
dmVsOworICAgIAorICAgIGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlv
bihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNvbnNvbGUiLCAw
LCBOVUxMLCBleGNlcHRpb24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFBy
b2ZpbGUoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmICghZW5hYmxl
ZCgpKQpAQCAtMTg1Niw2ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRT
Y3JpcHRDb25zbwogICAgIEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVy
KG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVSZWYgbGluZVZh
bHVlID0gSlNWYWx1ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5saW5lKTsK
ICAgICBKU1ZhbHVlUmVmIHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9zY3JpcHRDb250
ZXh0LCBqc1N0cmluZ1JlZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1ZhbHVlUmVmIGdy
b3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2Fn
ZS0+Z3JvdXBMZXZlbCk7CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3Nh
Z2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3Nh
Z2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2
ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAg
ICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1th
cmd1bWVudENvdW50KytdID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFtZXNzYWdlLT53
cmFwcGVkQXJndW1lbnRzLmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCByZW1haW5pbmdT
cGFjZUluQXJndW1lbnRzID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1bWVudENvdW50
OwpJbmRleDogV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oCShyZXZpc2lvbiAzNDk5MSkKKysr
IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE2
OSw2ICsxNjksOSBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGRyYXdOb2RlSGlnaGxpZ2h0KEdyYXBo
aWNzQ29udGV4dCYpIGNvbnN0OwogCisgICAgdm9pZCBzdGFydEdyb3VwKCk7CisgICAgdm9pZCBl
bmRHcm91cCgpOworCiBwcml2YXRlOgogICAgIHZvaWQgZm9jdXNOb2RlKCk7CiAKQEAgLTIzMiw2
ICsyMzUsNyBAQCBwcml2YXRlOgogICAgIFNwZWNpYWxQYW5lbHMgbV9zaG93QWZ0ZXJWaXNpYmxl
OwogICAgIGxvbmcgbG9uZyBtX25leHRJZGVudGlmaWVyOwogICAgIFJlZlB0cjxOb2RlPiBtX2hp
Z2hsaWdodGVkTm9kZTsKKyAgICB1bnNpZ25lZCBtX2dyb3VwTGV2ZWw7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCShyZXZpc2lv
biAzNDk5MSkKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkod29ya2luZyBj
b3B5KQpAQCAtNDcsNiArNDcsMTIgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUgPSBmdW5jdGlvbigp
CiAgICAgdGhpcy5jbGVhckJ1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbGVhci1j
b25zb2xlLXN0YXR1cy1iYXItaXRlbSIpOwogICAgIHRoaXMuY2xlYXJCdXR0b24udGl0bGUgPSBX
ZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNsZWFyIGNvbnNvbGUgbG9nLiIpOwogICAgIHRoaXMuY2xl
YXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl9jbGVhckJ1dHRvbkNsaWNr
ZWQuYmluZCh0aGlzKSwgZmFsc2UpOworICAgIAorICAgIHRoaXMudG9wR3JvdXAgPSB0aGlzLl9j
cmVhdGVHcm91cCgpOworICAgIHRoaXMubWVzc2FnZXNFbGVtZW50Lmluc2VydEJlZm9yZSh0aGlz
LnRvcEdyb3VwLCB0aGlzLnByb21wdEVsZW1lbnQpOworCisgICAgdGhpcy5ncm91cExldmVsID0g
MDsKKyAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMudG9wR3JvdXA7CiAKICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibWFpbi1zdGF0dXMtYmFyIikuYWRkRXZlbnRMaXN0ZW5lcigibW91
c2Vkb3duIiwgdGhpcy5fc3RhcnRTdGF0dXNCYXJEcmFnZ2luZy5iaW5kKHRoaXMpLCB0cnVlKTsK
IH0KQEAgLTE0Myw4ICsxNDksMTUgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0g
ewogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwogCisgICAgICAgIGlmICh0eXBl
b2YgbXNnLmdyb3VwTGV2ZWwgPT09ICJudW1iZXIiKSB7CisgICAgICAgICAgICB3aGlsZSAobXNn
Lmdyb3VwTGV2ZWwgPiB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICAgICAgdGhpcy5zdGFy
dEdyb3VwKCk7CisgICAgICAgICAgICB3aGlsZSAobXNnLmdyb3VwTGV2ZWwgPCB0aGlzLmdyb3Vw
TGV2ZWwpCisgICAgICAgICAgICAgICAgdGhpcy5lbmRHcm91cCgpOworICAgICAgICB9CisKICAg
ICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOwotICAgICAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUoZWxlbWVudCwgdGhpcy5wcm9tcHRFbGVtZW50
KTsKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYXBwZW5kQ2hpbGQoZWxlbWVudCk7CiAgICAg
ICAgIHRoaXMucHJvbXB0RWxlbWVudC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7CiAgICAgfSwKIApA
QCAtMTU0LDggKzE2Nyw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZSA9IHsKIAog
ICAgICAgICB0aGlzLm1lc3NhZ2VzID0gW107CiAKLSAgICAgICAgd2hpbGUgKHRoaXMubWVzc2Fn
ZXNFbGVtZW50LmZpcnN0Q2hpbGQgIT0gdGhpcy5wcm9tcHRFbGVtZW50KQotICAgICAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5tZXNzYWdlc0VsZW1lbnQuZmly
c3RDaGlsZCk7CisgICAgICAgIHRoaXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgICAgIHRoaXMuY3Vy
cmVudEdyb3VwID0gdGhpcy50b3BHcm91cDsKKyAgICAgICAgdGhpcy50b3BHcm91cC5yZW1vdmVD
aGlsZHJlbigpOwogICAgIH0sCiAKICAgICBjb21wbGV0aW9uczogZnVuY3Rpb24od29yZFJhbmdl
LCBiZXN0TWF0Y2hPbmx5KQpAQCAtMjA5LDYgKzIyMywyOCBAQCBXZWJJbnNwZWN0b3IuQ29uc29s
ZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiByZXN1bHRzOwogICAgIH0sCiAKKyAgICBz
dGFydEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgdGhpcy5ncm91cExldmVsKys7CisgICAg
ICAgIGdyb3VwRWxlbWVudCA9IHRoaXMuX2NyZWF0ZUdyb3VwKCk7CisgICAgICAgIHRoaXMuY3Vy
cmVudEdyb3VwLmFwcGVuZENoaWxkKGdyb3VwRWxlbWVudCk7CisgICAgICAgIHRoaXMuY3VycmVu
dEdyb3VwID0gZ3JvdXBFbGVtZW50O2NvbnNvbGUubG9nKHRoaXMuY3VycmVudEdyb3VwKTsKKyAg
ICB9LAorICAgIAorICAgIGVuZEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMu
Z3JvdXBMZXZlbCA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5ncm91
cExldmVsLS07CisgICAgICAgIAorICAgICAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMuY3Vy
cmVudEdyb3VwLnBhcmVudE5vZGU7CisgICAgfSwKKworICAgIF9jcmVhdGVHcm91cDogZnVuY3Rp
b24oKSB7CisgICAgICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
Iik7CisgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cCIpOworICAg
ICAgICByZXR1cm4gZWxlbWVudDsKKyAgICB9LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6
IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7
CkBAIC0yMzksMTEgKzI3NSwyOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7
CiAKICAgICBfbWVzc2FnZXNDbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CisgICAgICAg
IHZhciBncm91cFRpdGxlRWxlbWVudCA9IGV2ZW50LnRhcmdldC5lbmNsb3NpbmdOb2RlT3JTZWxm
V2l0aENsYXNzKCJjb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsIik7CisgICAgICAgIGlmIChncm91
cFRpdGxlRWxlbWVudCkgeworICAgICAgICAgICAgdmFyIGdyb3VwRWxlbWVudCA9IGdyb3VwVGl0
bGVFbGVtZW50LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoQ2xhc3MoImNvbnNvbGUtZ3JvdXAiKTsK
KyAgICAgICAgICAgIGlmIChncm91cEVsZW1lbnQpCisgICAgICAgICAgICAgICAgaWYgKGdyb3Vw
RWxlbWVudC5oYXNTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKSkKKyAgICAgICAgICAgICAgICAgICAg
Z3JvdXBFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoImNvbGxhcHNlZCIpOworICAgICAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgZ3JvdXBFbGVtZW50LmFkZFN0eWxlQ2xhc3Mo
ImNvbGxhcHNlZCIpOworICAgICAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9sbElu
dG9WaWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKyAgICAgICAgCiAgICAgICAgIHZhciBs
aW5rID0gZXZlbnQudGFyZ2V0LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoTm9kZU5hbWUoImEiKTsK
ICAgICAgICAgaWYgKCFsaW5rIHx8ICFsaW5rLnJlcHJlc2VudGVkTm9kZSkKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICBXZWJJbnNwZWN0b3IudXBkYXRlRm9jdXNlZE5vZGUobGluay5y
ZXByZXNlbnRlZE5vZGUpOworICAgICAgICAKKyAgICAgICAgdmFyIGdyb3VwRWxlbWVudCA9IGV2
ZW50LnRhcmdldC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwIik7
CisgICAgICAgIGlmIChncm91cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC1j
b2xsYXBzZWQiKSkKKyAgICAgICAgICAgIGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJj
b25zb2xlLWdyb3VwLWNvbGxhcHNlZCIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBncm91
cEVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC1jb2xsYXBzZWQiKTsKKyAgICAg
ICAgCiAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwogICAgICAgICBldmVudC5wcmV2
ZW50RGVmYXVsdCgpOwogICAgIH0sCkBAIC00NDMsMTkgKzQ5NywyMCBAQCBXZWJJbnNwZWN0b3Iu
Q29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZS5f
X3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGU7CiAKLVdlYkluc3BlY3Rvci5D
b25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCkKK1dlYklu
c3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVy
bCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICB0aGlzLmxl
dmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVybCA9IHVybDsK
KyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cExldmVsOwogCiAgICAgLy8gVGhpcyBfZm9ybWF0
IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQuIFRoZSByZXN1
bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNzYWdlIGJ1YmJs
ZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2VudGF0aW9ucy4K
LSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNh
bGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5tZXNzYWdlID0g
dGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSksIHRy
dWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBwcm9wZXJ0eSBp
cyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAgICB0aGlzLmZv
cm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwo
YXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhpcy5fZm9ybWF0
KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQogCiBXZWJJbnNw
ZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTQxLDYgKzU5Niw5IEBAIFdl
Ykluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3Nh
Z2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNv
bnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
IGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxl
OgorICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC10
aXRsZS1sZXZlbCIpOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIG1lc3NhZ2VUZXh0RWxlbWVu
dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2NjMsOSBAQCBX
ZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gCiAgICAgICAgICAgICBjYXNl
IFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6CiAgICAgICAg
ICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiRXJyb3IiOwogICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVs
Lkdyb3VwVGl0bGU6CisgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiR3JvdXBUaXRsZSI7
CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAogICAgICAgICByZXR1cm4gc291
cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxTdHJpbmcgKyAiOiAiICsgdGhpcy5mb3JtYXR0ZWRNZXNz
YWdlLnRleHRDb250ZW50ICsgIlxuIiArIHRoaXMudXJsICsgIiBsaW5lICIgKyB0aGlzLmxpbmU7
CkBAIC02MjQsNyArNjg1LDggQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VM
ZXZlbAogICAgIFRpcDogMCwKICAgICBMb2c6IDEsCiAgICAgV2FybmluZzogMiwKLSAgICBFcnJv
cjogMworICAgIEVycm9yOiAzLAorICAgIEdyb3VwVGl0bGU6IDQKIH0KIAogV2ViSW5zcGVjdG9y
LkNvbnNvbGVDb21tYW5kID0gZnVuY3Rpb24oY29tbWFuZCwgcmVzdWx0LCBmb3JtYXR0ZWRSZXN1
bHRFbGVtZW50LCBsZXZlbCkKSW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9y
LmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MJ
KHJldmlzaW9uIDM0OTkxKQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3Nz
CSh3b3JraW5nIGNvcHkpCkBAIC01MzIsNiArNTMyLDIyIEBAIGJvZHkuY29uc29sZS12aXNpYmxl
ICNjb25zb2xlIHsKICAgICBvcGFjaXR5OiAxOwogfQogCisuY29uc29sZS1ncm91cCAuY29uc29s
ZS1ncm91cCB7CisJYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgcmdiKDI1NSwgMCwgMCk7Cit9CisK
Ky5jb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsIHsKKwlmb250LXdlaWdodDogYm9sZDsKK30KKwor
LmNvbnNvbGUtZ3JvdXAuY29sbGFwc2VkIDpub3QoLmNvbnNvbGUtZ3JvdXAtdGl0bGUtbGV2ZWwp
IHsKKwlkaXNwbGF5OiBub25lOworfQorCisuY29uc29sZS1tZXNzYWdlIHsKKwkKK30KKwogLmF1
dG8tY29tcGxldGUtdGV4dCB7CiAgICAgY29sb3I6IHJnYigxMjgsIDEyOCwgMTI4KTsKICAgICAt
d2Via2l0LXVzZXItc2VsZWN0OiBub25lOwpJbmRleDogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9p
bnNwZWN0b3IuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0
b3IuanMJKHJldmlzaW9uIDM0OTkxKQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0
b3IuanMJKHdvcmtpbmcgY29weSkKQEAgLTc5Nyw2ICs3OTcsMTYgQEAgV2ViSW5zcGVjdG9yLmFk
ZE1lc3NhZ2VUb0NvbnNvbGUgPSBmdW5jdAogICAgIHRoaXMuY29uc29sZS5hZGRNZXNzYWdlKG1z
Zyk7CiB9CiAKK1dlYkluc3BlY3Rvci5zdGFydEdyb3VwSW5Db25zb2xlID0gZnVuY3Rpb24obXNn
KQoreworICAgIHRoaXMuY29uc29sZS5zdGFydEdyb3VwKG1zZyk7Cit9CisKK1dlYkluc3BlY3Rv
ci5lbmRHcm91cEluQ29uc29sZSA9IGZ1bmN0aW9uKG1zZykKK3sKKyAgICB0aGlzLmNvbnNvbGUu
ZW5kR3JvdXAobXNnKTsKK30KKwogV2ViSW5zcGVjdG9yLmFkZFByb2ZpbGUgPSBmdW5jdGlvbihw
cm9maWxlKQogewogICAgIHRoaXMucGFuZWxzLnByb2ZpbGVzLmFkZFByb2ZpbGUocHJvZmlsZSk7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>22085</attachid>
            <date>2008-07-04 01:04:13 -0700</date>
            <delta_ts>2008-07-04 01:04:13 -0700</delta_ts>
            <desc>comparison screenshot</desc>
            <filename>Picture 4.png</filename>
            <type>image/png</type>
            <size>10168</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">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
8v9AZzyvdyoumgAAAABJRU5ErkJggg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22097</attachid>
            <date>2008-07-05 04:43:00 -0700</date>
            <delta_ts>2008-07-07 04:14:23 -0700</delta_ts>
            <desc>improved</desc>
            <filename>MyThirdPatch6.txt</filename>
            <type>text/plain</type>
            <size>16812</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNDk5MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDgtMDctMDQgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNDb25zb2xlOjpncm91cCk6CisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3VwKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6
Omdyb3VwRW5kKToKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6
Oik6CisgICAgICAgICogcGFnZS9Db25zb2xlLmlkbDogQWRkZWQgZ3JvdXAvZ3JvdXBFbmQuCisg
ICAgICAgICogcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNvbnNvbGVNZXNzYWdlOjpDb25zb2xlTWVzc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyKTogQWRkZWQgbV9ncm91cExldmVs
LgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ29u
c29sZSk6IEFkZGVkIGdyb3VwTGV2ZWwgYXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpzdGFydEdyb3VwKTogSW5jcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkg
b25lIGFuZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JDb250cm9sbGVyOjplbmRHcm91cCk6IERlY3JlbWVudHMgbV9ncm91cExldmVsIGJ5
IG9uZSBhbmQgY2FsbHMganMgZnVuY3Rpb24gaWYgbmVlZGVkLgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc29sZU1lc3NhZ2UpOiBBZGRlZCBncm91
cExldmVsIGFyZ3VtZW50LgorICAgICAgICAqIHBhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oOgor
ICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanM6IEFkZGVkIGEgZGl2IHRoYXQgd3Jh
cHMgdGhlIG1lc3NhZ2VzLgorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3M6
CisgICAgICAgICogcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzOiBBZGRlZCBzdGFydEdyb3Vw
L2VuZEdyb3VwLgorCiAyMDA4LTA3LTAzICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCShyZXZpc2lvbiAzNDk5MSkKKysrIFdlYkNvcmUvYmlu
ZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODMsNCArODMs
MTAgQEAgSlNWYWx1ZSogSlNDb25zb2xlOjpwcm9maWxlRW5kKEV4ZWNTdGF0ZQogICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOwogfQogCitKU1ZhbHVlKiBKU0NvbnNvbGU6Omdyb3VwKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgQXJnTGlzdCYgYXJndW1lbnRzKQoreworICAgIGltcGwoKS0+Z3JvdXAo
ZXhlYywgYXJndW1lbnRzKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30KKwogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAkocmV2aXNpb24gMzQ5OTEpCisrKyBXZWJD
b3JlL3BhZ2UvQ29uc29sZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Niw2ICsyNjYsMzcgQEAg
dm9pZCBDb25zb2xlOjpwcm9maWxlRW5kKEV4ZWNTdGF0ZSogZXhlYwogICAgIFByb2ZpbGVyOjpw
cm9maWxlcigpLT5zdG9wUHJvZmlsaW5nKGV4ZWMsIHRpdGxlKTsKIH0KIAordm9pZCBDb25zb2xl
Ojpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sKKyAg
ICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAg
cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7CisgICAgCisgICAgY29u
c3QgS1VSTCYgdXJsID0gbV9mcmFtZS0+bG9hZGVyKCktPnVybCgpOworICAgIAorICAgIGlmIChh
cmd1bWVudHMuaXNFbXB0eSgpKQorICAgICAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCkt
PmFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNNZXNzYWdlU291cmNlLCBHcm91cFRpdGxlTWVzc2FnZUxl
dmVsLCBTdHJpbmcoKSwgMCwgdXJsLnN0cmluZygpKTsKKyAgICBlbHNlCisgICAgICAgIHBhZ2Ut
Pmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3Vy
Y2UsIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwgdXJsLnN0cmlu
ZygpKTsKK30KKwordm9pZCBDb25zb2xlOjpncm91cEVuZCgpCit7CisgICAgaWYgKCFtX2ZyYW1l
KQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOwor
ICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3BlY3Rv
ckNvbnRyb2xsZXIoKS0+ZW5kR3JvdXAoKTsKK30KKwogdm9pZCBDb25zb2xlOjpmaW5pc2hlZFBy
b2ZpbGluZyhQYXNzUmVmUHRyPFByb2ZpbGU+IHBycFByb2ZpbGUpCiB7CiAgICAgaWYgKFBhZ2Uq
IHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCkpCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHJldmlzaW9uIDM0OTkxKQorKysg
V2ViQ29yZS9wYWdlL0NvbnNvbGUuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyArNTcsOCBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIFRpcE1lc3NhZ2VMZXZlbCwKICAgICAgICAgTG9n
TWVzc2FnZUxldmVsLAogICAgICAgICBXYXJuaW5nTWVzc2FnZUxldmVsLAotICAgICAgICBFcnJv
ck1lc3NhZ2VMZXZlbAorICAgICAgICBFcnJvck1lc3NhZ2VMZXZlbCwKKyAgICAgICAgR3JvdXBU
aXRsZU1lc3NhZ2VMZXZlbAogICAgIH07CiAKICAgICBjbGFzcyBDb25zb2xlIDogcHVibGljIFJl
ZkNvdW50ZWQ8Q29uc29sZT4sIHB1YmxpYyBLSlM6OlByb2ZpbGVyQ2xpZW50IHsKQEAgLTc2LDYg
Kzc3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGFzc2VydENvbmRpdGlv
bihib29sIGNvbmRpdGlvbiwgS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFy
Z3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZShLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtK
Uzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKICAgICAgICAgdm9pZCBwcm9maWxlRW5kKEtKUzo6RXhl
Y1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAgICAgICB2b2lkIGdy
b3VwKEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOworICAg
ICAgICB2b2lkIGdyb3VwRW5kKCk7CiAKICAgICAgICAgdm9pZCBmaW5pc2hlZFByb2ZpbGluZyhQ
YXNzUmVmUHRyPEtKUzo6UHJvZmlsZT4pOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvQ29uc29sZS5p
ZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCShyZXZpc2lvbiAzNDk5
MSkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiAr
MzgsOCBAQCBtb2R1bGUgd2luZG93IHsKIAogICAgICAgICBbQ3VzdG9tXSB2b2lkIHByb2ZpbGUo
aW4gRE9NU3RyaW5nIHRpdGxlKTsKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlRW5kKCk7
CisgICAgICAgIFtDdXN0b21dIHZvaWQgZ3JvdXAoKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgp
OwogICAgIH07CiAKIH0KSW5kZXg6IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAJKHJl
dmlzaW9uIDM0OTkxKQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNTIsMjEgKzE1MiwyMyBAQCBKU1ZhbHVlUmVmIEluc3BlY3RvckNv
bnRyb2xsZXI6OmNhbGxGdW5jCiAvLyBDb25zb2xlTWVzc2FnZSBTdHJ1Y3QKIAogc3RydWN0IENv
bnNvbGVNZXNzYWdlIHsKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHMsIE1lc3Nh
Z2VMZXZlbCBsLCBjb25zdCBTdHJpbmcmIG0sIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcmIHUp
CisgICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgY29u
c3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBnKQog
ICAgICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgbWVzc2Fn
ZShtKQogICAgICAgICAsIGxpbmUobGkpCiAgICAgICAgICwgdXJsKHUpCisgICAgICAgICwgZ3Jv
dXBMZXZlbChnKQogICAgIHsKICAgICB9CiAKLSAgICBDb25zb2xlTWVzc2FnZShNZXNzYWdlU291
cmNlIHMsIE1lc3NhZ2VMZXZlbCBsLCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFy
Z3MsIHVuc2lnbmVkIGxpLCBjb25zdCBTdHJpbmcmIHUpCisgICAgQ29uc29sZU1lc3NhZ2UoTWVz
c2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdM
aXN0JiBhcmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1LCB1bnNpZ25lZCBnKQogICAg
ICAgICA6IHNvdXJjZShzKQogICAgICAgICAsIGxldmVsKGwpCiAgICAgICAgICwgd3JhcHBlZEFy
Z3VtZW50cyhhcmdzLnNpemUoKSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1
KQorICAgICAgICAsIGdyb3VwTGV2ZWwoZykKICAgICB7CiAgICAgICAgIEpTTG9jayBsb2NrKGZh
bHNlKTsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGFyZ3Muc2l6ZSgpOyArK2kp
CkBAIC0xNzksNiArMTgxLDcgQEAgc3RydWN0IENvbnNvbGVNZXNzYWdlIHsKICAgICBWZWN0b3I8
UHJvdGVjdGVkUHRyPEpTVmFsdWU+ID4gd3JhcHBlZEFyZ3VtZW50czsKICAgICB1bnNpZ25lZCBs
aW5lOwogICAgIFN0cmluZyB1cmw7CisgICAgdW5zaWduZWQgZ3JvdXBMZXZlbDsKIH07CiAKIC8v
IFhNTEh0dHBSZXF1ZXN0UmVzb3VyY2UgQ2xhc3MKQEAgLTEwMjMsNiArMTAyNiw3IEBAIEluc3Bl
Y3RvckNvbnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIKICAgICAsIG1fcmVjb3JkaW5nVXNl
ckluaXRpYXRlZFByb2ZpbGUoZmFsc2UpCiAgICAgLCBtX3Nob3dBZnRlclZpc2libGUoRWxlbWVu
dHNQYW5lbCkKICAgICAsIG1fbmV4dElkZW50aWZpZXIoLTIpCisgICAgLCBtX2dyb3VwTGV2ZWwo
MCkKIHsKICAgICBBU1NFUlRfQVJHKHBhZ2UsIHBhZ2UpOwogICAgIEFTU0VSVF9BUkcoY2xpZW50
LCBjbGllbnQpOwpAQCAtMTE4Nyw3ICsxMTkxLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjphZGRNZXNzYWdlVG9DbwogICAgIGlmICghZW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAK
LSAgICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwg
ZXhlYywgYXJndW1lbnRzLCBsaW5lTnVtYmVyLCBzb3VyY2VVUkwpKTsKKyAgICBhZGRDb25zb2xl
TWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwgZXhlYywgYXJndW1lbnRz
LCBsaW5lTnVtYmVyLCBzb3VyY2VVUkwsIG1fZ3JvdXBMZXZlbCkpOwogfQogCiB2b2lkIEluc3Bl
Y3RvckNvbnRyb2xsZXI6OmFkZE1lc3NhZ2VUb0NvbnNvbGUoTWVzc2FnZVNvdXJjZSBzb3VyY2Us
IE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNpZ25lZCBsaW5l
TnVtYmVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZUlEKQpAQCAtMTE5NSw3ICsxMTk5LDcgQEAgdm9p
ZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9DbwogICAgIGlmICghZW5hYmxlZCgp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1l
c3NhZ2Uoc291cmNlLCBsZXZlbCwgbWVzc2FnZSwgbGluZU51bWJlciwgc291cmNlSUQpKTsKKyAg
ICBhZGRDb25zb2xlTWVzc2FnZShuZXcgQ29uc29sZU1lc3NhZ2Uoc291cmNlLCBsZXZlbCwgbWVz
c2FnZSwgbGluZU51bWJlciwgc291cmNlSUQsIG1fZ3JvdXBMZXZlbCkpOwogfQogCiB2b2lkIElu
c3BlY3RvckNvbnRyb2xsZXI6OmFkZENvbnNvbGVNZXNzYWdlKENvbnNvbGVNZXNzYWdlKiBjb25z
b2xlTWVzc2FnZSkKQEAgLTEyMDksNiArMTIxMywyOSBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZENvbnNvbGVNZXNzCiAgICAgICAgIGFkZFNjcmlwdENvbnNvbGVNZXNzYWdlKGNvbnNv
bGVNZXNzYWdlKTsKIH0KIAordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpzdGFydEdyb3VwKCkK
K3sgICAgCisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworICAgIAorICAgICsrbV9ncm91
cExldmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgY2FsbEZ1bmN0aW9u
KG1fc2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJzdGFydEdyb3VwSW5Db25zb2xlIiwg
MCwgTlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmRH
cm91cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworICAgIAorICAgIGlmICht
X2dyb3VwTGV2ZWwgPT0gMCkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIC0tbV9ncm91cExl
dmVsOworICAgIAorICAgIGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlv
bihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNvbnNvbGUiLCAw
LCBOVUxMLCBleGNlcHRpb24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFBy
b2ZpbGUoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmICghZW5hYmxl
ZCgpKQpAQCAtMTg1Niw2ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRT
Y3JpcHRDb25zbwogICAgIEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVy
KG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVSZWYgbGluZVZh
bHVlID0gSlNWYWx1ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5saW5lKTsK
ICAgICBKU1ZhbHVlUmVmIHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9zY3JpcHRDb250
ZXh0LCBqc1N0cmluZ1JlZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1ZhbHVlUmVmIGdy
b3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2Fn
ZS0+Z3JvdXBMZXZlbCk7CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3Nh
Z2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3Nh
Z2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2
ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAg
ICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1th
cmd1bWVudENvdW50KytdID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFtZXNzYWdlLT53
cmFwcGVkQXJndW1lbnRzLmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCByZW1haW5pbmdT
cGFjZUluQXJndW1lbnRzID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1bWVudENvdW50
OwpJbmRleDogV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oCShyZXZpc2lvbiAzNDk5MSkKKysr
IFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE2
OSw2ICsxNjksOSBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGRyYXdOb2RlSGlnaGxpZ2h0KEdyYXBo
aWNzQ29udGV4dCYpIGNvbnN0OwogCisgICAgdm9pZCBzdGFydEdyb3VwKCk7CisgICAgdm9pZCBl
bmRHcm91cCgpOworCiBwcml2YXRlOgogICAgIHZvaWQgZm9jdXNOb2RlKCk7CiAKQEAgLTIzMiw2
ICsyMzUsNyBAQCBwcml2YXRlOgogICAgIFNwZWNpYWxQYW5lbHMgbV9zaG93QWZ0ZXJWaXNpYmxl
OwogICAgIGxvbmcgbG9uZyBtX25leHRJZGVudGlmaWVyOwogICAgIFJlZlB0cjxOb2RlPiBtX2hp
Z2hsaWdodGVkTm9kZTsKKyAgICB1bnNpZ25lZCBtX2dyb3VwTGV2ZWw7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCShyZXZpc2lv
biAzNDk5MSkKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkod29ya2luZyBj
b3B5KQpAQCAtNDcsNiArNDcsMTIgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUgPSBmdW5jdGlvbigp
CiAgICAgdGhpcy5jbGVhckJ1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbGVhci1j
b25zb2xlLXN0YXR1cy1iYXItaXRlbSIpOwogICAgIHRoaXMuY2xlYXJCdXR0b24udGl0bGUgPSBX
ZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNsZWFyIGNvbnNvbGUgbG9nLiIpOwogICAgIHRoaXMuY2xl
YXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl9jbGVhckJ1dHRvbkNsaWNr
ZWQuYmluZCh0aGlzKSwgZmFsc2UpOworICAgIAorICAgIHRoaXMudG9wR3JvdXAgPSB0aGlzLl9j
cmVhdGVHcm91cCgpOworICAgIHRoaXMubWVzc2FnZXNFbGVtZW50Lmluc2VydEJlZm9yZSh0aGlz
LnRvcEdyb3VwLCB0aGlzLnByb21wdEVsZW1lbnQpOworCisgICAgdGhpcy5ncm91cExldmVsID0g
MDsKKyAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMudG9wR3JvdXA7CiAKICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibWFpbi1zdGF0dXMtYmFyIikuYWRkRXZlbnRMaXN0ZW5lcigibW91
c2Vkb3duIiwgdGhpcy5fc3RhcnRTdGF0dXNCYXJEcmFnZ2luZy5iaW5kKHRoaXMpLCB0cnVlKTsK
IH0KQEAgLTE0Myw4ICsxNDksMTUgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0g
ewogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwogCisgICAgICAgIGlmICh0eXBl
b2YgbXNnLmdyb3VwTGV2ZWwgPT09ICJudW1iZXIiKSB7CisgICAgICAgICAgICB3aGlsZSAobXNn
Lmdyb3VwTGV2ZWwgPiB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICAgICAgdGhpcy5zdGFy
dEdyb3VwKCk7CisgICAgICAgICAgICB3aGlsZSAobXNnLmdyb3VwTGV2ZWwgPCB0aGlzLmdyb3Vw
TGV2ZWwpCisgICAgICAgICAgICAgICAgdGhpcy5lbmRHcm91cCgpOworICAgICAgICB9CisKICAg
ICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOwotICAgICAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUoZWxlbWVudCwgdGhpcy5wcm9tcHRFbGVtZW50
KTsKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYXBwZW5kQ2hpbGQoZWxlbWVudCk7CiAgICAg
ICAgIHRoaXMucHJvbXB0RWxlbWVudC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7CiAgICAgfSwKIApA
QCAtMTU0LDggKzE2Nyw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZSA9IHsKIAog
ICAgICAgICB0aGlzLm1lc3NhZ2VzID0gW107CiAKLSAgICAgICAgd2hpbGUgKHRoaXMubWVzc2Fn
ZXNFbGVtZW50LmZpcnN0Q2hpbGQgIT0gdGhpcy5wcm9tcHRFbGVtZW50KQotICAgICAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcy5tZXNzYWdlc0VsZW1lbnQuZmly
c3RDaGlsZCk7CisgICAgICAgIHRoaXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgICAgIHRoaXMuY3Vy
cmVudEdyb3VwID0gdGhpcy50b3BHcm91cDsKKyAgICAgICAgdGhpcy50b3BHcm91cC5yZW1vdmVD
aGlsZHJlbigpOwogICAgIH0sCiAKICAgICBjb21wbGV0aW9uczogZnVuY3Rpb24od29yZFJhbmdl
LCBiZXN0TWF0Y2hPbmx5KQpAQCAtMjA5LDYgKzIyMywyOCBAQCBXZWJJbnNwZWN0b3IuQ29uc29s
ZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiByZXN1bHRzOwogICAgIH0sCiAKKyAgICBz
dGFydEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgdGhpcy5ncm91cExldmVsKys7CisgICAg
ICAgIGdyb3VwRWxlbWVudCA9IHRoaXMuX2NyZWF0ZUdyb3VwKCk7CisgICAgICAgIHRoaXMuY3Vy
cmVudEdyb3VwLmFwcGVuZENoaWxkKGdyb3VwRWxlbWVudCk7CisgICAgICAgIHRoaXMuY3VycmVu
dEdyb3VwID0gZ3JvdXBFbGVtZW50O2NvbnNvbGUubG9nKHRoaXMuY3VycmVudEdyb3VwKTsKKyAg
ICB9LAorICAgIAorICAgIGVuZEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMu
Z3JvdXBMZXZlbCA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5ncm91
cExldmVsLS07CisgICAgICAgIAorICAgICAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMuY3Vy
cmVudEdyb3VwLnBhcmVudE5vZGU7CisgICAgfSwKKworICAgIF9jcmVhdGVHcm91cDogZnVuY3Rp
b24oKSB7CisgICAgICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
Iik7CisgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cCIpOworICAg
ICAgICByZXR1cm4gZWxlbWVudDsKKyAgICB9LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6
IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7
CkBAIC0yMzksMTEgKzI3NSwyOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7
CiAKICAgICBfbWVzc2FnZXNDbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CisgICAgICAg
IHZhciBncm91cFRpdGxlRWxlbWVudCA9IGV2ZW50LnRhcmdldC5lbmNsb3NpbmdOb2RlT3JTZWxm
V2l0aENsYXNzKCJjb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsIik7CisgICAgICAgIGlmIChncm91
cFRpdGxlRWxlbWVudCkgeworICAgICAgICAgICAgdmFyIGdyb3VwRWxlbWVudCA9IGdyb3VwVGl0
bGVFbGVtZW50LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoQ2xhc3MoImNvbnNvbGUtZ3JvdXAiKTsK
KyAgICAgICAgICAgIGlmIChncm91cEVsZW1lbnQpCisgICAgICAgICAgICAgICAgaWYgKGdyb3Vw
RWxlbWVudC5oYXNTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKSkKKyAgICAgICAgICAgICAgICAgICAg
Z3JvdXBFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoImNvbGxhcHNlZCIpOworICAgICAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgZ3JvdXBFbGVtZW50LmFkZFN0eWxlQ2xhc3Mo
ImNvbGxhcHNlZCIpOworICAgICAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9sbElu
dG9WaWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKyAgICAgICAgCiAgICAgICAgIHZhciBs
aW5rID0gZXZlbnQudGFyZ2V0LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoTm9kZU5hbWUoImEiKTsK
ICAgICAgICAgaWYgKCFsaW5rIHx8ICFsaW5rLnJlcHJlc2VudGVkTm9kZSkKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICBXZWJJbnNwZWN0b3IudXBkYXRlRm9jdXNlZE5vZGUobGluay5y
ZXByZXNlbnRlZE5vZGUpOworICAgICAgICAKKyAgICAgICAgdmFyIGdyb3VwRWxlbWVudCA9IGV2
ZW50LnRhcmdldC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwIik7
CisgICAgICAgIGlmIChncm91cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC1j
b2xsYXBzZWQiKSkKKyAgICAgICAgICAgIGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJj
b25zb2xlLWdyb3VwLWNvbGxhcHNlZCIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBncm91
cEVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC1jb2xsYXBzZWQiKTsKKyAgICAg
ICAgCiAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwogICAgICAgICBldmVudC5wcmV2
ZW50RGVmYXVsdCgpOwogICAgIH0sCkBAIC00NDMsMTkgKzUwMiwyMCBAQCBXZWJJbnNwZWN0b3Iu
Q29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZS5f
X3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGU7CiAKLVdlYkluc3BlY3Rvci5D
b25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCkKK1dlYklu
c3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVy
bCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICB0aGlzLmxl
dmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVybCA9IHVybDsK
KyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cExldmVsOwogCiAgICAgLy8gVGhpcyBfZm9ybWF0
IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQuIFRoZSByZXN1
bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNzYWdlIGJ1YmJs
ZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2VudGF0aW9ucy4K
LSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNh
bGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5tZXNzYWdlID0g
dGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSksIHRy
dWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBwcm9wZXJ0eSBp
cyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAgICB0aGlzLmZv
cm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwo
YXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhpcy5fZm9ybWF0
KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQogCiBXZWJJbnNw
ZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTQxLDYgKzYwMSw5IEBAIFdl
Ykluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3Nh
Z2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNv
bnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
IGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxl
OgorICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC10
aXRsZS1sZXZlbCIpOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIG1lc3NhZ2VUZXh0RWxlbWVu
dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2NjgsOSBAQCBX
ZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gCiAgICAgICAgICAgICBjYXNl
IFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6CiAgICAgICAg
ICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiRXJyb3IiOwogICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVs
Lkdyb3VwVGl0bGU6CisgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiR3JvdXBUaXRsZSI7
CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAogICAgICAgICByZXR1cm4gc291
cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxTdHJpbmcgKyAiOiAiICsgdGhpcy5mb3JtYXR0ZWRNZXNz
YWdlLnRleHRDb250ZW50ICsgIlxuIiArIHRoaXMudXJsICsgIiBsaW5lICIgKyB0aGlzLmxpbmU7
CkBAIC02MjQsNyArNjkwLDggQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VM
ZXZlbAogICAgIFRpcDogMCwKICAgICBMb2c6IDEsCiAgICAgV2FybmluZzogMiwKLSAgICBFcnJv
cjogMworICAgIEVycm9yOiAzLAorICAgIEdyb3VwVGl0bGU6IDQKIH0KIAogV2ViSW5zcGVjdG9y
LkNvbnNvbGVDb21tYW5kID0gZnVuY3Rpb24oY29tbWFuZCwgcmVzdWx0LCBmb3JtYXR0ZWRSZXN1
bHRFbGVtZW50LCBsZXZlbCkKSW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9y
LmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MJ
KHJldmlzaW9uIDM0OTkxKQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3Nz
CSh3b3JraW5nIGNvcHkpCkBAIC01MzIsNiArNTMyLDI5IEBAIGJvZHkuY29uc29sZS12aXNpYmxl
ICNjb25zb2xlIHsKICAgICBvcGFjaXR5OiAxOwogfQogCisuY29uc29sZS1ncm91cCAuY29uc29s
ZS1ncm91cCB7CisJYm9yZGVyOiAxMHB4IHNvbGlkIHJnYigyNTUsIDAsIDApOworfQorCisuY29u
c29sZS1ncm91cC10aXRsZS1sZXZlbCB7CisJYmFja2dyb3VuZC1pbWFnZTogdXJsKEltYWdlcy9k
aXNjbG9zdXJlVHJpYW5nbGVTbWFsbERvd24ucG5nKTsKKwliYWNrZ3JvdW5kLXJlcGVhdDogbm8t
cmVwZWF0OworCWJhY2tncm91bmQtcG9zaXRpb246IDNweCAxcHg7CisJZm9udC13ZWlnaHQ6IGJv
bGQ7Cit9CisKKy5jb25zb2xlLWdyb3VwLmNvbGxhcHNlZCAuY29uc29sZS1ncm91cC10aXRsZS1s
ZXZlbCB7CisJYmFja2dyb3VuZC1pbWFnZTogdXJsKEltYWdlcy9kaXNjbG9zdXJlVHJpYW5nbGVT
bWFsbFJpZ2h0LnBuZyk7Cit9CisKKy5jb25zb2xlLWdyb3VwLmNvbGxhcHNlZCA+IDpub3QoLmNv
bnNvbGUtZ3JvdXAtdGl0bGUtbGV2ZWwpIHsKKwlkaXNwbGF5OiBub25lOworfQorCiAuYXV0by1j
b21wbGV0ZS10ZXh0IHsKICAgICBjb2xvcjogcmdiKDEyOCwgMTI4LCAxMjgpOwogICAgIC13ZWJr
aXQtdXNlci1zZWxlY3Q6IG5vbmU7CkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3Bl
Y3Rvci5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5q
cwkocmV2aXNpb24gMzQ5OTEpCisrKyBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5q
cwkod29ya2luZyBjb3B5KQpAQCAtNzk3LDYgKzc5NywxNiBAQCBXZWJJbnNwZWN0b3IuYWRkTWVz
c2FnZVRvQ29uc29sZSA9IGZ1bmN0CiAgICAgdGhpcy5jb25zb2xlLmFkZE1lc3NhZ2UobXNnKTsK
IH0KIAorV2ViSW5zcGVjdG9yLnN0YXJ0R3JvdXBJbkNvbnNvbGUgPSBmdW5jdGlvbihtc2cpCit7
CisgICAgdGhpcy5jb25zb2xlLnN0YXJ0R3JvdXAobXNnKTsKK30KKworV2ViSW5zcGVjdG9yLmVu
ZEdyb3VwSW5Db25zb2xlID0gZnVuY3Rpb24obXNnKQoreworICAgIHRoaXMuY29uc29sZS5lbmRH
cm91cChtc2cpOworfQorCiBXZWJJbnNwZWN0b3IuYWRkUHJvZmlsZSA9IGZ1bmN0aW9uKHByb2Zp
bGUpCiB7CiAgICAgdGhpcy5wYW5lbHMucHJvZmlsZXMuYWRkUHJvZmlsZShwcm9maWxlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22125</attachid>
            <date>2008-07-07 04:14:23 -0700</date>
            <delta_ts>2008-07-17 11:41:25 -0700</delta_ts>
            <desc>Bug fixed</desc>
            <filename>MyThirdPatch7.txt</filename>
            <type>text/plain</type>
            <size>16717</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTAzMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjggQEAKKzIwMDgtMDctMDcgS2Vpc2hpIEhhdHRvcmkgIDxjYXNleS5oYXR0b3Jp
QGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpKU0NvbnNvbGU6Omdyb3VwKToKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q29uc29sZTo6Z3JvdXApOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29sZTo6
Z3JvdXBFbmQpOgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6
KToKKyAgICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAg
ICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q29uc29sZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNvbnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwu
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25z
b2xlKTogQWRkZWQgZ3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNvbnRyb2xsZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBv
bmUgYW5kIGNhbGxzIGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckNvbnRyb2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkg
b25lIGFuZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3Vw
TGV2ZWwgYXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpk
aWRDb21taXRMb2FkKTogQWRkZWQgbGluZSB0byByZXNldCBtX2dyb3VwTGV2ZWwuCisgICAgICAg
ICogcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmg6CisgICAgICAgICogcGFnZS9pbnNwZWN0b3Iv
Q29uc29sZS5qczogQWRkZWQgYSBkaXYgdGhhdCB3cmFwcyB0aGUgbWVzc2FnZXMuCisgICAgICAg
ICogcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzczoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rv
ci9pbnNwZWN0b3IuanM6IEFkZGVkIHN0YXJ0R3JvdXAvZW5kR3JvdXAuCisKIDIwMDgtMDctMDYg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4g
QmVybnN0ZWluLgpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAko
cmV2aXNpb24gMzUwMjQpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTgzLDQgKzgzLDEwIEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6
cHJvZmlsZUVuZChFeGVjU3RhdGUKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAorSlNW
YWx1ZSogSlNDb25zb2xlOjpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFy
Z3VtZW50cykKK3sKKyAgICBpbXBsKCktPmdyb3VwKGV4ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0
dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdl
YkNvcmUvcGFnZS9Db25zb2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29s
ZS5jcHAJKHJldmlzaW9uIDM1MDI0KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNjYsNiArMjY2LDM3IEBAIHZvaWQgQ29uc29sZTo6cHJvZmlsZUVuZChF
eGVjU3RhdGUqIGV4ZWMKICAgICBQcm9maWxlcjo6cHJvZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhl
eGVjLCB0aXRsZSk7CiB9CiAKK3ZvaWQgQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBj
b25zdCBBcmdMaXN0JiBhcmd1bWVudHMpCit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGlmICghcGFn
ZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIo
KS0+c3RhcnRHcm91cCgpOworICAgIAorICAgIGNvbnN0IEtVUkwmIHVybCA9IG1fZnJhbWUtPmxv
YWRlcigpLT51cmwoKTsKKyAgICAKKyAgICBpZiAoYXJndW1lbnRzLmlzRW1wdHkoKSkKKyAgICAg
ICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5hZGRNZXNzYWdlVG9Db25zb2xlKEpTTWVz
c2FnZVNvdXJjZSwgR3JvdXBUaXRsZU1lc3NhZ2VMZXZlbCwgU3RyaW5nKCksIDAsIHVybC5zdHJp
bmcoKSk7CisgICAgZWxzZQorICAgICAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmFk
ZE1lc3NhZ2VUb0NvbnNvbGUoSlNNZXNzYWdlU291cmNlLCBHcm91cFRpdGxlTWVzc2FnZUxldmVs
LCBleGVjLCBhcmd1bWVudHMsIDAsIHVybC5zdHJpbmcoKSk7Cit9CisKK3ZvaWQgQ29uc29sZTo6
Z3JvdXBFbmQoKQoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
UGFnZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJl
dHVybjsKKyAgICAKKyAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmVuZEdyb3VwKCk7
Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxl
PiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJ
bmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2Uv
Q29uc29sZS5oCShyZXZpc2lvbiAzNTAyNCkKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExvZ01lc3NhZ2VMZXZlbCwKICAgICAgICAgV2Fy
bmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwKKyAgICAgICAgRXJy
b3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwKICAgICB9Owog
CiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBSZWZDb3VudGVkPENvbnNvbGU+LCBwdWJsaWMg
S0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2ICs3Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRpb24oYm9vbCBjb25kaXRpb24sIEtKUzo6RXhl
Y1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwogICAgICAgICB2b2lkIHBy
b2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CiAg
ICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlz
dCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0
IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgpOwogCiAg
ICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxLSlM6OlByb2ZpbGU+KTsK
IApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUwMjQpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29s
ZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDggQEAgbW9kdWxlIHdpbmRvdyB7CiAK
ICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlKGluIERPTVN0cmluZyB0aXRsZSk7CiAgICAg
ICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgpOworICAgICAgICBbQ3VzdG9tXSB2b2lkIGdy
b3VwKCk7CisgICAgICAgIHZvaWQgZ3JvdXBFbmQoKTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJD
b3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9w
YWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAzNTAyNCkKKysrIFdlYkNvcmUv
cGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsx
NTIsMjMgQEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JDb250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29u
c29sZU1lc3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29s
ZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBt
LCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIGNvbnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGks
IGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAg
ICAgLCBsZXZlbChsKQogICAgICAgICAsIG1lc3NhZ2UobSkKICAgICAgICAgLCBsaW5lKGxpKQog
ICAgICAgICAsIHVybCh1KQorICAgICAgICAsIGdyb3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQog
Ci0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhl
Y1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3Ry
aW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVs
IGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJnTGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNv
bnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAg
LCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRBcmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAg
ICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwodSkKKyAgICAgICAgLCBncm91cExldmVsKGcp
CiAgICAgewogICAgICAgICBKU0xvY2sgbG9jayhmYWxzZSk7CiAgICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytpKQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVj
dCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9yPFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdy
YXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQgbGluZTsKICAgICBTdHJpbmcgdXJsOworICAg
IHVuc2lnbmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAvLyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENs
YXNzCkBAIC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JD
b250cm9sbGVyCiAgICAgLCBtX3JlY29yZGluZ1VzZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQog
ICAgICwgbV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1lbnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVu
dGlmaWVyKC0yKQorICAgICwgbV9ncm91cExldmVsKDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdl
LCBwYWdlKTsKICAgICBBU1NFUlRfQVJHKGNsaWVudCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5
MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAo
IWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3
IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJl
ciwgc291cmNlVVJMKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdl
KHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMLCBt
X2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdl
VG9Db25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3Vy
Y2VJRCkKQEAgLTExOTUsNyArMTE5OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRk
TWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
YWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3Nh
Z2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlEKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENv
bnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlE
LCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25z
b2xlTWVzc2FnZShDb25zb2xlTWVzc2FnZSogY29uc29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEy
MTMsMjkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzcwogICAgICAg
ICBhZGRTY3JpcHRDb25zb2xlTWVzc2FnZShjb25zb2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5z
cGVjdG9yQ29udHJvbGxlcjo6c3RhcnRHcm91cCgpCit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhj
ZXB0aW9uID0gMDsKKyAgICAKKyAgICArK21fZ3JvdXBMZXZlbDsKKworICAgIGlmICh3aW5kb3dW
aXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlvbihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0
T2JqZWN0LCAic3RhcnRHcm91cEluQ29uc29sZSIsIDAsIE5VTEwsIGV4Y2VwdGlvbik7Cit9CisK
K3ZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZW5kR3JvdXAoKQoreworICAgIEpTVmFsdWVSZWYg
ZXhjZXB0aW9uID0gMDsKKyAgICAKKyAgICBpZiAobV9ncm91cExldmVsID09IDApCisgICAgICAg
IHJldHVybjsKKyAgICAKKyAgICAtLW1fZ3JvdXBMZXZlbDsKKyAgICAKKyAgICBpZiAod2luZG93
VmlzaWJsZSgpKQorICAgICAgICBjYWxsRnVuY3Rpb24obV9zY3JpcHRDb250ZXh0LCBtX3Njcmlw
dE9iamVjdCwgImVuZEdyb3VwSW5Db25zb2xlIiwgMCwgTlVMTCwgZXhjZXB0aW9uKTsKK30KKwog
dm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRQcm9maWxlKFBhc3NSZWZQdHI8UHJvZmlsZT4g
cHJwUHJvZmlsZSkKIHsKICAgICBpZiAoIWVuYWJsZWQoKSkKQEAgLTE4NTYsNiArMTg4Myw3IEBA
IHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc28KICAgICBKU1ZhbHVlUmVm
IGxldmVsVmFsdWUgPSBKU1ZhbHVlTWFrZU51bWJlcihtX3NjcmlwdENvbnRleHQsIG1lc3NhZ2Ut
PmxldmVsKTsKICAgICBKU1ZhbHVlUmVmIGxpbmVWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1f
c2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGluZSk7CiAgICAgSlNWYWx1ZVJlZiB1cmxWYWx1ZSA9
IEpTVmFsdWVNYWtlU3RyaW5nKG1fc2NyaXB0Q29udGV4dCwganNTdHJpbmdSZWYobWVzc2FnZS0+
dXJsKS5nZXQoKSk7CisgICAgSlNWYWx1ZVJlZiBncm91cExldmVsVmFsdWUgPSBKU1ZhbHVlTWFr
ZU51bWJlcihtX3NjcmlwdENvbnRleHQsIG1lc3NhZ2UtPmdyb3VwTGV2ZWwpOwogCiAgICAgc3Rh
dGljIGNvbnN0IHVuc2lnbmVkIG1heGltdW1NZXNzYWdlQXJndW1lbnRzID0gMjU2OwogICAgIEpT
VmFsdWVSZWYgYXJndW1lbnRzW21heGltdW1NZXNzYWdlQXJndW1lbnRzXTsKQEAgLTE4NjQsNiAr
MTg5Miw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkU2NyaXB0Q29uc28KICAgICBh
cmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxldmVsVmFsdWU7CiAgICAgYXJndW1lbnRzW2Fy
Z3VtZW50Q291bnQrK10gPSBsaW5lVmFsdWU7CiAgICAgYXJndW1lbnRzW2FyZ3VtZW50Q291bnQr
K10gPSB1cmxWYWx1ZTsKKyAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGdyb3VwTGV2
ZWxWYWx1ZTsKIAogICAgIGlmICghbWVzc2FnZS0+d3JhcHBlZEFyZ3VtZW50cy5pc0VtcHR5KCkp
IHsKICAgICAgICAgdW5zaWduZWQgcmVtYWluaW5nU3BhY2VJbkFyZ3VtZW50cyA9IG1heGltdW1N
ZXNzYWdlQXJndW1lbnRzIC0gYXJndW1lbnRDb3VudDsKQEAgLTE5NDMsNiArMTk3Miw3IEBAIHZv
aWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlkQ29tbWl0TG9hZCgKIAogICAgICAgICBkZWxldGVB
bGxWYWx1ZXMobV9jb25zb2xlTWVzc2FnZXMpOwogICAgICAgICBtX2NvbnNvbGVNZXNzYWdlcy5j
bGVhcigpOworICAgICAgICBtX2dyb3VwTGV2ZWwgPSAwOwogCiAgICAgICAgIG1fcHJvZmlsZXMu
Y2xlYXIoKTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oCShyZXZpc2lvbiAz
NTAyNCkKKysrIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE2OCw2ICsxNjgsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGVwT3V0T2ZGdW5jdGlv
bkluRGVidWdnZXIoKTsKIAogICAgIHZvaWQgZHJhd05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250
ZXh0JikgY29uc3Q7CisgICAgCisgICAgdm9pZCBzdGFydEdyb3VwKCk7CisgICAgdm9pZCBlbmRH
cm91cCgpOwogCiBwcml2YXRlOgogICAgIHZvaWQgZm9jdXNOb2RlKCk7CkBAIC0yMzIsNiArMjM1
LDcgQEAgcHJpdmF0ZToKICAgICBTcGVjaWFsUGFuZWxzIG1fc2hvd0FmdGVyVmlzaWJsZTsKICAg
ICBsb25nIGxvbmcgbV9uZXh0SWRlbnRpZmllcjsKICAgICBSZWZQdHI8Tm9kZT4gbV9oaWdobGln
aHRlZE5vZGU7CisgICAgdW5zaWduZWQgbV9ncm91cExldmVsOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwkocmV2aXNpb24gMzUw
MjQpCisrKyBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMJKHdvcmtpbmcgY29weSkK
QEAgLTQ3LDYgKzQ3LDEyIEBAIFdlYkluc3BlY3Rvci5Db25zb2xlID0gZnVuY3Rpb24oKQogICAg
IHRoaXMuY2xlYXJCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xlYXItY29uc29s
ZS1zdGF0dXMtYmFyLWl0ZW0iKTsKICAgICB0aGlzLmNsZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxvZy4iKTsKICAgICB0aGlzLmNsZWFyQnV0
dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLmJp
bmQodGhpcyksIGZhbHNlKTsKKyAgICAKKyAgICB0aGlzLnRvcEdyb3VwID0gdGhpcy5fY3JlYXRl
R3JvdXAoKTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUodGhpcy50b3BH
cm91cCwgdGhpcy5wcm9tcHRFbGVtZW50KTsKKyAgICAKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSAw
OworICAgIHRoaXMuY3VycmVudEdyb3VwID0gdGhpcy50b3BHcm91cDsKIAogICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJtYWluLXN0YXR1cy1iYXIiKS5hZGRFdmVudExpc3RlbmVyKCJtb3Vz
ZWRvd24iLCB0aGlzLl9zdGFydFN0YXR1c0JhckRyYWdnaW5nLmJpbmQodGhpcyksIHRydWUpOwog
fQpAQCAtMTQzLDggKzE0OSwxNSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7
CiAKICAgICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKG1zZyk7CiAKKyAgICAgICAgaWYgKHR5cGVv
ZiBtc2cuZ3JvdXBMZXZlbCA9PT0gIm51bWJlciIpIHsKKyAgICAgICAgICAgIHdoaWxlIChtc2cu
Z3JvdXBMZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkKKyAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0
R3JvdXAoKTsKKyAgICAgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBMZXZlbCA8IHRoaXMuZ3JvdXBM
ZXZlbCkKKyAgICAgICAgICAgICAgICB0aGlzLmVuZEdyb3VwKCk7CisgICAgICAgIH0KKwogICAg
ICAgICB2YXIgZWxlbWVudCA9IG1zZy50b01lc3NhZ2VFbGVtZW50KCk7Ci0gICAgICAgIHRoaXMu
bWVzc2FnZXNFbGVtZW50Lmluc2VydEJlZm9yZShlbGVtZW50LCB0aGlzLnByb21wdEVsZW1lbnQp
OworICAgICAgICB0aGlzLmN1cnJlbnRHcm91cC5hcHBlbmRDaGlsZChlbGVtZW50KTsKICAgICAg
ICAgdGhpcy5wcm9tcHRFbGVtZW50LnNjcm9sbEludG9WaWV3KGZhbHNlKTsKICAgICB9LAogCkBA
IC0xNTQsOCArMTY3LDkgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0gewogCiAg
ICAgICAgIHRoaXMubWVzc2FnZXMgPSBbXTsKIAotICAgICAgICB3aGlsZSAodGhpcy5tZXNzYWdl
c0VsZW1lbnQuZmlyc3RDaGlsZCAhPSB0aGlzLnByb21wdEVsZW1lbnQpCi0gICAgICAgICAgICB0
aGlzLm1lc3NhZ2VzRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLm1lc3NhZ2VzRWxlbWVudC5maXJz
dENoaWxkKTsKKyAgICAgICAgdGhpcy5ncm91cExldmVsID0gMDsKKyAgICAgICAgdGhpcy5jdXJy
ZW50R3JvdXAgPSB0aGlzLnRvcEdyb3VwOworICAgICAgICB0aGlzLnRvcEdyb3VwLnJlbW92ZUNo
aWxkcmVuKCk7CiAgICAgfSwKIAogICAgIGNvbXBsZXRpb25zOiBmdW5jdGlvbih3b3JkUmFuZ2Us
IGJlc3RNYXRjaE9ubHkpCkBAIC0yMDksNiArMjIzLDI4IEBAIFdlYkluc3BlY3Rvci5Db25zb2xl
LnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICAgfSwKIAorICAgIHN0
YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwrKzsKKyAgICAg
ICAgZ3JvdXBFbGVtZW50ID0gdGhpcy5fY3JlYXRlR3JvdXAoKTsKKyAgICAgICAgdGhpcy5jdXJy
ZW50R3JvdXAuYXBwZW5kQ2hpbGQoZ3JvdXBFbGVtZW50KTtncm91cEVsZW1lbnQuY2xhc3NOYW1l
ICs9ICIgIiArIHRoaXMuZ3JvdXBMZXZlbDsKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAgPSBn
cm91cEVsZW1lbnQ7CisgICAgfSwKKworICAgIGVuZEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAg
ICAgaWYgKHRoaXMuZ3JvdXBMZXZlbCA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgdGhpcy5ncm91cExldmVsLS07CisKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlz
LmN1cnJlbnRHcm91cC5wYXJlbnROb2RlOworICAgIH0sCisKKyAgICBfY3JlYXRlR3JvdXA6IGZ1
bmN0aW9uKCkgeworICAgICAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpOworICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNvbnNvbGUtZ3JvdXAiKTsK
KyAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CisgICAgfSwKKwogICAgIF90b2dnbGVCdXR0b25DbGlj
a2VkOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICB0aGlzLnZpc2libGUgPSAhdGhpcy52aXNp
YmxlOwpAQCAtMjM5LDYgKzI3NSwxNyBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUg
PSB7CiAKICAgICBfbWVzc2FnZXNDbGlja2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CisgICAg
ICAgIHZhciBncm91cFRpdGxlRWxlbWVudCA9IGV2ZW50LnRhcmdldC5lbmNsb3NpbmdOb2RlT3JT
ZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsIik7CisgICAgICAgIGlmIChn
cm91cFRpdGxlRWxlbWVudCkgeworICAgICAgICAgICAgdmFyIGdyb3VwRWxlbWVudCA9IGdyb3Vw
VGl0bGVFbGVtZW50LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoQ2xhc3MoImNvbnNvbGUtZ3JvdXAi
KTsKKyAgICAgICAgICAgIGlmIChncm91cEVsZW1lbnQpCisgICAgICAgICAgICAgICAgaWYgKGdy
b3VwRWxlbWVudC5oYXNTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKSkKKyAgICAgICAgICAgICAgICAg
ICAgZ3JvdXBFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoImNvbGxhcHNlZCIpOworICAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgZ3JvdXBFbGVtZW50LmFkZFN0eWxlQ2xh
c3MoImNvbGxhcHNlZCIpOworICAgICAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9s
bEludG9WaWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKyAgICAgICAgCiAgICAgICAgIHZh
ciBsaW5rID0gZXZlbnQudGFyZ2V0LmVuY2xvc2luZ05vZGVPclNlbGZXaXRoTm9kZU5hbWUoImEi
KTsKICAgICAgICAgaWYgKCFsaW5rIHx8ICFsaW5rLnJlcHJlc2VudGVkTm9kZSkKICAgICAgICAg
ICAgIHJldHVybjsKQEAgLTQ0MywxOSArNDkwLDIwIEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnBy
b3RvdHlwZSA9IHsKIAogV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlLl9fcHJvdG9fXyA9
IFdlYkluc3BlY3Rvci5WaWV3LnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlID0gZnVuY3Rpb24oc291cmNlLCBsZXZlbCwgbGluZSwgdXJsKQorV2ViSW5zcGVjdG9yLkNv
bnNvbGVNZXNzYWdlID0gZnVuY3Rpb24oc291cmNlLCBsZXZlbCwgbGluZSwgdXJsLCBncm91cExl
dmVsKQogewogICAgIHRoaXMuc291cmNlID0gc291cmNlOwogICAgIHRoaXMubGV2ZWwgPSBsZXZl
bDsKICAgICB0aGlzLmxpbmUgPSBsaW5lOwogICAgIHRoaXMudXJsID0gdXJsOworICAgIHRoaXMu
Z3JvdXBMZXZlbCA9IGdyb3VwTGV2ZWw7CiAKICAgICAvLyBUaGlzIF9mb3JtYXQgY2FsbCBwYXNz
ZXMgaW4gdHJ1ZSBmb3IgdGhlIHBsYWluVGV4dCBhcmd1bWVudC4gVGhlIHJlc3VsdCdzIHRleHRD
b250ZW50IGlzCiAgICAgLy8gdXNlZCBmb3IgaW5saW5lIG1lc3NhZ2UgYnViYmxlcyBpbiBTb3Vy
Y2VGcmFtZXMsIG9yIG90aGVyIHBsYWluLXRleHQgcmVwcmVzZW50YXRpb25zLgotICAgIHRoaXMu
bWVzc2FnZSA9IHRoaXMuX2Zvcm1hdChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVu
dHMsIDQpLCB0cnVlKS50ZXh0Q29udGVudDsKKyAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3Jt
YXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA1KSwgdHJ1ZSkudGV4dENv
bnRlbnQ7CiAKICAgICAvLyBUaGUgZm9ybWF0ZWRNZXNzYWdlIHByb3BlcnR5IGlzIHVzZWQgZm9y
IHRoZSByaWNoIGFuZCBpbnRlcmFjdGl2ZSBjb25zb2xlLgotICAgIHRoaXMuZm9ybWF0dGVkTWVz
c2FnZSA9IHRoaXMuX2Zvcm1hdChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMs
IDQpKTsKKyAgICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJv
dG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA1KSk7CiB9CiAKIFdlYkluc3BlY3Rvci5Db25z
b2xlTWVzc2FnZS5wcm90b3R5cGUgPSB7CkBAIC01NDEsNiArNTg5LDkgQEAgV2ViSW5zcGVjdG9y
LkNvbnNvbGVNZXNzYWdlLnByb3RvdHlwZSA9IAogICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVsLkVy
cm9yOgogICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1lcnJv
ci1sZXZlbCIpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJ
bnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAg
ICAgICAgICAgZWxlbWVudC5hZGRTdHlsZUNsYXNzKCJjb25zb2xlLWdyb3VwLXRpdGxlLWxldmVs
Iik7CiAgICAgICAgIH0KIAogICAgICAgICB2YXIgbWVzc2FnZVRleHRFbGVtZW50ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOwpAQCAtNjA1LDYgKzY1Niw5IEBAIFdlYkluc3BlY3Rv
ci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVj
dG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBs
ZXZlbFN0cmluZyA9ICJFcnJvciI7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuR3JvdXBUaXRs
ZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbFN0cmluZyA9ICJHcm91cFRpdGxl
IjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogCiAgICAg
ICAgIHJldHVybiBzb3VyY2VTdHJpbmcgKyAiICIgKyBsZXZlbFN0cmluZyArICI6ICIgKyB0aGlz
LmZvcm1hdHRlZE1lc3NhZ2UudGV4dENvbnRlbnQgKyAiXG4iICsgdGhpcy51cmwgKyAiIGxpbmUg
IiArIHRoaXMubGluZTsKQEAgLTYyNCw3ICs2NzgsOCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1l
c3NhZ2UuTWVzc2FnZUxldmVsCiAgICAgVGlwOiAwLAogICAgIExvZzogMSwKICAgICBXYXJuaW5n
OiAyLAotICAgIEVycm9yOiAzCisgICAgRXJyb3I6IDMsCisgICAgR3JvdXBUaXRsZTogNAogfQog
CiBXZWJJbnNwZWN0b3IuQ29uc29sZUNvbW1hbmQgPSBmdW5jdGlvbihjb21tYW5kLCByZXN1bHQs
IGZvcm1hdHRlZFJlc3VsdEVsZW1lbnQsIGxldmVsKQpJbmRleDogV2ViQ29yZS9wYWdlL2luc3Bl
Y3Rvci9pbnNwZWN0b3IuY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3Iv
aW5zcGVjdG9yLmNzcwkocmV2aXNpb24gMzUwMjQpCisrKyBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9y
L2luc3BlY3Rvci5jc3MJKHdvcmtpbmcgY29weSkKQEAgLTUzMiw2ICs1MzIsMjUgQEAgYm9keS5j
b25zb2xlLXZpc2libGUgI2NvbnNvbGUgewogICAgIG9wYWNpdHk6IDE7CiB9CiAKKy5jb25zb2xl
LWdyb3VwIC5jb25zb2xlLWdyb3VwIHsKKwlib3JkZXItbGVmdDogMTBweCBzb2xpZCByZ2IoMjU1
LCAwLCAwKTsKK30KKworLmNvbnNvbGUtZ3JvdXAtdGl0bGUtbGV2ZWwgeworCWJhY2tncm91bmQt
aW1hZ2U6IHVybChJbWFnZXMvZGlzY2xvc3VyZVRyaWFuZ2xlU21hbGxEb3duLnBuZyk7CisJYmFj
a2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKKwliYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggMXB4
OworCWZvbnQtd2VpZ2h0OiBib2xkOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgLmNv
bnNvbGUtZ3JvdXAtdGl0bGUtbGV2ZWwgeworCWJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMv
ZGlzY2xvc3VyZVRyaWFuZ2xlU21hbGxSaWdodC5wbmcpOworfQorCisuY29uc29sZS1ncm91cC5j
b2xsYXBzZWQgPiA6bm90KC5jb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsKSB7CisJZGlzcGxheTog
bm9uZTsKK30KKwogLmF1dG8tY29tcGxldGUtdGV4dCB7CiAgICAgY29sb3I6IHJnYigxMjgsIDEy
OCwgMTI4KTsKICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwpJbmRleDogV2ViQ29yZS9w
YWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2lu
c3BlY3Rvci9pbnNwZWN0b3IuanMJKHJldmlzaW9uIDM1MDI0KQorKysgV2ViQ29yZS9wYWdlL2lu
c3BlY3Rvci9pbnNwZWN0b3IuanMJKHdvcmtpbmcgY29weSkKQEAgLTc5Nyw2ICs3OTcsMTYgQEAg
V2ViSW5zcGVjdG9yLmFkZE1lc3NhZ2VUb0NvbnNvbGUgPSBmdW5jdAogICAgIHRoaXMuY29uc29s
ZS5hZGRNZXNzYWdlKG1zZyk7CiB9CiAKK1dlYkluc3BlY3Rvci5zdGFydEdyb3VwSW5Db25zb2xl
ID0gZnVuY3Rpb24obXNnKQoreworICAgIHRoaXMuY29uc29sZS5zdGFydEdyb3VwKG1zZyk7Cit9
CisKK1dlYkluc3BlY3Rvci5lbmRHcm91cEluQ29uc29sZSA9IGZ1bmN0aW9uKG1zZykKK3sKKyAg
ICB0aGlzLmNvbnNvbGUuZW5kR3JvdXAobXNnKTsKK30KKwogV2ViSW5zcGVjdG9yLmFkZFByb2Zp
bGUgPSBmdW5jdGlvbihwcm9maWxlKQogewogICAgIHRoaXMucGFuZWxzLnByb2ZpbGVzLmFkZFBy
b2ZpbGUocHJvZmlsZSk7Cg==
</data>
<flag name="review"
          id="9743"
          type_id="1"
          status="-"
          setter="aroben"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22126</attachid>
            <date>2008-07-07 04:15:38 -0700</date>
            <delta_ts>2008-07-23 04:12:49 -0700</delta_ts>
            <desc>New screenshot</desc>
            <filename>Picture 5.png</filename>
            <type>text/plain</type>
            <size>149788</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">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
y57c+9NH5dlnr+x/798Zlp04GKKeHU4Y4du+7dtEROSzn/2svPnNbz4Q6IYWug9/+MNy3333yWc/
+9kDNQAAAADmfeUrX5FPfOIT8s53vjN2is4ssYw0nOcZYharz/I21aQe0qKnQ7SSaR+cZ11nLQZu
ffijR+SLfy7yb2ztyS/9zNEDQe3ZZ581Xy28/vWvl5tuukn+6I/+SM6fPy8iYrbQ/fIv/7I89dRT
ctNNN8nrX//6JvcGAAAArjdhkBtmiL8qllVmci206Zn6YyHOm3FcrXZTT4AypFH9BT0zuqy8D/1P
nZy70Mt3nezl/p97+X5Q+8/+x5uu/QB9f2Ws3KyXvdme7O7O5L9+9/ip/zc3N+VnfuZn5Nd//dfl
gQcekPe9731yyy23HAh073//++ULX/iCdF0np0+fls3NTSY3AQAAAJQvfelL8tu//dv7Qc45Zi4V
2GK9Dz2TobhNMQFKGOD0fpH4wED9RZsMCpzSRtfLd5zo5e+/65UHWtx29/akk0566UVmvewN67ft
9tI3WsOt73t561vfKl/60pfk93//9+V973ufvPGNb5TbbrtNREQ+//nPy9NPPy1d18mb3vQmectb
3jJqlk0AAADgenTu3Dn5nd/5Hfn5n//5/SD38Y9/XO6++26RfEZJjZPzrLO9lDAXG0OX2lcT4lY6
zP0X/+ExEZkfA/f4XS9L1rXqann58mV517veJd/yLd8iv/mbvylPPfWU/OEf/qGIXJns5KabbpK3
v/3t8lM/9VPy3HPPyZEjUzXEAgAAAOtHB7kvf/nL8lu/9VvWmLmhS+UgHDKmhfknl2uqliQYtJgA
ZSYi3hlFwnNzX8z1pYKZZoptb29X14rEQ1mrsJazubkpL774orztbW+Tt771rfL5z39+f8mCkydP
ym233Sabm5vywgsvyA033LCQZwIAAADWgRXkPvGJT+x/vmoIcalGq9xcIMO5sZ6LVp0rC41pqhm+
VCfpsBcOCtyQ+ZY4kStffkOd6zI2kK2zI0eO7Le2HT16VN74xjfKD/3QD4mIyO7u7v6yBa94xSsY
KwcAAABc9cUvflF+93d/NxrkvvzlL8trXvMakfkZ+oeXbqnr5Fqg08e08Nzh2lVKFh4rmUYz1080
nBRFB0H9QyGi7/v9197enrzwwgvy3HPPyXPPPScvvPCC7O3t7R8HAAAAIPLlL385G+Q+8YlPDKdb
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
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22344</attachid>
            <date>2008-07-17 11:41:25 -0700</date>
            <delta_ts>2008-07-17 11:54:11 -0700</delta_ts>
            <desc>Improved</desc>
            <filename>MyThirdPatch9.txt</filename>
            <type>text/plain</type>
            <size>17963</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTIyMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDctMTcgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRml4ZWQgQnVnIDE5MTU4OiBJbnNwZWN0b3Igc2hvdWxkIHN1cHBvcnQgY29uc29sZS5n
cm91cC9jb25zb2xlLmdyb3VwRW5kCisKKwkJPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTE1OD4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0NvbnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAg
ICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3Vw
KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cEVuZCk6IEFkZGVkLgor
ICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAgICAgICAg
KiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdl
L0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29sZU1lc3Nh
Z2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwuCisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKTogQWRkZWQg
Z3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBvbmUgYW5kIGNhbGxz
IGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRy
b2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkgb25lIGFuZCBjYWxs
cyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwgYXJndW1l
bnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21taXRMb2Fk
KTogUmVzZXRzIG1fZ3JvdXBMZXZlbC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xs
ZXIuaDoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzOgorCQkoV2ViSW5zcGVj
dG9yLkNvbnNvbGUpOiBBZGRlZCBncm91cExldmVsIGFuZCBjdXJyZW50R3JvdXAgdG9wR3JvdXAu
CisJCShXZWJJbnNwZWN0b3IuQ29uc29sZS5hZGRNZXNzYWdlKTogQ2FsbHMgYWRkTWVzc2FnZSBt
ZXRob2QgaW4gdGhlIGN1cnJlbnRHcm91cC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlLnN0YXJ0
R3JvdXApOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlLmVuZEdyb3VwKTogQWRkZWQu
CisJCShXZWJJbnNwZWN0b3IuQ29uc29sZS5jbGVhck1lc3NhZ2VzKTogUmVzZXRzIGdyb3VwTGV2
ZWwgYW5kIGN1cnJlbnRHcm91cC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSk6IEFk
ZGVkIGdyb3VwTGV2ZWwgcHJvcGVydHkuCisJCShXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2Uu
TWVzc2FnZUxldmVsLkdyb3VwVGl0bGUpOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xl
R3JvdXApOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAuYWRkTWVzc2FnZSk6
IEFkZHMgY29uc29sZSBtZXNzYWdlIHRvIGdyb3VwLgorCQkoV2ViSW5zcGVjdG9yLkNvbnNvbGVH
cm91cC5fdGl0bGVDbGlja2VkKTogQWRkcyAiY29sbGFwc2VkIiBzdHlsZSBjbGFzcy4KKyAgICAg
ICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIHBhZ2UvaW5zcGVj
dG9yL2luc3BlY3Rvci5qczoKKwkJKFdlYkluc3BlY3Rvci5zdGFydEdyb3VwSW5Db25zb2xlKTog
Q2FsbHMgY29uc29sZS5zdGFydEdyb3VwCisJCShXZWJJbnNwZWN0b3IuZW5kR3JvdXBJbkNvbnNv
bGUpOiBDYWxscyBjb25zb2xlLmVuZEdyb3VwCisKIDIwMDgtMDctMTYgIEpvbiBIb25leWN1dHQg
IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OOiBDYW4ndCBjcmVh
dGUgd2luZG93bGVzcyBwbHVnLWluIHdpdGggRmxhc2ggOQpJbmRleDogV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mv
anMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNpb24gMzUyMDcpCisrKyBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgzLDQgKzgzLDEw
IEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUKICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSogSlNDb25zb2xlOjpncm91cChFeGVjU3RhdGUq
IGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sKKyAgICBpbXBsKCktPmdyb3VwKGV4
ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29y
ZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNjcsNiArMjY3LDM1IEBAIHZv
aWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUqIGV4ZWMKICAgICBQcm9maWxlcjo6cHJv
ZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0aXRsZSk7CiB9CiAKK3ZvaWQgQ29uc29sZTo6
Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmd1bWVudHMpCit7CisgICAg
aWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFt
ZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcGFnZS0+
aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7CisKKyAgICBpZiAoYXJndW1lbnRz
LmlzRW1wdHkoKSkKKyAgICAgICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5hZGRNZXNz
YWdlVG9Db25zb2xlKEpTTWVzc2FnZVNvdXJjZSwgR3JvdXBUaXRsZU1lc3NhZ2VMZXZlbCwgU3Ry
aW5nKCksIDAsIFN0cmluZygpKTsKKyAgICBlbHNlCisgICAgICAgIHBhZ2UtPmluc3BlY3RvckNv
bnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3VyY2UsIEdyb3VwVGl0
bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwgU3RyaW5nKCkpOworfQorCit2b2lk
IENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVy
bjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQor
ICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmVuZEdy
b3VwKCk7Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxQ
cm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFn
ZSgpKQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BhZ2UvQ29uc29sZS5oCShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExvZ01lc3NhZ2VMZXZlbCwKICAgICAg
ICAgV2FybmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwKKyAgICAg
ICAgRXJyb3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwKICAg
ICB9OwogCiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBSZWZDb3VudGVkPENvbnNvbGU+LCBw
dWJsaWMgS0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2ICs3Nyw4IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRpb24oYm9vbCBjb25kaXRpb24sIEtK
Uzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwogICAgICAgICB2
b2lkIHByb2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50
cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6
QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cChLSlM6OkV4ZWNTdGF0ZSos
IGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgp
OwogCiAgICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxLSlM6OlByb2Zp
bGU+KTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUyMDcpCisrKyBXZWJDb3JlL3BhZ2Uv
Q29uc29sZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDggQEAgbW9kdWxlIHdpbmRv
dyB7CiAKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlKGluIERPTVN0cmluZyB0aXRsZSk7
CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgpOworCQlbQ3VzdG9tXSB2b2lkIGdy
b3VwKCk7CisJCXZvaWQgZ3JvdXBFbmQoKTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3Bh
Z2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0lu
c3BlY3RvckNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9J
bnNwZWN0b3JDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsxNTIsMjMg
QEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JDb250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29uc29sZU1l
c3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29sZU1lc3Nh
Z2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBtLCB1bnNp
Z25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3Vy
Y2UgcywgTWVzc2FnZUxldmVsIGwsIGNvbnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0
IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBs
ZXZlbChsKQogICAgICAgICAsIG1lc3NhZ2UobSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAg
ICAsIHVybCh1KQorICAgICAgICAsIGdyb3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQogCi0gICAg
Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRl
KiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1
KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4
ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJnTGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0
cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZl
bChsKQogICAgICAgICAsIHdyYXBwZWRBcmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwg
bGluZShsaSkKICAgICAgICAgLCB1cmwodSkKKyAgICAgICAgLCBncm91cExldmVsKGcpCiAgICAg
ewogICAgICAgICBKU0xvY2sgbG9jayhmYWxzZSk7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBhcmdzLnNpemUoKTsgKytpKQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVjdCBDb25z
b2xlTWVzc2FnZSB7CiAgICAgVmVjdG9yPFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdyYXBwZWRB
cmd1bWVudHM7CiAgICAgdW5zaWduZWQgbGluZTsKICAgICBTdHJpbmcgdXJsOworICAgIHVuc2ln
bmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAvLyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENsYXNzCkBA
IC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9s
bGVyCiAgICAgLCBtX3JlY29yZGluZ1VzZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQogICAgICwg
bV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1lbnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVudGlmaWVy
KC0yKQorICAgICwgbV9ncm91cExldmVsKDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdlLCBwYWdl
KTsKICAgICBBU1NFUlRfQVJHKGNsaWVudCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5MSw3IEBA
IHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJs
ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNv
bGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291
cmNlVVJMKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJj
ZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMLCBtX2dyb3Vw
TGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25z
b2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkK
QEAgLTExOTUsNyArMTE5OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2Fn
ZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29u
c29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxp
bmVOdW1iZXIsIHNvdXJjZUlEKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVN
ZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlELCBtX2dy
b3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVz
c2FnZShDb25zb2xlTWVzc2FnZSogY29uc29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEyMTMsMjkg
QEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzcwogICAgICAgICBhZGRT
Y3JpcHRDb25zb2xlTWVzc2FnZShjb25zb2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9y
Q29udHJvbGxlcjo6c3RhcnRHcm91cCgpCit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9u
ID0gMDsKKworICAgICsrbV9ncm91cExldmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkK
KyAgICAgICAgY2FsbEZ1bmN0aW9uKG1fc2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJz
dGFydEdyb3VwSW5Db25zb2xlIiwgMCwgTlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjplbmRHcm91cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24g
PSAwOworCisgICAgaWYgKG1fZ3JvdXBMZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisKKyAg
ICAtLW1fZ3JvdXBMZXZlbDsKKworICAgIGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNh
bGxGdW5jdGlvbihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNv
bnNvbGUiLCAwLCBOVUxMLCBleGNlcHRpb24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZFByb2ZpbGUoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlm
ICghZW5hYmxlZCgpKQpAQCAtMTg1Niw2ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRTY3JpcHRDb25zbwogICAgIEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVN
YWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVS
ZWYgbGluZVZhbHVlID0gSlNWYWx1ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdl
LT5saW5lKTsKICAgICBKU1ZhbHVlUmVmIHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9z
Y3JpcHRDb250ZXh0LCBqc1N0cmluZ1JlZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1Zh
bHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4
dCwgbWVzc2FnZS0+Z3JvdXBMZXZlbCk7CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4
aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4
aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0
b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50
KytdID0gbGV2ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVW
YWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFy
Z3VtZW50c1thcmd1bWVudENvdW50KytdID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFt
ZXNzYWdlLT53cmFwcGVkQXJndW1lbnRzLmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCBy
ZW1haW5pbmdTcGFjZUluQXJndW1lbnRzID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1
bWVudENvdW50OwpAQCAtMTk0Myw2ICsxOTcyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjpkaWRDb21taXRMb2FkKAogCiAgICAgICAgIGRlbGV0ZUFsbFZhbHVlcyhtX2NvbnNvbGVNZXNz
YWdlcyk7CiAgICAgICAgIG1fY29uc29sZU1lc3NhZ2VzLmNsZWFyKCk7CisgICAgICAgIG1fZ3Jv
dXBMZXZlbCA9IDA7CiAKICAgICAgICAgbV9wcm9maWxlcy5jbGVhcigpOwogCkluZGV4OiBXZWJD
b3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFn
ZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdl
L0luc3BlY3RvckNvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMTY5LDYgKzE2OSw5IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgZHJhd05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250ZXh0Jikg
Y29uc3Q7CiAKKyAgICB2b2lkIHN0YXJ0R3JvdXAoKTsKKyAgICB2b2lkIGVuZEdyb3VwKCk7CisK
IHByaXZhdGU6CiAgICAgdm9pZCBmb2N1c05vZGUoKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHBy
aXZhdGU6CiAgICAgU3BlY2lhbFBhbmVscyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBs
b25nIG1fbmV4dElkZW50aWZpZXI7CiAgICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2Rl
OworICAgIHVuc2lnbmVkIG1fZ3JvdXBMZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMJKHJldmlzaW9uIDM1MjA3KQorKysg
V2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2
ICs0OCwxMSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZSA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmNs
ZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxv
Zy4iKTsKICAgICB0aGlzLmNsZWFyQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhp
cy5fY2xlYXJCdXR0b25DbGlja2VkLmJpbmQodGhpcyksIGZhbHNlKTsKIAorICAgIHRoaXMudG9w
R3JvdXAgPSBuZXcgV2ViSW5zcGVjdG9yLkNvbnNvbGVHcm91cChudWxsLCAwKTsKKyAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUodGhpcy50b3BHcm91cC5lbGVtZW50LCB0aGlz
LnByb21wdEVsZW1lbnQpOworICAgIHRoaXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgdGhpcy5jdXJy
ZW50R3JvdXAgPSB0aGlzLnRvcEdyb3VwOworCiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Im1haW4tc3RhdHVzLWJhciIpLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRoaXMuX3N0
YXJ0U3RhdHVzQmFyRHJhZ2dpbmcuYmluZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKQEAgLTE0Myw4ICsx
NDgsMTIgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHRo
aXMubWVzc2FnZXMucHVzaChtc2cpOwogCi0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVz
c2FnZUVsZW1lbnQoKTsKLSAgICAgICAgdGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3Jl
KGVsZW1lbnQsIHRoaXMucHJvbXB0RWxlbWVudCk7CisgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBM
ZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkKKyAgICAgICAgICAgIHRoaXMuc3RhcnRHcm91cCgpOwor
ICAgICAgICB3aGlsZSAobXNnLmdyb3VwTGV2ZWwgPCB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAg
ICAgICB0aGlzLmVuZEdyb3VwKCk7CisKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYWRkTWVz
c2FnZShtc2cpOwogICAgICAgICB0aGlzLnByb21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFs
c2UpOwogICAgIH0sCiAKQEAgLTE1NCw4ICsxNjMsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5w
cm90b3R5cGUgPSB7CiAKICAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAgICAgIHdo
aWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVudC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0RWxlbWVu
dCkKLSAgICAgICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubWVz
c2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQpOworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSAwOwor
ICAgICAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMudG9wR3JvdXA7CisgICAgICAgIHRoaXMu
dG9wR3JvdXAubWVzc2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CiAgICAgfSwKIAogICAg
IGNvbXBsZXRpb25zOiBmdW5jdGlvbih3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHkpCkBAIC0yMDks
NiArMjE5LDIzIEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZSA9IHsKICAgICAgICAg
cmV0dXJuIHJlc3VsdHM7CiAgICAgfSwKIAorICAgIHN0YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgewor
ICAgICAgICB0aGlzLmdyb3VwTGV2ZWwrKzsKKyAgICAgICAgCisgICAgICAgIHZhciBncm91cCA9
IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29sZUdyb3VwKHRoaXMuY3VycmVudEdyb3VwLCB0aGlzLmdy
b3VwTGV2ZWwpOworICAgICAgICB0aGlzLmN1cnJlbnRHcm91cC5tZXNzYWdlc0VsZW1lbnQuYXBw
ZW5kQ2hpbGQoZ3JvdXAuZWxlbWVudCk7CisgICAgICAgIHRoaXMuY3VycmVudEdyb3VwID0gZ3Jv
dXA7CisgICAgfSwKKworICAgIGVuZEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRo
aXMuZ3JvdXBMZXZlbCA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5n
cm91cExldmVsLS07CisKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLmN1cnJlbnRH
cm91cC5wYXJlbnRHcm91cDsKKyAgICB9LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1
bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBA
IC00NDMsMTkgKzQ3MCwyMCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAK
IFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3Iu
Vmlldy5wcm90b3R5cGU7CiAKLVdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9u
KHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9
IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0
aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICB0aGlzLmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5s
aW5lID0gbGluZTsKICAgICB0aGlzLnVybCA9IHVybDsKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBn
cm91cExldmVsOwogCiAgICAgLy8gVGhpcyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9y
IHRoZSBwbGFpblRleHQgYXJndW1lbnQuIFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAg
IC8vIHVzZWQgZm9yIGlubGluZSBtZXNzYWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBv
dGhlciBwbGFpbi10ZXh0IHJlcHJlc2VudGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlz
Ll9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSku
dGV4dENvbnRlbnQ7CisgICAgdGhpcy5tZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3Rv
dHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAg
Ly8gVGhlIGZvcm1hdGVkTWVzc2FnZSBwcm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQg
aW50ZXJhY3RpdmUgY29uc29sZS4KLSAgICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9m
b3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhp
cy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5j
YWxsKGFyZ3VtZW50cywgNSkpOwogfQogCiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJv
dG90eXBlID0gewpAQCAtNTQxLDYgKzU2OSw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2Fn
ZS5wcm90b3R5cGUgPSAKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2Ug
V2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAg
ICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNvbnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNv
bGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlOgorICAgICAgICAgICAgICAgIGVsZW1l
bnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1sZXZlbCIpOwogICAgICAgICB9
CiAKICAgICAgICAgdmFyIG1lc3NhZ2VUZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2MzYsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3Nh
Z2UucHJvdG90eXBlID0gCiAgICAgICAgICAgICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVz
c2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6CiAgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAi
RXJyb3IiOwogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJbnNw
ZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAgICAg
ICAgICAgbGV2ZWxTdHJpbmcgPSAiR3JvdXBUaXRsZSI7CisgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIH0KIAogICAgICAgICByZXR1cm4gc291cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxT
dHJpbmcgKyAiOiAiICsgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlLnRleHRDb250ZW50ICsgIlxuIiAr
IHRoaXMudXJsICsgIiBsaW5lICIgKyB0aGlzLmxpbmU7CkBAIC02MjQsNyArNjU4LDggQEAgV2Vi
SW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbAogICAgIFRpcDogMCwKICAgICBM
b2c6IDEsCiAgICAgV2FybmluZzogMiwKLSAgICBFcnJvcjogMworICAgIEVycm9yOiAzLAorICAg
IEdyb3VwVGl0bGU6IDQKIH0KIAogV2ViSW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kID0gZnVuY3Rp
b24oY29tbWFuZCwgcmVzdWx0LCBmb3JtYXR0ZWRSZXN1bHRFbGVtZW50LCBsZXZlbCkKQEAgLTY2
OSwzICs3MDQsNDYgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kLnByb3RvdHlwZSA9IAog
ICAgICAgICByZXR1cm4gZWxlbWVudDsKICAgICB9CiB9CisKK1dlYkluc3BlY3Rvci5Db25zb2xl
R3JvdXAgPSBmdW5jdGlvbihwYXJlbnRHcm91cCwgbGV2ZWwpCit7CisgICAgdGhpcy5wYXJlbnRH
cm91cCA9IHBhcmVudEdyb3VwOworICAgIHRoaXMubGV2ZWwgPSBsZXZlbDsKKworICAgIHZhciBl
bGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZWxlbWVudC5jbGFz
c05hbWUgPSAiY29uc29sZS1ncm91cCI7CisgICAgZWxlbWVudC5ncm91cCA9IHRoaXM7CisgICAg
dGhpcy5lbGVtZW50ID0gZWxlbWVudDsKKworICAgIHZhciBtZXNzYWdlc0VsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBtZXNzYWdlc0VsZW1lbnQuY2xhc3NOYW1l
ID0gImNvbnNvbGUtZ3JvdXAtbWVzc2FnZXMiOworICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQobWVz
c2FnZXNFbGVtZW50KTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudCA9IG1lc3NhZ2VzRWxlbWVu
dDsKK30KKworV2ViSW5zcGVjdG9yLkNvbnNvbGVHcm91cC5wcm90b3R5cGUgPSB7CisgICAgYWRk
TWVzc2FnZTogZnVuY3Rpb24obXNnKQorICAgIHsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cu
dG9NZXNzYWdlRWxlbWVudCgpOworICAgICAgICAKKyAgICAgICAgaWYgKG1zZy5sZXZlbCA9PT0g
V2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlKSB7Cisg
ICAgICAgICAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShl
bGVtZW50LCB0aGlzLm1lc3NhZ2VzRWxlbWVudCk7CisgICAgICAgICAgICBlbGVtZW50LmFkZEV2
ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fdGl0bGVDbGlja2VkLmJpbmQodGhpcyksIHRydWUp
OworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LmFwcGVu
ZENoaWxkKGVsZW1lbnQpOworICAgIH0sCisgICAgCisgICAgX3RpdGxlQ2xpY2tlZDogZnVuY3Rp
b24oZXZlbnQpCisgICAgeworICAgICAgICB2YXIgZ3JvdXBUaXRsZUVsZW1lbnQgPSBldmVudC50
YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1s
ZXZlbCIpOworICAgICAgICBpZiAoZ3JvdXBUaXRsZUVsZW1lbnQpIHsKKyAgICAgICAgICAgIHZh
ciBncm91cEVsZW1lbnQgPSBncm91cFRpdGxlRWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0
aENsYXNzKCJjb25zb2xlLWdyb3VwIik7CisgICAgICAgICAgICBpZiAoZ3JvdXBFbGVtZW50KQor
ICAgICAgICAgICAgICAgIGlmIChncm91cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29sbGFwc2Vk
IikpCisgICAgICAgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJj
b2xsYXBzZWQiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGdy
b3VwRWxlbWVudC5hZGRTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAgIGdyb3Vw
VGl0bGVFbGVtZW50LnNjcm9sbEludG9WaWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKyAg
ICB9Cit9CkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCShyZXZpc2lvbiAz
NTIwNykKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcwkod29ya2luZyBj
b3B5KQpAQCAtNDI1LDYgKzQyNSwyNSBAQCBib2R5LmNvbnNvbGUtdmlzaWJsZSAjY29uc29sZSB7
CiAgICAgZGlzcGxheTogYmxvY2s7CiB9CiAKKy5jb25zb2xlLWdyb3VwIC5jb25zb2xlLWdyb3Vw
IHsKKwlib3JkZXItbGVmdDogMTBweCBzb2xpZCByZ2IoMjU1LCAwLCAwKTsKK30KKworLmNvbnNv
bGUtZ3JvdXAtdGl0bGUtbGV2ZWwgeworCWJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMvZGlz
Y2xvc3VyZVRyaWFuZ2xlU21hbGxEb3duLnBuZyk7CisJYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJl
cGVhdDsKKwliYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggMXB4OworCWZvbnQtd2VpZ2h0OiBib2xk
OworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgLmNvbnNvbGUtZ3JvdXAtdGl0bGUtbGV2
ZWwgeworCWJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMvZGlzY2xvc3VyZVRyaWFuZ2xlU21h
bGxSaWdodC5wbmcpOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgPiAuY29uc29sZS1n
cm91cC1tZXNzYWdlcyB7CisJZGlzcGxheTogbm9uZTsKK30KKwogI2NvbnNvbGUtc3RhdHVzLWJh
ciB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIGJvdHRvbTogMDsKSW5kZXg6IFdlYkNv
cmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFn
ZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFn
ZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCSh3b3JraW5nIGNvcHkpCkBAIC03OTcsNiArNzk3LDE2
IEBAIFdlYkluc3BlY3Rvci5hZGRNZXNzYWdlVG9Db25zb2xlID0gZnVuY3QKICAgICB0aGlzLmNv
bnNvbGUuYWRkTWVzc2FnZShtc2cpOwogfQogCitXZWJJbnNwZWN0b3Iuc3RhcnRHcm91cEluQ29u
c29sZSA9IGZ1bmN0aW9uKCkKK3sKKyAgICB0aGlzLmNvbnNvbGUuc3RhcnRHcm91cCgpOworfQor
CitXZWJJbnNwZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUgPSBmdW5jdGlvbigpCit7CisgICAgdGhp
cy5jb25zb2xlLmVuZEdyb3VwKCk7Cit9CisKIFdlYkluc3BlY3Rvci5hZGRQcm9maWxlID0gZnVu
Y3Rpb24ocHJvZmlsZSkKIHsKICAgICB0aGlzLnBhbmVscy5wcm9maWxlcy5hZGRQcm9maWxlKHBy
b2ZpbGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22347</attachid>
            <date>2008-07-17 11:54:11 -0700</date>
            <delta_ts>2008-07-21 08:43:01 -0700</delta_ts>
            <desc>Minor fix</desc>
            <filename>MyThirdPatch9.txt</filename>
            <type>text/plain</type>
            <size>18032</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTIyMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDctMTcgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRml4ZWQgQnVnIDE5MTU4OiBJbnNwZWN0b3Igc2hvdWxkIHN1cHBvcnQgY29uc29sZS5n
cm91cC9jb25zb2xlLmdyb3VwRW5kCisKKwkJPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTE1OD4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0NvbnNvbGU6Omdyb3VwKTogQWRkZWQuCisgICAg
ICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6Omdyb3Vw
KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cEVuZCk6IEFkZGVkLgor
ICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAgICAgICAg
KiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAgKiBwYWdl
L0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29sZU1lc3Nh
Z2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwuCisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKTogQWRkZWQg
Z3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xs
ZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBvbmUgYW5kIGNhbGxz
IGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRy
b2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkgb25lIGFuZCBjYWxs
cyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwgYXJndW1l
bnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21taXRMb2Fk
KTogUmVzZXRzIG1fZ3JvdXBMZXZlbC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNvbnRyb2xs
ZXIuaDoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzOgorCQkoV2ViSW5zcGVj
dG9yLkNvbnNvbGUpOiBBZGRlZCBncm91cExldmVsIGFuZCBjdXJyZW50R3JvdXAgdG9wR3JvdXAu
CisJCShXZWJJbnNwZWN0b3IuQ29uc29sZS5hZGRNZXNzYWdlKTogQ2FsbHMgYWRkTWVzc2FnZSBt
ZXRob2QgaW4gdGhlIGN1cnJlbnRHcm91cC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlLnN0YXJ0
R3JvdXApOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlLmVuZEdyb3VwKTogQWRkZWQu
CisJCShXZWJJbnNwZWN0b3IuQ29uc29sZS5jbGVhck1lc3NhZ2VzKTogUmVzZXRzIGdyb3VwTGV2
ZWwgYW5kIGN1cnJlbnRHcm91cC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSk6IEFk
ZGVkIGdyb3VwTGV2ZWwgcHJvcGVydHkuCisJCShXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2Uu
TWVzc2FnZUxldmVsLkdyb3VwVGl0bGUpOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xl
R3JvdXApOiBBZGRlZC4KKwkJKFdlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAuYWRkTWVzc2FnZSk6
IEFkZHMgY29uc29sZSBtZXNzYWdlIHRvIGdyb3VwLgorCQkoV2ViSW5zcGVjdG9yLkNvbnNvbGVH
cm91cC5fdGl0bGVDbGlja2VkKTogQWRkcyAiY29sbGFwc2VkIiBzdHlsZSBjbGFzcy4KKyAgICAg
ICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIHBhZ2UvaW5zcGVj
dG9yL2luc3BlY3Rvci5qczoKKwkJKFdlYkluc3BlY3Rvci5zdGFydEdyb3VwSW5Db25zb2xlKTog
Q2FsbHMgY29uc29sZS5zdGFydEdyb3VwCisJCShXZWJJbnNwZWN0b3IuZW5kR3JvdXBJbkNvbnNv
bGUpOiBDYWxscyBjb25zb2xlLmVuZEdyb3VwCisKIDIwMDgtMDctMTYgIEpvbiBIb25leWN1dHQg
IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OOiBDYW4ndCBjcmVh
dGUgd2luZG93bGVzcyBwbHVnLWluIHdpdGggRmxhc2ggOQpJbmRleDogV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mv
anMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNpb24gMzUyMDcpCisrKyBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgzLDQgKzgzLDEw
IEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUKICAgICByZXR1cm4g
anNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSogSlNDb25zb2xlOjpncm91cChFeGVjU3RhdGUq
IGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sKKyAgICBpbXBsKCktPmdyb3VwKGV4
ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9Db25zb2xlLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29y
ZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNjcsNiArMjY3LDM1IEBAIHZv
aWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUqIGV4ZWMKICAgICBQcm9maWxlcjo6cHJv
ZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0aXRsZSk7CiB9CiAKK3ZvaWQgQ29uc29sZTo6
Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmd1bWVudHMpCit7CisgICAg
aWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbV9mcmFt
ZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcGFnZS0+
aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7CisKKyAgICBpZiAoYXJndW1lbnRz
LmlzRW1wdHkoKSkKKyAgICAgICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5hZGRNZXNz
YWdlVG9Db25zb2xlKEpTTWVzc2FnZVNvdXJjZSwgR3JvdXBUaXRsZU1lc3NhZ2VMZXZlbCwgU3Ry
aW5nKCksIDAsIFN0cmluZygpKTsKKyAgICBlbHNlCisgICAgICAgIHBhZ2UtPmluc3BlY3RvckNv
bnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01lc3NhZ2VTb3VyY2UsIEdyb3VwVGl0
bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwgU3RyaW5nKCkpOworfQorCit2b2lk
IENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVy
bjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQor
ICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5pbnNwZWN0b3JDb250cm9sbGVyKCktPmVuZEdy
b3VwKCk7Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxQ
cm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFn
ZSgpKQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BhZ2UvQ29uc29sZS5oCShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9Db25zb2xl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExvZ01lc3NhZ2VMZXZlbCwKICAgICAg
ICAgV2FybmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwKKyAgICAg
ICAgRXJyb3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwKICAg
ICB9OwogCiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBSZWZDb3VudGVkPENvbnNvbGU+LCBw
dWJsaWMgS0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2ICs3Nyw4IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRpb24oYm9vbCBjb25kaXRpb24sIEtK
Uzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBhcmd1bWVudHMpOwogICAgICAgICB2
b2lkIHByb2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBLSlM6OkFyZ0xpc3QmIGFyZ3VtZW50
cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6
QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cChLSlM6OkV4ZWNTdGF0ZSos
IGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBncm91cEVuZCgp
OwogCiAgICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmcoUGFzc1JlZlB0cjxLSlM6OlByb2Zp
bGU+KTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaWRsCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUyMDcpCisrKyBXZWJDb3JlL3BhZ2Uv
Q29uc29sZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDggQEAgbW9kdWxlIHdpbmRv
dyB7CiAKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxlKGluIERPTVN0cmluZyB0aXRsZSk7
CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgpOworCQlbQ3VzdG9tXSB2b2lkIGdy
b3VwKCk7CisJCXZvaWQgZ3JvdXBFbmQoKTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3Bh
Z2UvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0lu
c3BlY3RvckNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9J
bnNwZWN0b3JDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsxNTIsMjMg
QEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JDb250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29uc29sZU1l
c3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29sZU1lc3Nh
Z2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBtLCB1bnNp
Z25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3Vy
Y2UgcywgTWVzc2FnZUxldmVsIGwsIGNvbnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0
IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBs
ZXZlbChsKQogICAgICAgICAsIG1lc3NhZ2UobSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAg
ICAsIHVybCh1KQorICAgICAgICAsIGdyb3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQogCi0gICAg
Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRl
KiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1
KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4
ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJnTGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0
cmluZyYgdSwgdW5zaWduZWQgZykKICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZl
bChsKQogICAgICAgICAsIHdyYXBwZWRBcmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwg
bGluZShsaSkKICAgICAgICAgLCB1cmwodSkKKyAgICAgICAgLCBncm91cExldmVsKGcpCiAgICAg
ewogICAgICAgICBKU0xvY2sgbG9jayhmYWxzZSk7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9
IDA7IGkgPCBhcmdzLnNpemUoKTsgKytpKQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVjdCBDb25z
b2xlTWVzc2FnZSB7CiAgICAgVmVjdG9yPFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdyYXBwZWRB
cmd1bWVudHM7CiAgICAgdW5zaWduZWQgbGluZTsKICAgICBTdHJpbmcgdXJsOworICAgIHVuc2ln
bmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAvLyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENsYXNzCkBA
IC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9s
bGVyCiAgICAgLCBtX3JlY29yZGluZ1VzZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQogICAgICwg
bV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1lbnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVudGlmaWVy
KC0yKQorICAgICwgbV9ncm91cExldmVsKDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdlLCBwYWdl
KTsKICAgICBBU1NFUlRfQVJHKGNsaWVudCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5MSw3IEBA
IHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJs
ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNv
bGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291
cmNlVVJMKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJj
ZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMLCBtX2dyb3Vw
TGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25z
b2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgdW5zaWduZWQgbGluZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkK
QEAgLTExOTUsNyArMTE5OSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2Fn
ZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29u
c29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxp
bmVOdW1iZXIsIHNvdXJjZUlEKSk7CisgICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVN
ZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlELCBtX2dy
b3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVz
c2FnZShDb25zb2xlTWVzc2FnZSogY29uc29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEyMTMsMjkg
QEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzcwogICAgICAgICBhZGRT
Y3JpcHRDb25zb2xlTWVzc2FnZShjb25zb2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9y
Q29udHJvbGxlcjo6c3RhcnRHcm91cCgpCit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9u
ID0gMDsKKworICAgICsrbV9ncm91cExldmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkK
KyAgICAgICAgY2FsbEZ1bmN0aW9uKG1fc2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJz
dGFydEdyb3VwSW5Db25zb2xlIiwgMCwgTlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjplbmRHcm91cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24g
PSAwOworCisgICAgaWYgKG1fZ3JvdXBMZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisKKyAg
ICAtLW1fZ3JvdXBMZXZlbDsKKworICAgIGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNh
bGxGdW5jdGlvbihtX3NjcmlwdENvbnRleHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNv
bnNvbGUiLCAwLCBOVUxMLCBleGNlcHRpb24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OmFkZFByb2ZpbGUoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlm
ICghZW5hYmxlZCgpKQpAQCAtMTg1Niw2ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRTY3JpcHRDb25zbwogICAgIEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVN
YWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVS
ZWYgbGluZVZhbHVlID0gSlNWYWx1ZU1ha2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdl
LT5saW5lKTsKICAgICBKU1ZhbHVlUmVmIHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9z
Y3JpcHRDb250ZXh0LCBqc1N0cmluZ1JlZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1Zh
bHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4
dCwgbWVzc2FnZS0+Z3JvdXBMZXZlbCk7CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4
aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAyNTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4
aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpAQCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0
b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50
KytdID0gbGV2ZWxWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVW
YWx1ZTsKICAgICBhcmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFy
Z3VtZW50c1thcmd1bWVudENvdW50KytdID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFt
ZXNzYWdlLT53cmFwcGVkQXJndW1lbnRzLmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCBy
ZW1haW5pbmdTcGFjZUluQXJndW1lbnRzID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1
bWVudENvdW50OwpAQCAtMTk0Myw2ICsxOTcyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjpkaWRDb21taXRMb2FkKAogCiAgICAgICAgIGRlbGV0ZUFsbFZhbHVlcyhtX2NvbnNvbGVNZXNz
YWdlcyk7CiAgICAgICAgIG1fY29uc29sZU1lc3NhZ2VzLmNsZWFyKCk7CisgICAgICAgIG1fZ3Jv
dXBMZXZlbCA9IDA7CiAKICAgICAgICAgbV9wcm9maWxlcy5jbGVhcigpOwogCkluZGV4OiBXZWJD
b3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFn
ZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdl
L0luc3BlY3RvckNvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMTY5LDYgKzE2OSw5IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgZHJhd05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250ZXh0Jikg
Y29uc3Q7CiAKKyAgICB2b2lkIHN0YXJ0R3JvdXAoKTsKKyAgICB2b2lkIGVuZEdyb3VwKCk7CisK
IHByaXZhdGU6CiAgICAgdm9pZCBmb2N1c05vZGUoKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHBy
aXZhdGU6CiAgICAgU3BlY2lhbFBhbmVscyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBs
b25nIG1fbmV4dElkZW50aWZpZXI7CiAgICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2Rl
OworICAgIHVuc2lnbmVkIG1fZ3JvdXBMZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0NvbnNvbGUuanMJKHJldmlzaW9uIDM1MjA3KQorKysg
V2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2
ICs0OCwxMSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZSA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmNs
ZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxv
Zy4iKTsKICAgICB0aGlzLmNsZWFyQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhp
cy5fY2xlYXJCdXR0b25DbGlja2VkLmJpbmQodGhpcyksIGZhbHNlKTsKIAorICAgIHRoaXMudG9w
R3JvdXAgPSBuZXcgV2ViSW5zcGVjdG9yLkNvbnNvbGVHcm91cChudWxsLCAwKTsKKyAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRCZWZvcmUodGhpcy50b3BHcm91cC5lbGVtZW50LCB0aGlz
LnByb21wdEVsZW1lbnQpOworICAgIHRoaXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgdGhpcy5jdXJy
ZW50R3JvdXAgPSB0aGlzLnRvcEdyb3VwOworCiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Im1haW4tc3RhdHVzLWJhciIpLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRoaXMuX3N0
YXJ0U3RhdHVzQmFyRHJhZ2dpbmcuYmluZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKQEAgLTE0Myw4ICsx
NDgsMTIgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHRo
aXMubWVzc2FnZXMucHVzaChtc2cpOwogCi0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVz
c2FnZUVsZW1lbnQoKTsKLSAgICAgICAgdGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3Jl
KGVsZW1lbnQsIHRoaXMucHJvbXB0RWxlbWVudCk7CisgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBM
ZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkKKyAgICAgICAgICAgIHRoaXMuc3RhcnRHcm91cCgpOwor
ICAgICAgICB3aGlsZSAobXNnLmdyb3VwTGV2ZWwgPCB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAg
ICAgICB0aGlzLmVuZEdyb3VwKCk7CisKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYWRkTWVz
c2FnZShtc2cpOwogICAgICAgICB0aGlzLnByb21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFs
c2UpOwogICAgIH0sCiAKQEAgLTE1NCw4ICsxNjMsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5w
cm90b3R5cGUgPSB7CiAKICAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAgICAgIHdo
aWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVudC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0RWxlbWVu
dCkKLSAgICAgICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubWVz
c2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQpOworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSAwOwor
ICAgICAgICB0aGlzLmN1cnJlbnRHcm91cCA9IHRoaXMudG9wR3JvdXA7CisgICAgICAgIHRoaXMu
dG9wR3JvdXAubWVzc2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CiAgICAgfSwKIAogICAg
IGNvbXBsZXRpb25zOiBmdW5jdGlvbih3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHkpCkBAIC0yMDks
NiArMjE5LDIzIEBAIFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZSA9IHsKICAgICAgICAg
cmV0dXJuIHJlc3VsdHM7CiAgICAgfSwKIAorICAgIHN0YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgewor
ICAgICAgICB0aGlzLmdyb3VwTGV2ZWwrKzsKKyAgICAgICAgCisgICAgICAgIHZhciBncm91cCA9
IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29sZUdyb3VwKHRoaXMuY3VycmVudEdyb3VwLCB0aGlzLmdy
b3VwTGV2ZWwpOworICAgICAgICB0aGlzLmN1cnJlbnRHcm91cC5tZXNzYWdlc0VsZW1lbnQuYXBw
ZW5kQ2hpbGQoZ3JvdXAuZWxlbWVudCk7CisgICAgICAgIHRoaXMuY3VycmVudEdyb3VwID0gZ3Jv
dXA7CisgICAgfSwKKworICAgIGVuZEdyb3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRo
aXMuZ3JvdXBMZXZlbCA8IDEpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5n
cm91cExldmVsLS07CisKKyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLmN1cnJlbnRH
cm91cC5wYXJlbnRHcm91cDsKKyAgICB9LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1
bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBA
IC00NDMsMTkgKzQ3MCwyMCBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAK
IFdlYkluc3BlY3Rvci5Db25zb2xlLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3Iu
Vmlldy5wcm90b3R5cGU7CiAKLVdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9u
KHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9
IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVybCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0
aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAgICB0aGlzLmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5s
aW5lID0gbGluZTsKICAgICB0aGlzLnVybCA9IHVybDsKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBn
cm91cExldmVsOwogCiAgICAgLy8gVGhpcyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9y
IHRoZSBwbGFpblRleHQgYXJndW1lbnQuIFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAg
IC8vIHVzZWQgZm9yIGlubGluZSBtZXNzYWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBv
dGhlciBwbGFpbi10ZXh0IHJlcHJlc2VudGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlz
Ll9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSku
dGV4dENvbnRlbnQ7CisgICAgdGhpcy5tZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3Rv
dHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAg
Ly8gVGhlIGZvcm1hdGVkTWVzc2FnZSBwcm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQg
aW50ZXJhY3RpdmUgY29uc29sZS4KLSAgICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9m
b3JtYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhp
cy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5j
YWxsKGFyZ3VtZW50cywgNSkpOwogfQogCiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJv
dG90eXBlID0gewpAQCAtNTQxLDYgKzU2OSw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2Fn
ZS5wcm90b3R5cGUgPSAKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2Ug
V2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAg
ICAgICAgICBlbGVtZW50LmFkZFN0eWxlQ2xhc3MoImNvbnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNv
bGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlOgorICAgICAgICAgICAgICAgIGVsZW1l
bnQuYWRkU3R5bGVDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1sZXZlbCIpOwogICAgICAgICB9
CiAKICAgICAgICAgdmFyIG1lc3NhZ2VUZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2MzYsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3Nh
Z2UucHJvdG90eXBlID0gCiAgICAgICAgICAgICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVz
c2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6CiAgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAi
RXJyb3IiOwogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJbnNw
ZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAgICAg
ICAgICAgbGV2ZWxTdHJpbmcgPSAiR3JvdXBUaXRsZSI7CisgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIH0KIAogICAgICAgICByZXR1cm4gc291cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxT
dHJpbmcgKyAiOiAiICsgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlLnRleHRDb250ZW50ICsgIlxuIiAr
IHRoaXMudXJsICsgIiBsaW5lICIgKyB0aGlzLmxpbmU7CkBAIC02MjQsNyArNjU4LDggQEAgV2Vi
SW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbAogICAgIFRpcDogMCwKICAgICBM
b2c6IDEsCiAgICAgV2FybmluZzogMiwKLSAgICBFcnJvcjogMworICAgIEVycm9yOiAzLAorICAg
IEdyb3VwVGl0bGU6IDQKIH0KIAogV2ViSW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kID0gZnVuY3Rp
b24oY29tbWFuZCwgcmVzdWx0LCBmb3JtYXR0ZWRSZXN1bHRFbGVtZW50LCBsZXZlbCkKQEAgLTY2
OSwzICs3MDQsNDkgQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kLnByb3RvdHlwZSA9IAog
ICAgICAgICByZXR1cm4gZWxlbWVudDsKICAgICB9CiB9CisKK1dlYkluc3BlY3Rvci5Db25zb2xl
R3JvdXAgPSBmdW5jdGlvbihwYXJlbnRHcm91cCwgbGV2ZWwpCit7CisgICAgdGhpcy5wYXJlbnRH
cm91cCA9IHBhcmVudEdyb3VwOworICAgIHRoaXMubGV2ZWwgPSBsZXZlbDsKKworICAgIHZhciBl
bGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZWxlbWVudC5jbGFz
c05hbWUgPSAiY29uc29sZS1ncm91cCI7CisgICAgZWxlbWVudC5ncm91cCA9IHRoaXM7CisgICAg
dGhpcy5lbGVtZW50ID0gZWxlbWVudDsKKworICAgIHZhciBtZXNzYWdlc0VsZW1lbnQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBtZXNzYWdlc0VsZW1lbnQuY2xhc3NOYW1l
ID0gImNvbnNvbGUtZ3JvdXAtbWVzc2FnZXMiOworICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQobWVz
c2FnZXNFbGVtZW50KTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudCA9IG1lc3NhZ2VzRWxlbWVu
dDsKK30KKworV2ViSW5zcGVjdG9yLkNvbnNvbGVHcm91cC5wcm90b3R5cGUgPSB7CisgICAgYWRk
TWVzc2FnZTogZnVuY3Rpb24obXNnKQorICAgIHsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cu
dG9NZXNzYWdlRWxlbWVudCgpOworICAgICAgICAKKyAgICAgICAgaWYgKG1zZy5sZXZlbCA9PT0g
V2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlKSB7Cisg
ICAgICAgICAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShl
bGVtZW50LCB0aGlzLm1lc3NhZ2VzRWxlbWVudCk7CisgICAgICAgICAgICBlbGVtZW50LmFkZEV2
ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fdGl0bGVDbGlja2VkLmJpbmQodGhpcyksIHRydWUp
OworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LmFwcGVu
ZENoaWxkKGVsZW1lbnQpOworICAgIH0sCisgICAgCisgICAgX3RpdGxlQ2xpY2tlZDogZnVuY3Rp
b24oZXZlbnQpCisgICAgeworICAgICAgICB2YXIgZ3JvdXBUaXRsZUVsZW1lbnQgPSBldmVudC50
YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1s
ZXZlbCIpOworICAgICAgICBpZiAoZ3JvdXBUaXRsZUVsZW1lbnQpIHsKKyAgICAgICAgICAgIHZh
ciBncm91cEVsZW1lbnQgPSBncm91cFRpdGxlRWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0
aENsYXNzKCJjb25zb2xlLWdyb3VwIik7CisgICAgICAgICAgICBpZiAoZ3JvdXBFbGVtZW50KQor
ICAgICAgICAgICAgICAgIGlmIChncm91cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29sbGFwc2Vk
IikpCisgICAgICAgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJj
b2xsYXBzZWQiKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGdy
b3VwRWxlbWVudC5hZGRTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAgIGdyb3Vw
VGl0bGVFbGVtZW50LnNjcm9sbEludG9WaWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKwor
ICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTsKKyAgICAgICAgZXZlbnQucHJldmVudERl
ZmF1bHQoKTsKKyAgICB9Cit9CkluZGV4OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rv
ci5jc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3Nz
CShyZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNz
cwkod29ya2luZyBjb3B5KQpAQCAtNDI1LDYgKzQyNSwyNSBAQCBib2R5LmNvbnNvbGUtdmlzaWJs
ZSAjY29uc29sZSB7CiAgICAgZGlzcGxheTogYmxvY2s7CiB9CiAKKy5jb25zb2xlLWdyb3VwIC5j
b25zb2xlLWdyb3VwIHsKKwlib3JkZXItbGVmdDogMTBweCBzb2xpZCByZ2IoMjU1LCAwLCAwKTsK
K30KKworLmNvbnNvbGUtZ3JvdXAtdGl0bGUtbGV2ZWwgeworCWJhY2tncm91bmQtaW1hZ2U6IHVy
bChJbWFnZXMvZGlzY2xvc3VyZVRyaWFuZ2xlU21hbGxEb3duLnBuZyk7CisJYmFja2dyb3VuZC1y
ZXBlYXQ6IG5vLXJlcGVhdDsKKwliYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggMXB4OworCWZvbnQt
d2VpZ2h0OiBib2xkOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgLmNvbnNvbGUtZ3Jv
dXAtdGl0bGUtbGV2ZWwgeworCWJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMvZGlzY2xvc3Vy
ZVRyaWFuZ2xlU21hbGxSaWdodC5wbmcpOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQg
PiAuY29uc29sZS1ncm91cC1tZXNzYWdlcyB7CisJZGlzcGxheTogbm9uZTsKK30KKwogI2NvbnNv
bGUtc3RhdHVzLWJhciB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIGJvdHRvbTogMDsK
SW5kZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCShyZXZpc2lvbiAzNTIwNykKKysr
IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCSh3b3JraW5nIGNvcHkpCkBAIC03
OTcsNiArNzk3LDE2IEBAIFdlYkluc3BlY3Rvci5hZGRNZXNzYWdlVG9Db25zb2xlID0gZnVuY3QK
ICAgICB0aGlzLmNvbnNvbGUuYWRkTWVzc2FnZShtc2cpOwogfQogCitXZWJJbnNwZWN0b3Iuc3Rh
cnRHcm91cEluQ29uc29sZSA9IGZ1bmN0aW9uKCkKK3sKKyAgICB0aGlzLmNvbnNvbGUuc3RhcnRH
cm91cCgpOworfQorCitXZWJJbnNwZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUgPSBmdW5jdGlvbigp
Cit7CisgICAgdGhpcy5jb25zb2xlLmVuZEdyb3VwKCk7Cit9CisKIFdlYkluc3BlY3Rvci5hZGRQ
cm9maWxlID0gZnVuY3Rpb24ocHJvZmlsZSkKIHsKICAgICB0aGlzLnBhbmVscy5wcm9maWxlcy5h
ZGRQcm9maWxlKHByb2ZpbGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22405</attachid>
            <date>2008-07-21 08:43:01 -0700</date>
            <delta_ts>2008-07-23 04:06:56 -0700</delta_ts>
            <desc>Tabs replaced</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>18143</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTIyMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDctMTcgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRml4ZWQgQnVnIDE5MTU4OiBJbnNwZWN0b3Igc2hvdWxkIHN1cHBvcnQgY29uc29sZS5n
cm91cC9jb25zb2xlLmdyb3VwRW5kCisKKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTE1OD4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29s
ZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0NvbnNvbGU6Omdyb3VwKTogQWRkZWQu
CisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6
Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cEVuZCk6IEFk
ZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAg
ICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAg
KiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29s
ZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwuCisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKTog
QWRkZWQgZ3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBvbmUgYW5k
IGNhbGxzIGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckNvbnRyb2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkgb25lIGFu
ZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
YXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21t
aXRMb2FkKTogUmVzZXRzIG1fZ3JvdXBMZXZlbC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkNvbnNvbGUpOiBBZGRlZCBncm91cExldmVsIGFuZCBjdXJyZW50R3Jv
dXAgdG9wR3JvdXAuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZS5hZGRNZXNzYWdlKTog
Q2FsbHMgYWRkTWVzc2FnZSBtZXRob2QgaW4gdGhlIGN1cnJlbnRHcm91cC4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db25zb2xlLnN0YXJ0R3JvdXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Db25zb2xlLmVuZEdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29u
c29sZS5jbGVhck1lc3NhZ2VzKTogUmVzZXRzIGdyb3VwTGV2ZWwgYW5kIGN1cnJlbnRHcm91cC4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
cHJvcGVydHkuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxl
dmVsLkdyb3VwVGl0bGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3Jv
dXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAuYWRkTWVzc2Fn
ZSk6IEFkZHMgY29uc29sZSBtZXNzYWdlIHRvIGdyb3VwLgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cC5fdGl0bGVDbGlja2VkKTogQWRkcyAiY29sbGFwc2VkIiBzdHlsZSBjbGFz
cy4KKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIHBh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5zdGFydEdy
b3VwSW5Db25zb2xlKTogQ2FsbHMgY29uc29sZS5zdGFydEdyb3VwCisgICAgICAgIChXZWJJbnNw
ZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUpOiBDYWxscyBjb25zb2xlLmVuZEdyb3VwCisKIDIwMDgt
MDctMTYgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OOiBDYW4ndCBjcmVhdGUgd2luZG93bGVzcyBwbHVnLWluIHdpdGggRmxhc2ggOQpJ
bmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTgzLDQgKzgzLDEwIEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmlsZUVuZChF
eGVjU3RhdGUKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSogSlNDb25z
b2xlOjpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sK
KyAgICBpbXBsKCktPmdyb3VwKGV4ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpzVW5kZWZp
bmVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9D
b25zb2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJKHJldmlz
aW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNjcsNiArMjY3LDM1IEBAIHZvaWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUqIGV4
ZWMKICAgICBQcm9maWxlcjo6cHJvZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0aXRsZSk7
CiB9CiAKK3ZvaWQgQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0
JiBhcmd1bWVudHMpCit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAg
ICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7
CisKKyAgICBpZiAoYXJndW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcGFnZS0+aW5zcGVjdG9y
Q29udHJvbGxlcigpLT5hZGRNZXNzYWdlVG9Db25zb2xlKEpTTWVzc2FnZVNvdXJjZSwgR3JvdXBU
aXRsZU1lc3NhZ2VMZXZlbCwgU3RyaW5nKCksIDAsIFN0cmluZygpKTsKKyAgICBlbHNlCisgICAg
ICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01l
c3NhZ2VTb3VyY2UsIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwg
U3RyaW5nKCkpOworfQorCit2b2lkIENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1f
ZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdl
KCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5pbnNwZWN0
b3JDb250cm9sbGVyKCktPmVuZEdyb3VwKCk7Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQ
cm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdl
KiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCShyZXZpc2lvbiAzNTIwNykKKysr
IFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExv
Z01lc3NhZ2VMZXZlbCwKICAgICAgICAgV2FybmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJy
b3JNZXNzYWdlTGV2ZWwKKyAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3Vw
VGl0bGVNZXNzYWdlTGV2ZWwKICAgICB9OwogCiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPENvbnNvbGU+LCBwdWJsaWMgS0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2
ICs3Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRp
b24oYm9vbCBjb25kaXRpb24sIEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBh
cmd1bWVudHMpOwogICAgICAgICB2b2lkIHByb2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBL
SlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4
ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBn
cm91cChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAg
ICAgICAgdm9pZCBncm91cEVuZCgpOwogCiAgICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmco
UGFzc1JlZlB0cjxLSlM6OlByb2ZpbGU+KTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUu
aWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29sZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYg
KzM4LDggQEAgbW9kdWxlIHdpbmRvdyB7CiAKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxl
KGluIERPTVN0cmluZyB0aXRsZSk7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgp
OworICAgICAgICBbQ3VzdG9tXSB2b2lkIGdyb3VwKCk7CisgICAgICAgIHZvaWQgZ3JvdXBFbmQo
KTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCShy
ZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsxNTIsMjMgQEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JD
b250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29uc29sZU1lc3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBD
b25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNz
YWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1
KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIGNv
bnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykK
ICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIG1lc3Nh
Z2UobSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1KQorICAgICAgICAsIGdy
b3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQogCi0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNv
dXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1l
c3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJn
TGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAg
ICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRB
cmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwo
dSkKKyAgICAgICAgLCBncm91cExldmVsKGcpCiAgICAgewogICAgICAgICBKU0xvY2sgbG9jayhm
YWxzZSk7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytp
KQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9y
PFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdyYXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQg
bGluZTsKICAgICBTdHJpbmcgdXJsOworICAgIHVuc2lnbmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAv
LyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENsYXNzCkBAIC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyCiAgICAgLCBtX3JlY29yZGluZ1Vz
ZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQogICAgICwgbV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1l
bnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVudGlmaWVyKC0yKQorICAgICwgbV9ncm91cExldmVs
KDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdlLCBwYWdlKTsKICAgICBBU1NFUlRfQVJHKGNsaWVu
dCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxl
cjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWws
IGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMKSk7CisgICAgYWRkQ29uc29s
ZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50
cywgbGluZU51bWJlciwgc291cmNlVVJMLCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNl
LCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGlu
ZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKQEAgLTExOTUsNyArMTE5OSw3IEBAIHZv
aWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQo
KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVN
ZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlEKSk7Cisg
ICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1l
c3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlELCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzc2FnZShDb25zb2xlTWVzc2FnZSogY29u
c29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEyMTMsMjkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRDb25zb2xlTWVzcwogICAgICAgICBhZGRTY3JpcHRDb25zb2xlTWVzc2FnZShjb25z
b2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6c3RhcnRHcm91cCgp
Cit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKworICAgICsrbV9ncm91cExl
dmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgY2FsbEZ1bmN0aW9uKG1f
c2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJzdGFydEdyb3VwSW5Db25zb2xlIiwgMCwg
TlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmRHcm91
cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworCisgICAgaWYgKG1fZ3JvdXBM
ZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisKKyAgICAtLW1fZ3JvdXBMZXZlbDsKKworICAg
IGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlvbihtX3NjcmlwdENvbnRl
eHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNvbnNvbGUiLCAwLCBOVUxMLCBleGNlcHRp
b24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFByb2ZpbGUoUGFzc1JlZlB0
cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmICghZW5hYmxlZCgpKQpAQCAtMTg1Niw2
ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAg
IEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4
dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVSZWYgbGluZVZhbHVlID0gSlNWYWx1ZU1h
a2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5saW5lKTsKICAgICBKU1ZhbHVlUmVm
IHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9zY3JpcHRDb250ZXh0LCBqc1N0cmluZ1Jl
ZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1ZhbHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9
IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+Z3JvdXBMZXZlbCk7
CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAy
NTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpA
QCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRD
b25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsKICAgICBh
cmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJn
dW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50Kytd
ID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFtZXNzYWdlLT53cmFwcGVkQXJndW1lbnRz
LmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCByZW1haW5pbmdTcGFjZUluQXJndW1lbnRz
ID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1bWVudENvdW50OwpAQCAtMTk0Myw2ICsx
OTcyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21taXRMb2FkKAogCiAgICAg
ICAgIGRlbGV0ZUFsbFZhbHVlcyhtX2NvbnNvbGVNZXNzYWdlcyk7CiAgICAgICAgIG1fY29uc29s
ZU1lc3NhZ2VzLmNsZWFyKCk7CisgICAgICAgIG1fZ3JvdXBMZXZlbCA9IDA7CiAKICAgICAgICAg
bV9wcm9maWxlcy5jbGVhcigpOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJv
bGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJ
KHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMTY5LDYgKzE2OSw5IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZHJh
d05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKKyAgICB2b2lkIHN0YXJ0
R3JvdXAoKTsKKyAgICB2b2lkIGVuZEdyb3VwKCk7CisKIHByaXZhdGU6CiAgICAgdm9pZCBmb2N1
c05vZGUoKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAgU3BlY2lhbFBhbmVs
cyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBsb25nIG1fbmV4dElkZW50aWZpZXI7CiAg
ICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2RlOworICAgIHVuc2lnbmVkIG1fZ3JvdXBM
ZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9p
bnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9y
L0NvbnNvbGUuanMJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9D
b25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2ICs0OCwxMSBAQCBXZWJJbnNwZWN0b3Iu
Q29uc29sZSA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmNsZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxvZy4iKTsKICAgICB0aGlzLmNsZWFyQnV0
dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLmJp
bmQodGhpcyksIGZhbHNlKTsKIAorICAgIHRoaXMudG9wR3JvdXAgPSBuZXcgV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cChudWxsLCAwKTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRC
ZWZvcmUodGhpcy50b3BHcm91cC5lbGVtZW50LCB0aGlzLnByb21wdEVsZW1lbnQpOworICAgIHRo
aXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLnRvcEdyb3Vw
OworCiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1haW4tc3RhdHVzLWJhciIpLmFkZEV2
ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRoaXMuX3N0YXJ0U3RhdHVzQmFyRHJhZ2dpbmcuYmlu
ZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKQEAgLTE0Myw4ICsxNDgsMTIgQEAgV2ViSW5zcGVjdG9yLkNv
bnNvbGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwog
Ci0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVzc2FnZUVsZW1lbnQoKTsKLSAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsIHRoaXMucHJvbXB0RWxl
bWVudCk7CisgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBMZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkK
KyAgICAgICAgICAgIHRoaXMuc3RhcnRHcm91cCgpOworICAgICAgICB3aGlsZSAobXNnLmdyb3Vw
TGV2ZWwgPCB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICB0aGlzLmVuZEdyb3VwKCk7CisK
KyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYWRkTWVzc2FnZShtc2cpOwogICAgICAgICB0aGlz
LnByb21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UpOwogICAgIH0sCiAKQEAgLTE1NCw4
ICsxNjMsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAg
dGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAgICAgIHdoaWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVu
dC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0RWxlbWVudCkKLSAgICAgICAgICAgIHRoaXMubWVz
c2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubWVzc2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQp
OworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSAwOworICAgICAgICB0aGlzLmN1cnJlbnRHcm91
cCA9IHRoaXMudG9wR3JvdXA7CisgICAgICAgIHRoaXMudG9wR3JvdXAubWVzc2FnZXNFbGVtZW50
LnJlbW92ZUNoaWxkcmVuKCk7CiAgICAgfSwKIAogICAgIGNvbXBsZXRpb25zOiBmdW5jdGlvbih3
b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHkpCkBAIC0yMDksNiArMjE5LDIzIEBAIFdlYkluc3BlY3Rv
ci5Db25zb2xlLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICAgfSwK
IAorICAgIHN0YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwr
KzsKKyAgICAgICAgCisgICAgICAgIHZhciBncm91cCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29s
ZUdyb3VwKHRoaXMuY3VycmVudEdyb3VwLCB0aGlzLmdyb3VwTGV2ZWwpOworICAgICAgICB0aGlz
LmN1cnJlbnRHcm91cC5tZXNzYWdlc0VsZW1lbnQuYXBwZW5kQ2hpbGQoZ3JvdXAuZWxlbWVudCk7
CisgICAgICAgIHRoaXMuY3VycmVudEdyb3VwID0gZ3JvdXA7CisgICAgfSwKKworICAgIGVuZEdy
b3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMuZ3JvdXBMZXZlbCA8IDEpCisgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5ncm91cExldmVsLS07CisKKyAgICAgICAg
dGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLmN1cnJlbnRHcm91cC5wYXJlbnRHcm91cDsKKyAgICB9
LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBAIC00NDMsMTkgKzQ3MCwyMCBAQCBXZWJJ
bnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5Db25zb2xlLnBy
b3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGU7CiAKLVdlYklu
c3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVy
bCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWws
IGxpbmUsIHVybCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAg
ICB0aGlzLmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVy
bCA9IHVybDsKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cExldmVsOwogCiAgICAgLy8gVGhp
cyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQu
IFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNz
YWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2Vu
dGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBl
LnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5t
ZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50
cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBw
cm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAg
ICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNs
aWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhp
cy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQog
CiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTQxLDYgKzU2
OSw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxl
Q2xhc3MoImNvbnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5H
cm91cFRpdGxlOgorICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29s
ZS1ncm91cC10aXRsZS1sZXZlbCIpOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIG1lc3NhZ2VU
ZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2
MzYsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gCiAgICAgICAg
ICAgICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6
CiAgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiRXJyb3IiOwogICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVz
c2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiR3Jv
dXBUaXRsZSI7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAogICAgICAgICBy
ZXR1cm4gc291cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxTdHJpbmcgKyAiOiAiICsgdGhpcy5mb3Jt
YXR0ZWRNZXNzYWdlLnRleHRDb250ZW50ICsgIlxuIiArIHRoaXMudXJsICsgIiBsaW5lICIgKyB0
aGlzLmxpbmU7CkBAIC02MjQsNyArNjU4LDggQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdl
Lk1lc3NhZ2VMZXZlbAogICAgIFRpcDogMCwKICAgICBMb2c6IDEsCiAgICAgV2FybmluZzogMiwK
LSAgICBFcnJvcjogMworICAgIEVycm9yOiAzLAorICAgIEdyb3VwVGl0bGU6IDQKIH0KIAogV2Vi
SW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kID0gZnVuY3Rpb24oY29tbWFuZCwgcmVzdWx0LCBmb3Jt
YXR0ZWRSZXN1bHRFbGVtZW50LCBsZXZlbCkKQEAgLTY2OSwzICs3MDQsNDkgQEAgV2ViSW5zcGVj
dG9yLkNvbnNvbGVDb21tYW5kLnByb3RvdHlwZSA9IAogICAgICAgICByZXR1cm4gZWxlbWVudDsK
ICAgICB9CiB9CisKK1dlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAgPSBmdW5jdGlvbihwYXJlbnRH
cm91cCwgbGV2ZWwpCit7CisgICAgdGhpcy5wYXJlbnRHcm91cCA9IHBhcmVudEdyb3VwOworICAg
IHRoaXMubGV2ZWwgPSBsZXZlbDsKKworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgZWxlbWVudC5jbGFzc05hbWUgPSAiY29uc29sZS1ncm91cCI7
CisgICAgZWxlbWVudC5ncm91cCA9IHRoaXM7CisgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsK
KworICAgIHZhciBtZXNzYWdlc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICBtZXNzYWdlc0VsZW1lbnQuY2xhc3NOYW1lID0gImNvbnNvbGUtZ3JvdXAtbWVzc2Fn
ZXMiOworICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQobWVzc2FnZXNFbGVtZW50KTsKKyAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudCA9IG1lc3NhZ2VzRWxlbWVudDsKK30KKworV2ViSW5zcGVjdG9yLkNv
bnNvbGVHcm91cC5wcm90b3R5cGUgPSB7CisgICAgYWRkTWVzc2FnZTogZnVuY3Rpb24obXNnKQor
ICAgIHsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOworICAg
ICAgICAKKyAgICAgICAgaWYgKG1zZy5sZXZlbCA9PT0gV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlKSB7CisgICAgICAgICAgICB0aGlzLm1lc3NhZ2Vz
RWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50LCB0aGlzLm1lc3NhZ2VzRWxl
bWVudCk7CisgICAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhp
cy5fdGl0bGVDbGlja2VkLmJpbmQodGhpcyksIHRydWUpOworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LmFwcGVuZENoaWxkKGVsZW1lbnQpOworICAgIH0s
CisgICAgCisgICAgX3RpdGxlQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAg
ICB2YXIgZ3JvdXBUaXRsZUVsZW1lbnQgPSBldmVudC50YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2Vs
ZldpdGhDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1sZXZlbCIpOworICAgICAgICBpZiAoZ3Jv
dXBUaXRsZUVsZW1lbnQpIHsKKyAgICAgICAgICAgIHZhciBncm91cEVsZW1lbnQgPSBncm91cFRp
dGxlRWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwIik7
CisgICAgICAgICAgICBpZiAoZ3JvdXBFbGVtZW50KQorICAgICAgICAgICAgICAgIGlmIChncm91
cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29sbGFwc2VkIikpCisgICAgICAgICAgICAgICAgICAg
IGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5hZGRTdHlsZUNsYXNz
KCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9sbEludG9W
aWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKworICAgICAgICBldmVudC5zdG9wUHJvcGFn
YXRpb24oKTsKKyAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAgICB9Cit9CkluZGV4
OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCShyZXZpc2lvbiAzNTIwNykKKysrIFdl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcwkod29ya2luZyBjb3B5KQpAQCAtNDI1
LDYgKzQyNSwyNSBAQCBib2R5LmNvbnNvbGUtdmlzaWJsZSAjY29uc29sZSB7CiAgICAgZGlzcGxh
eTogYmxvY2s7CiB9CiAKKy5jb25zb2xlLWdyb3VwIC5jb25zb2xlLWdyb3VwIHsKKyAgICBib3Jk
ZXItbGVmdDogMTBweCBzb2xpZCByZ2IoMjU1LCAwLCAwKTsKK30KKworLmNvbnNvbGUtZ3JvdXAt
dGl0bGUtbGV2ZWwgeworICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMvZGlzY2xvc3Vy
ZVRyaWFuZ2xlU21hbGxEb3duLnBuZyk7CisgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVh
dDsKKyAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggMXB4OworICAgIGZvbnQtd2VpZ2h0OiBi
b2xkOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgLmNvbnNvbGUtZ3JvdXAtdGl0bGUt
bGV2ZWwgeworICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChJbWFnZXMvZGlzY2xvc3VyZVRyaWFu
Z2xlU21hbGxSaWdodC5wbmcpOworfQorCisuY29uc29sZS1ncm91cC5jb2xsYXBzZWQgPiAuY29u
c29sZS1ncm91cC1tZXNzYWdlcyB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKwogI2NvbnNvbGUt
c3RhdHVzLWJhciB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIGJvdHRvbTogMDsKSW5k
ZXg6IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCShyZXZpc2lvbiAzNTIwNykKKysrIFdl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCSh3b3JraW5nIGNvcHkpCkBAIC03OTcs
NiArNzk3LDE2IEBAIFdlYkluc3BlY3Rvci5hZGRNZXNzYWdlVG9Db25zb2xlID0gZnVuY3QKICAg
ICB0aGlzLmNvbnNvbGUuYWRkTWVzc2FnZShtc2cpOwogfQogCitXZWJJbnNwZWN0b3Iuc3RhcnRH
cm91cEluQ29uc29sZSA9IGZ1bmN0aW9uKCkKK3sKKyAgICB0aGlzLmNvbnNvbGUuc3RhcnRHcm91
cCgpOworfQorCitXZWJJbnNwZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUgPSBmdW5jdGlvbigpCit7
CisgICAgdGhpcy5jb25zb2xlLmVuZEdyb3VwKCk7Cit9CisKIFdlYkluc3BlY3Rvci5hZGRQcm9m
aWxlID0gZnVuY3Rpb24ocHJvZmlsZSkKIHsKICAgICB0aGlzLnBhbmVscy5wcm9maWxlcy5hZGRQ
cm9maWxlKHByb2ZpbGUpOwo=
</data>
<flag name="review"
          id="9875"
          type_id="1"
          status="-"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22446</attachid>
            <date>2008-07-23 04:06:56 -0700</date>
            <delta_ts>2008-07-23 07:35:26 -0700</delta_ts>
            <desc>Changed css</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>18148</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTIyMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDctMTcgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRml4ZWQgQnVnIDE5MTU4OiBJbnNwZWN0b3Igc2hvdWxkIHN1cHBvcnQgY29uc29sZS5n
cm91cC9jb25zb2xlLmdyb3VwRW5kCisKKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTE1OD4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29s
ZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0NvbnNvbGU6Omdyb3VwKTogQWRkZWQu
CisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6
Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cEVuZCk6IEFk
ZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAg
ICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAg
KiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29s
ZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwuCisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKTog
QWRkZWQgZ3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBvbmUgYW5k
IGNhbGxzIGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckNvbnRyb2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkgb25lIGFu
ZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
YXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21t
aXRMb2FkKTogUmVzZXRzIG1fZ3JvdXBMZXZlbC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkNvbnNvbGUpOiBBZGRlZCBncm91cExldmVsIGFuZCBjdXJyZW50R3Jv
dXAgdG9wR3JvdXAuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZS5hZGRNZXNzYWdlKTog
Q2FsbHMgYWRkTWVzc2FnZSBtZXRob2QgaW4gdGhlIGN1cnJlbnRHcm91cC4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db25zb2xlLnN0YXJ0R3JvdXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Db25zb2xlLmVuZEdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29u
c29sZS5jbGVhck1lc3NhZ2VzKTogUmVzZXRzIGdyb3VwTGV2ZWwgYW5kIGN1cnJlbnRHcm91cC4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
cHJvcGVydHkuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxl
dmVsLkdyb3VwVGl0bGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3Jv
dXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAuYWRkTWVzc2Fn
ZSk6IEFkZHMgY29uc29sZSBtZXNzYWdlIHRvIGdyb3VwLgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cC5fdGl0bGVDbGlja2VkKTogQWRkcyAiY29sbGFwc2VkIiBzdHlsZSBjbGFz
cy4KKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIHBh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5zdGFydEdy
b3VwSW5Db25zb2xlKTogQ2FsbHMgY29uc29sZS5zdGFydEdyb3VwCisgICAgICAgIChXZWJJbnNw
ZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUpOiBDYWxscyBjb25zb2xlLmVuZEdyb3VwCisKIDIwMDgt
MDctMTYgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OOiBDYW4ndCBjcmVhdGUgd2luZG93bGVzcyBwbHVnLWluIHdpdGggRmxhc2ggOQpJ
bmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTgzLDQgKzgzLDEwIEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmlsZUVuZChF
eGVjU3RhdGUKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSogSlNDb25z
b2xlOjpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sK
KyAgICBpbXBsKCktPmdyb3VwKGV4ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpzVW5kZWZp
bmVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9D
b25zb2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJKHJldmlz
aW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNjcsNiArMjY3LDM1IEBAIHZvaWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUqIGV4
ZWMKICAgICBQcm9maWxlcjo6cHJvZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0aXRsZSk7
CiB9CiAKK3ZvaWQgQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0
JiBhcmd1bWVudHMpCit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAg
ICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7
CisKKyAgICBpZiAoYXJndW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcGFnZS0+aW5zcGVjdG9y
Q29udHJvbGxlcigpLT5hZGRNZXNzYWdlVG9Db25zb2xlKEpTTWVzc2FnZVNvdXJjZSwgR3JvdXBU
aXRsZU1lc3NhZ2VMZXZlbCwgU3RyaW5nKCksIDAsIFN0cmluZygpKTsKKyAgICBlbHNlCisgICAg
ICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01l
c3NhZ2VTb3VyY2UsIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwg
U3RyaW5nKCkpOworfQorCit2b2lkIENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1f
ZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdl
KCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5pbnNwZWN0
b3JDb250cm9sbGVyKCktPmVuZEdyb3VwKCk7Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQ
cm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdl
KiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCShyZXZpc2lvbiAzNTIwNykKKysr
IFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExv
Z01lc3NhZ2VMZXZlbCwKICAgICAgICAgV2FybmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJy
b3JNZXNzYWdlTGV2ZWwKKyAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3Vw
VGl0bGVNZXNzYWdlTGV2ZWwKICAgICB9OwogCiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPENvbnNvbGU+LCBwdWJsaWMgS0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2
ICs3Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRp
b24oYm9vbCBjb25kaXRpb24sIEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBh
cmd1bWVudHMpOwogICAgICAgICB2b2lkIHByb2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBL
SlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4
ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBn
cm91cChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAg
ICAgICAgdm9pZCBncm91cEVuZCgpOwogCiAgICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmco
UGFzc1JlZlB0cjxLSlM6OlByb2ZpbGU+KTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUu
aWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29sZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYg
KzM4LDggQEAgbW9kdWxlIHdpbmRvdyB7CiAKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxl
KGluIERPTVN0cmluZyB0aXRsZSk7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgp
OworICAgICAgICBbQ3VzdG9tXSB2b2lkIGdyb3VwKCk7CisgICAgICAgIHZvaWQgZ3JvdXBFbmQo
KTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCShy
ZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsxNTIsMjMgQEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JD
b250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29uc29sZU1lc3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBD
b25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNz
YWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1
KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIGNv
bnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykK
ICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIG1lc3Nh
Z2UobSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1KQorICAgICAgICAsIGdy
b3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQogCi0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNv
dXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1l
c3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJn
TGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAg
ICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRB
cmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwo
dSkKKyAgICAgICAgLCBncm91cExldmVsKGcpCiAgICAgewogICAgICAgICBKU0xvY2sgbG9jayhm
YWxzZSk7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytp
KQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9y
PFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdyYXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQg
bGluZTsKICAgICBTdHJpbmcgdXJsOworICAgIHVuc2lnbmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAv
LyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENsYXNzCkBAIC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyCiAgICAgLCBtX3JlY29yZGluZ1Vz
ZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQogICAgICwgbV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1l
bnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVudGlmaWVyKC0yKQorICAgICwgbV9ncm91cExldmVs
KDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdlLCBwYWdlKTsKICAgICBBU1NFUlRfQVJHKGNsaWVu
dCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxl
cjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWws
IGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMKSk7CisgICAgYWRkQ29uc29s
ZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50
cywgbGluZU51bWJlciwgc291cmNlVVJMLCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNl
LCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGlu
ZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKQEAgLTExOTUsNyArMTE5OSw3IEBAIHZv
aWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQo
KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVN
ZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlEKSk7Cisg
ICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1l
c3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlELCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzc2FnZShDb25zb2xlTWVzc2FnZSogY29u
c29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEyMTMsMjkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRDb25zb2xlTWVzcwogICAgICAgICBhZGRTY3JpcHRDb25zb2xlTWVzc2FnZShjb25z
b2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6c3RhcnRHcm91cCgp
Cit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKworICAgICsrbV9ncm91cExl
dmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgY2FsbEZ1bmN0aW9uKG1f
c2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJzdGFydEdyb3VwSW5Db25zb2xlIiwgMCwg
TlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmRHcm91
cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworCisgICAgaWYgKG1fZ3JvdXBM
ZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisKKyAgICAtLW1fZ3JvdXBMZXZlbDsKKworICAg
IGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlvbihtX3NjcmlwdENvbnRl
eHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNvbnNvbGUiLCAwLCBOVUxMLCBleGNlcHRp
b24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFByb2ZpbGUoUGFzc1JlZlB0
cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmICghZW5hYmxlZCgpKQpAQCAtMTg1Niw2
ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAg
IEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4
dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVSZWYgbGluZVZhbHVlID0gSlNWYWx1ZU1h
a2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5saW5lKTsKICAgICBKU1ZhbHVlUmVm
IHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9zY3JpcHRDb250ZXh0LCBqc1N0cmluZ1Jl
ZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1ZhbHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9
IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+Z3JvdXBMZXZlbCk7
CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAy
NTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpA
QCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRD
b25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsKICAgICBh
cmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJn
dW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50Kytd
ID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFtZXNzYWdlLT53cmFwcGVkQXJndW1lbnRz
LmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCByZW1haW5pbmdTcGFjZUluQXJndW1lbnRz
ID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1bWVudENvdW50OwpAQCAtMTk0Myw2ICsx
OTcyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21taXRMb2FkKAogCiAgICAg
ICAgIGRlbGV0ZUFsbFZhbHVlcyhtX2NvbnNvbGVNZXNzYWdlcyk7CiAgICAgICAgIG1fY29uc29s
ZU1lc3NhZ2VzLmNsZWFyKCk7CisgICAgICAgIG1fZ3JvdXBMZXZlbCA9IDA7CiAKICAgICAgICAg
bV9wcm9maWxlcy5jbGVhcigpOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJv
bGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJ
KHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMTY5LDYgKzE2OSw5IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZHJh
d05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKKyAgICB2b2lkIHN0YXJ0
R3JvdXAoKTsKKyAgICB2b2lkIGVuZEdyb3VwKCk7CisKIHByaXZhdGU6CiAgICAgdm9pZCBmb2N1
c05vZGUoKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAgU3BlY2lhbFBhbmVs
cyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBsb25nIG1fbmV4dElkZW50aWZpZXI7CiAg
ICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2RlOworICAgIHVuc2lnbmVkIG1fZ3JvdXBM
ZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9p
bnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9y
L0NvbnNvbGUuanMJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9D
b25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2ICs0OCwxMSBAQCBXZWJJbnNwZWN0b3Iu
Q29uc29sZSA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmNsZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxvZy4iKTsKICAgICB0aGlzLmNsZWFyQnV0
dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLmJp
bmQodGhpcyksIGZhbHNlKTsKIAorICAgIHRoaXMudG9wR3JvdXAgPSBuZXcgV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cChudWxsLCAwKTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRC
ZWZvcmUodGhpcy50b3BHcm91cC5lbGVtZW50LCB0aGlzLnByb21wdEVsZW1lbnQpOworICAgIHRo
aXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLnRvcEdyb3Vw
OworCiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1haW4tc3RhdHVzLWJhciIpLmFkZEV2
ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRoaXMuX3N0YXJ0U3RhdHVzQmFyRHJhZ2dpbmcuYmlu
ZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKQEAgLTE0Myw4ICsxNDgsMTIgQEAgV2ViSW5zcGVjdG9yLkNv
bnNvbGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwog
Ci0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVzc2FnZUVsZW1lbnQoKTsKLSAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsIHRoaXMucHJvbXB0RWxl
bWVudCk7CisgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBMZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkK
KyAgICAgICAgICAgIHRoaXMuc3RhcnRHcm91cCgpOworICAgICAgICB3aGlsZSAobXNnLmdyb3Vw
TGV2ZWwgPCB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICB0aGlzLmVuZEdyb3VwKCk7CisK
KyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYWRkTWVzc2FnZShtc2cpOwogICAgICAgICB0aGlz
LnByb21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UpOwogICAgIH0sCiAKQEAgLTE1NCw4
ICsxNjMsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAg
dGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAgICAgIHdoaWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVu
dC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0RWxlbWVudCkKLSAgICAgICAgICAgIHRoaXMubWVz
c2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubWVzc2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQp
OworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSAwOworICAgICAgICB0aGlzLmN1cnJlbnRHcm91
cCA9IHRoaXMudG9wR3JvdXA7CisgICAgICAgIHRoaXMudG9wR3JvdXAubWVzc2FnZXNFbGVtZW50
LnJlbW92ZUNoaWxkcmVuKCk7CiAgICAgfSwKIAogICAgIGNvbXBsZXRpb25zOiBmdW5jdGlvbih3
b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHkpCkBAIC0yMDksNiArMjE5LDIzIEBAIFdlYkluc3BlY3Rv
ci5Db25zb2xlLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICAgfSwK
IAorICAgIHN0YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwr
KzsKKyAgICAgICAgCisgICAgICAgIHZhciBncm91cCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29s
ZUdyb3VwKHRoaXMuY3VycmVudEdyb3VwLCB0aGlzLmdyb3VwTGV2ZWwpOworICAgICAgICB0aGlz
LmN1cnJlbnRHcm91cC5tZXNzYWdlc0VsZW1lbnQuYXBwZW5kQ2hpbGQoZ3JvdXAuZWxlbWVudCk7
CisgICAgICAgIHRoaXMuY3VycmVudEdyb3VwID0gZ3JvdXA7CisgICAgfSwKKworICAgIGVuZEdy
b3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMuZ3JvdXBMZXZlbCA8IDEpCisgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5ncm91cExldmVsLS07CisKKyAgICAgICAg
dGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLmN1cnJlbnRHcm91cC5wYXJlbnRHcm91cDsKKyAgICB9
LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBAIC00NDMsMTkgKzQ3MCwyMCBAQCBXZWJJ
bnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5Db25zb2xlLnBy
b3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGU7CiAKLVdlYklu
c3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVy
bCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWws
IGxpbmUsIHVybCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAg
ICB0aGlzLmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVy
bCA9IHVybDsKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cExldmVsOwogCiAgICAgLy8gVGhp
cyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQu
IFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNz
YWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2Vu
dGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBl
LnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5t
ZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50
cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBw
cm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAg
ICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNs
aWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhp
cy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQog
CiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTQxLDYgKzU2
OSw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxl
Q2xhc3MoImNvbnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5H
cm91cFRpdGxlOgorICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29s
ZS1ncm91cC10aXRsZS1sZXZlbCIpOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIG1lc3NhZ2VU
ZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2
MzYsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gCiAgICAgICAg
ICAgICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6
CiAgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiRXJyb3IiOwogICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVz
c2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiR3Jv
dXBUaXRsZSI7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAogICAgICAgICBy
ZXR1cm4gc291cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxTdHJpbmcgKyAiOiAiICsgdGhpcy5mb3Jt
YXR0ZWRNZXNzYWdlLnRleHRDb250ZW50ICsgIlxuIiArIHRoaXMudXJsICsgIiBsaW5lICIgKyB0
aGlzLmxpbmU7CkBAIC02MjQsNyArNjU4LDggQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdl
Lk1lc3NhZ2VMZXZlbAogICAgIFRpcDogMCwKICAgICBMb2c6IDEsCiAgICAgV2FybmluZzogMiwK
LSAgICBFcnJvcjogMworICAgIEVycm9yOiAzLAorICAgIEdyb3VwVGl0bGU6IDQKIH0KIAogV2Vi
SW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kID0gZnVuY3Rpb24oY29tbWFuZCwgcmVzdWx0LCBmb3Jt
YXR0ZWRSZXN1bHRFbGVtZW50LCBsZXZlbCkKQEAgLTY2OSwzICs3MDQsNDkgQEAgV2ViSW5zcGVj
dG9yLkNvbnNvbGVDb21tYW5kLnByb3RvdHlwZSA9IAogICAgICAgICByZXR1cm4gZWxlbWVudDsK
ICAgICB9CiB9CisKK1dlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAgPSBmdW5jdGlvbihwYXJlbnRH
cm91cCwgbGV2ZWwpCit7CisgICAgdGhpcy5wYXJlbnRHcm91cCA9IHBhcmVudEdyb3VwOworICAg
IHRoaXMubGV2ZWwgPSBsZXZlbDsKKworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgZWxlbWVudC5jbGFzc05hbWUgPSAiY29uc29sZS1ncm91cCI7
CisgICAgZWxlbWVudC5ncm91cCA9IHRoaXM7CisgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsK
KworICAgIHZhciBtZXNzYWdlc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICBtZXNzYWdlc0VsZW1lbnQuY2xhc3NOYW1lID0gImNvbnNvbGUtZ3JvdXAtbWVzc2Fn
ZXMiOworICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQobWVzc2FnZXNFbGVtZW50KTsKKyAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudCA9IG1lc3NhZ2VzRWxlbWVudDsKK30KKworV2ViSW5zcGVjdG9yLkNv
bnNvbGVHcm91cC5wcm90b3R5cGUgPSB7CisgICAgYWRkTWVzc2FnZTogZnVuY3Rpb24obXNnKQor
ICAgIHsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOworICAg
ICAgICAKKyAgICAgICAgaWYgKG1zZy5sZXZlbCA9PT0gV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlKSB7CisgICAgICAgICAgICB0aGlzLm1lc3NhZ2Vz
RWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50LCB0aGlzLm1lc3NhZ2VzRWxl
bWVudCk7CisgICAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhp
cy5fdGl0bGVDbGlja2VkLmJpbmQodGhpcyksIHRydWUpOworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LmFwcGVuZENoaWxkKGVsZW1lbnQpOworICAgIH0s
CisgICAgCisgICAgX3RpdGxlQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAg
ICB2YXIgZ3JvdXBUaXRsZUVsZW1lbnQgPSBldmVudC50YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2Vs
ZldpdGhDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1sZXZlbCIpOworICAgICAgICBpZiAoZ3Jv
dXBUaXRsZUVsZW1lbnQpIHsKKyAgICAgICAgICAgIHZhciBncm91cEVsZW1lbnQgPSBncm91cFRp
dGxlRWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwIik7
CisgICAgICAgICAgICBpZiAoZ3JvdXBFbGVtZW50KQorICAgICAgICAgICAgICAgIGlmIChncm91
cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29sbGFwc2VkIikpCisgICAgICAgICAgICAgICAgICAg
IGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5hZGRTdHlsZUNsYXNz
KCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9sbEludG9W
aWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKworICAgICAgICBldmVudC5zdG9wUHJvcGFn
YXRpb24oKTsKKyAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAgICB9Cit9CkluZGV4
OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCShyZXZpc2lvbiAzNTIwNykKKysrIFdl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcwkod29ya2luZyBjb3B5KQpAQCAtNDI1
LDYgKzQyNSwyNSBAQCBib2R5LmNvbnNvbGUtdmlzaWJsZSAjY29uc29sZSB7CiAgICAgZGlzcGxh
eTogYmxvY2s7CiB9CiAKKy5jb25zb2xlLWdyb3VwIC5jb25zb2xlLWdyb3VwID4gLmNvbnNvbGUt
Z3JvdXAtbWVzc2FnZXMgeworICAgIG1hcmdpbi1sZWZ0OiAxMHB4OworfQorCisuY29uc29sZS1n
cm91cC10aXRsZS1sZXZlbCB7CisgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKEltYWdlcy9kaXNj
bG9zdXJlVHJpYW5nbGVTbWFsbERvd24ucG5nKTsKKyAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8t
cmVwZWF0OworICAgIGJhY2tncm91bmQtcG9zaXRpb246IDNweCAxcHg7CisgICAgZm9udC13ZWln
aHQ6IGJvbGQ7Cit9CisKKy5jb25zb2xlLWdyb3VwLmNvbGxhcHNlZCAuY29uc29sZS1ncm91cC10
aXRsZS1sZXZlbCB7CisgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKEltYWdlcy9kaXNjbG9zdXJl
VHJpYW5nbGVTbWFsbFJpZ2h0LnBuZyk7Cit9CisKKy5jb25zb2xlLWdyb3VwLmNvbGxhcHNlZCA+
IC5jb25zb2xlLWdyb3VwLW1lc3NhZ2VzIHsKKyAgICBkaXNwbGF5OiBub25lOworfQorCiAjY29u
c29sZS1zdGF0dXMtYmFyIHsKICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgYm90dG9tOiAw
OwpJbmRleDogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanMJKHJldmlzaW9uIDM1MjA3KQor
KysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanMJKHdvcmtpbmcgY29weSkKQEAg
LTc5Nyw2ICs3OTcsMTYgQEAgV2ViSW5zcGVjdG9yLmFkZE1lc3NhZ2VUb0NvbnNvbGUgPSBmdW5j
dAogICAgIHRoaXMuY29uc29sZS5hZGRNZXNzYWdlKG1zZyk7CiB9CiAKK1dlYkluc3BlY3Rvci5z
dGFydEdyb3VwSW5Db25zb2xlID0gZnVuY3Rpb24oKQoreworICAgIHRoaXMuY29uc29sZS5zdGFy
dEdyb3VwKCk7Cit9CisKK1dlYkluc3BlY3Rvci5lbmRHcm91cEluQ29uc29sZSA9IGZ1bmN0aW9u
KCkKK3sKKyAgICB0aGlzLmNvbnNvbGUuZW5kR3JvdXAoKTsKK30KKwogV2ViSW5zcGVjdG9yLmFk
ZFByb2ZpbGUgPSBmdW5jdGlvbihwcm9maWxlKQogewogICAgIHRoaXMucGFuZWxzLnByb2ZpbGVz
LmFkZFByb2ZpbGUocHJvZmlsZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>22447</attachid>
            <date>2008-07-23 04:12:49 -0700</date>
            <delta_ts>2008-07-23 04:12:49 -0700</delta_ts>
            <desc>Screenshot</desc>
            <filename>Picture 6.png</filename>
            <type>image/png</type>
            <size>6525</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">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
ggwAIKL/B2L9h8CwBajWAAAAAElFTkSuQmCC
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22452</attachid>
            <date>2008-07-23 07:35:26 -0700</date>
            <delta_ts>2008-07-29 10:40:39 -0700</delta_ts>
            <desc>Fixed css</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>18078</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNTIyMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDgtMDctMTcgIEtlaXNoaSBIYXR0b3JpICA8Y2FzZXkuaGF0dG9y
aUBnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRml4ZWQgQnVnIDE5MTU4OiBJbnNwZWN0b3Igc2hvdWxkIHN1cHBvcnQgY29uc29sZS5n
cm91cC9jb25zb2xlLmdyb3VwRW5kCisKKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTE1OD4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ29uc29s
ZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0NvbnNvbGU6Omdyb3VwKTogQWRkZWQu
CisgICAgICAgICogcGFnZS9Db25zb2xlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbnNvbGU6
Omdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDb25zb2xlOjpncm91cEVuZCk6IEFk
ZGVkLgorICAgICAgICAqIHBhZ2UvQ29uc29sZS5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAg
ICAgICAgKiBwYWdlL0NvbnNvbGUuaWRsOiBBZGRlZCBncm91cC9ncm91cEVuZC4KKyAgICAgICAg
KiBwYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29uc29s
ZU1lc3NhZ2U6OkNvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIpOiBBZGRlZCBtX2dyb3VwTGV2ZWwuCisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKTog
QWRkZWQgZ3JvdXBMZXZlbCBhcmd1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNv
bnRyb2xsZXI6OnN0YXJ0R3JvdXApOiBJbmNyZW1lbnRzIG1fZ3JvdXBMZXZlbCBieSBvbmUgYW5k
IGNhbGxzIGpzIGZ1bmN0aW9uIGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckNvbnRyb2xsZXI6OmVuZEdyb3VwKTogRGVjcmVtZW50cyBtX2dyb3VwTGV2ZWwgYnkgb25lIGFu
ZCBjYWxscyBqcyBmdW5jdGlvbiBpZiBuZWVkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
YXJndW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21t
aXRMb2FkKTogUmVzZXRzIG1fZ3JvdXBMZXZlbC4KKyAgICAgICAgKiBwYWdlL0luc3BlY3RvckNv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Db25zb2xlLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkNvbnNvbGUpOiBBZGRlZCBncm91cExldmVsIGFuZCBjdXJyZW50R3Jv
dXAgdG9wR3JvdXAuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZS5hZGRNZXNzYWdlKTog
Q2FsbHMgYWRkTWVzc2FnZSBtZXRob2QgaW4gdGhlIGN1cnJlbnRHcm91cC4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db25zb2xlLnN0YXJ0R3JvdXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Db25zb2xlLmVuZEdyb3VwKTogQWRkZWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29u
c29sZS5jbGVhck1lc3NhZ2VzKTogUmVzZXRzIGdyb3VwTGV2ZWwgYW5kIGN1cnJlbnRHcm91cC4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSk6IEFkZGVkIGdyb3VwTGV2ZWwg
cHJvcGVydHkuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVzc2FnZUxl
dmVsLkdyb3VwVGl0bGUpOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3Jv
dXApOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAuYWRkTWVzc2Fn
ZSk6IEFkZHMgY29uc29sZSBtZXNzYWdlIHRvIGdyb3VwLgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cC5fdGl0bGVDbGlja2VkKTogQWRkcyAiY29sbGFwc2VkIiBzdHlsZSBjbGFz
cy4KKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIHBh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5zdGFydEdy
b3VwSW5Db25zb2xlKTogQ2FsbHMgY29uc29sZS5zdGFydEdyb3VwCisgICAgICAgIChXZWJJbnNw
ZWN0b3IuZW5kR3JvdXBJbkNvbnNvbGUpOiBDYWxscyBjb25zb2xlLmVuZEdyb3VwCisKIDIwMDgt
MDctMTYgIEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OOiBDYW4ndCBjcmVhdGUgd2luZG93bGVzcyBwbHVnLWluIHdpdGggRmxhc2ggOQpJ
bmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NvbnNvbGVDdXN0b20uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvYmluZGluZ3MvanMvSlNDb25zb2xlQ3VzdG9tLmNwcAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTgzLDQgKzgzLDEwIEBAIEpTVmFsdWUqIEpTQ29uc29sZTo6cHJvZmlsZUVuZChF
eGVjU3RhdGUKICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIAorSlNWYWx1ZSogSlNDb25z
b2xlOjpncm91cChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIGFyZ3VtZW50cykKK3sK
KyAgICBpbXBsKCktPmdyb3VwKGV4ZWMsIGFyZ3VtZW50cyk7CisgICAgcmV0dXJuIGpzVW5kZWZp
bmVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9D
b25zb2xlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5jcHAJKHJldmlz
aW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0NvbnNvbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNjcsNiArMjY3LDM1IEBAIHZvaWQgQ29uc29sZTo6cHJvZmlsZUVuZChFeGVjU3RhdGUqIGV4
ZWMKICAgICBQcm9maWxlcjo6cHJvZmlsZXIoKS0+c3RvcFByb2ZpbGluZyhleGVjLCB0aXRsZSk7
CiB9CiAKK3ZvaWQgQ29uc29sZTo6Z3JvdXAoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0
JiBhcmd1bWVudHMpCit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAg
ICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgcGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLT5zdGFydEdyb3VwKCk7
CisKKyAgICBpZiAoYXJndW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcGFnZS0+aW5zcGVjdG9y
Q29udHJvbGxlcigpLT5hZGRNZXNzYWdlVG9Db25zb2xlKEpTTWVzc2FnZVNvdXJjZSwgR3JvdXBU
aXRsZU1lc3NhZ2VMZXZlbCwgU3RyaW5nKCksIDAsIFN0cmluZygpKTsKKyAgICBlbHNlCisgICAg
ICAgIHBhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS0+YWRkTWVzc2FnZVRvQ29uc29sZShKU01l
c3NhZ2VTb3VyY2UsIEdyb3VwVGl0bGVNZXNzYWdlTGV2ZWwsIGV4ZWMsIGFyZ3VtZW50cywgMCwg
U3RyaW5nKCkpOworfQorCit2b2lkIENvbnNvbGU6Omdyb3VwRW5kKCkKK3sKKyAgICBpZiAoIW1f
ZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdl
KCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5pbnNwZWN0
b3JDb250cm9sbGVyKCktPmVuZEdyb3VwKCk7Cit9CisKIHZvaWQgQ29uc29sZTo6ZmluaXNoZWRQ
cm9maWxpbmcoUGFzc1JlZlB0cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmIChQYWdl
KiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQpJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ29uc29sZS5oCShyZXZpc2lvbiAzNTIwNykKKysr
IFdlYkNvcmUvcGFnZS9Db25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDggQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBUaXBNZXNzYWdlTGV2ZWwsCiAgICAgICAgIExv
Z01lc3NhZ2VMZXZlbCwKICAgICAgICAgV2FybmluZ01lc3NhZ2VMZXZlbCwKLSAgICAgICAgRXJy
b3JNZXNzYWdlTGV2ZWwKKyAgICAgICAgRXJyb3JNZXNzYWdlTGV2ZWwsCisgICAgICAgIEdyb3Vw
VGl0bGVNZXNzYWdlTGV2ZWwKICAgICB9OwogCiAgICAgY2xhc3MgQ29uc29sZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPENvbnNvbGU+LCBwdWJsaWMgS0pTOjpQcm9maWxlckNsaWVudCB7CkBAIC03Niw2
ICs3Nyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBhc3NlcnRDb25kaXRp
b24oYm9vbCBjb25kaXRpb24sIEtKUzo6RXhlY1N0YXRlKiwgY29uc3QgS0pTOjpBcmdMaXN0JiBh
cmd1bWVudHMpOwogICAgICAgICB2b2lkIHByb2ZpbGUoS0pTOjpFeGVjU3RhdGUqLCBjb25zdCBL
SlM6OkFyZ0xpc3QmIGFyZ3VtZW50cyk7CiAgICAgICAgIHZvaWQgcHJvZmlsZUVuZChLSlM6OkV4
ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAgICAgICAgdm9pZCBn
cm91cChLSlM6OkV4ZWNTdGF0ZSosIGNvbnN0IEtKUzo6QXJnTGlzdCYgYXJndW1lbnRzKTsKKyAg
ICAgICAgdm9pZCBncm91cEVuZCgpOwogCiAgICAgICAgIHZvaWQgZmluaXNoZWRQcm9maWxpbmco
UGFzc1JlZlB0cjxLSlM6OlByb2ZpbGU+KTsKIApJbmRleDogV2ViQ29yZS9wYWdlL0NvbnNvbGUu
aWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9Db25zb2xlLmlkbAkocmV2aXNpb24gMzUy
MDcpCisrKyBXZWJDb3JlL3BhZ2UvQ29uc29sZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYg
KzM4LDggQEAgbW9kdWxlIHdpbmRvdyB7CiAKICAgICAgICAgW0N1c3RvbV0gdm9pZCBwcm9maWxl
KGluIERPTVN0cmluZyB0aXRsZSk7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcHJvZmlsZUVuZCgp
OworICAgICAgICBbQ3VzdG9tXSB2b2lkIGdyb3VwKCk7CisgICAgICAgIHZvaWQgZ3JvdXBFbmQo
KTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJvbGxlci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCShy
ZXZpc2lvbiAzNTIwNykKKysrIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTUyLDIxICsxNTIsMjMgQEAgSlNWYWx1ZVJlZiBJbnNwZWN0b3JD
b250cm9sbGVyOjpjYWxsRnVuYwogLy8gQ29uc29sZU1lc3NhZ2UgU3RydWN0CiAKIHN0cnVjdCBD
b25zb2xlTWVzc2FnZSB7Ci0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBzLCBNZXNz
YWdlTGV2ZWwgbCwgY29uc3QgU3RyaW5nJiBtLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1
KQorICAgIENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIGNv
bnN0IFN0cmluZyYgbSwgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykK
ICAgICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIG1lc3Nh
Z2UobSkKICAgICAgICAgLCBsaW5lKGxpKQogICAgICAgICAsIHVybCh1KQorICAgICAgICAsIGdy
b3VwTGV2ZWwoZykKICAgICB7CiAgICAgfQogCi0gICAgQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNv
dXJjZSBzLCBNZXNzYWdlTGV2ZWwgbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCB1bnNpZ25lZCBsaSwgY29uc3QgU3RyaW5nJiB1KQorICAgIENvbnNvbGVNZXNzYWdlKE1l
c3NhZ2VTb3VyY2UgcywgTWVzc2FnZUxldmVsIGwsIEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQXJn
TGlzdCYgYXJncywgdW5zaWduZWQgbGksIGNvbnN0IFN0cmluZyYgdSwgdW5zaWduZWQgZykKICAg
ICAgICAgOiBzb3VyY2UocykKICAgICAgICAgLCBsZXZlbChsKQogICAgICAgICAsIHdyYXBwZWRB
cmd1bWVudHMoYXJncy5zaXplKCkpCiAgICAgICAgICwgbGluZShsaSkKICAgICAgICAgLCB1cmwo
dSkKKyAgICAgICAgLCBncm91cExldmVsKGcpCiAgICAgewogICAgICAgICBKU0xvY2sgbG9jayhm
YWxzZSk7CiAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBhcmdzLnNpemUoKTsgKytp
KQpAQCAtMTc5LDYgKzE4MSw3IEBAIHN0cnVjdCBDb25zb2xlTWVzc2FnZSB7CiAgICAgVmVjdG9y
PFByb3RlY3RlZFB0cjxKU1ZhbHVlPiA+IHdyYXBwZWRBcmd1bWVudHM7CiAgICAgdW5zaWduZWQg
bGluZTsKICAgICBTdHJpbmcgdXJsOworICAgIHVuc2lnbmVkIGdyb3VwTGV2ZWw7CiB9OwogCiAv
LyBYTUxIdHRwUmVxdWVzdFJlc291cmNlIENsYXNzCkBAIC0xMDIzLDYgKzEwMjYsNyBAQCBJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyCiAgICAgLCBtX3JlY29yZGluZ1Vz
ZXJJbml0aWF0ZWRQcm9maWxlKGZhbHNlKQogICAgICwgbV9zaG93QWZ0ZXJWaXNpYmxlKEVsZW1l
bnRzUGFuZWwpCiAgICAgLCBtX25leHRJZGVudGlmaWVyKC0yKQorICAgICwgbV9ncm91cExldmVs
KDApCiB7CiAgICAgQVNTRVJUX0FSRyhwYWdlLCBwYWdlKTsKICAgICBBU1NFUlRfQVJHKGNsaWVu
dCwgY2xpZW50KTsKQEAgLTExODcsNyArMTE5MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxl
cjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWws
IGV4ZWMsIGFyZ3VtZW50cywgbGluZU51bWJlciwgc291cmNlVVJMKSk7CisgICAgYWRkQ29uc29s
ZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIGV4ZWMsIGFyZ3VtZW50
cywgbGluZU51bWJlciwgc291cmNlVVJMLCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJbnNw
ZWN0b3JDb250cm9sbGVyOjphZGRNZXNzYWdlVG9Db25zb2xlKE1lc3NhZ2VTb3VyY2Ugc291cmNl
LCBNZXNzYWdlTGV2ZWwgbGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgbGlu
ZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCkKQEAgLTExOTUsNyArMTE5OSw3IEBAIHZv
aWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6YWRkTWVzc2FnZVRvQ28KICAgICBpZiAoIWVuYWJsZWQo
KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVN
ZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlEKSk7Cisg
ICAgYWRkQ29uc29sZU1lc3NhZ2UobmV3IENvbnNvbGVNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1l
c3NhZ2UsIGxpbmVOdW1iZXIsIHNvdXJjZUlELCBtX2dyb3VwTGV2ZWwpKTsKIH0KIAogdm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjphZGRDb25zb2xlTWVzc2FnZShDb25zb2xlTWVzc2FnZSogY29u
c29sZU1lc3NhZ2UpCkBAIC0xMjA5LDYgKzEyMTMsMjkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjphZGRDb25zb2xlTWVzcwogICAgICAgICBhZGRTY3JpcHRDb25zb2xlTWVzc2FnZShjb25z
b2xlTWVzc2FnZSk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6c3RhcnRHcm91cCgp
Cit7ICAgIAorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKworICAgICsrbV9ncm91cExl
dmVsOworCisgICAgaWYgKHdpbmRvd1Zpc2libGUoKSkKKyAgICAgICAgY2FsbEZ1bmN0aW9uKG1f
c2NyaXB0Q29udGV4dCwgbV9zY3JpcHRPYmplY3QsICJzdGFydEdyb3VwSW5Db25zb2xlIiwgMCwg
TlVMTCwgZXhjZXB0aW9uKTsKK30KKwordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmRHcm91
cCgpCit7CisgICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOworCisgICAgaWYgKG1fZ3JvdXBM
ZXZlbCA9PSAwKQorICAgICAgICByZXR1cm47CisKKyAgICAtLW1fZ3JvdXBMZXZlbDsKKworICAg
IGlmICh3aW5kb3dWaXNpYmxlKCkpCisgICAgICAgIGNhbGxGdW5jdGlvbihtX3NjcmlwdENvbnRl
eHQsIG1fc2NyaXB0T2JqZWN0LCAiZW5kR3JvdXBJbkNvbnNvbGUiLCAwLCBOVUxMLCBleGNlcHRp
b24pOworfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmFkZFByb2ZpbGUoUGFzc1JlZlB0
cjxQcm9maWxlPiBwcnBQcm9maWxlKQogewogICAgIGlmICghZW5hYmxlZCgpKQpAQCAtMTg1Niw2
ICsxODgzLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRDb25zbwogICAg
IEpTVmFsdWVSZWYgbGV2ZWxWYWx1ZSA9IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4
dCwgbWVzc2FnZS0+bGV2ZWwpOwogICAgIEpTVmFsdWVSZWYgbGluZVZhbHVlID0gSlNWYWx1ZU1h
a2VOdW1iZXIobV9zY3JpcHRDb250ZXh0LCBtZXNzYWdlLT5saW5lKTsKICAgICBKU1ZhbHVlUmVm
IHVybFZhbHVlID0gSlNWYWx1ZU1ha2VTdHJpbmcobV9zY3JpcHRDb250ZXh0LCBqc1N0cmluZ1Jl
ZihtZXNzYWdlLT51cmwpLmdldCgpKTsKKyAgICBKU1ZhbHVlUmVmIGdyb3VwTGV2ZWxWYWx1ZSA9
IEpTVmFsdWVNYWtlTnVtYmVyKG1fc2NyaXB0Q29udGV4dCwgbWVzc2FnZS0+Z3JvdXBMZXZlbCk7
CiAKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgPSAy
NTY7CiAgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNbbWF4aW11bU1lc3NhZ2VBcmd1bWVudHNdOwpA
QCAtMTg2NCw2ICsxODkyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjphZGRTY3JpcHRD
b25zbwogICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50KytdID0gbGV2ZWxWYWx1ZTsKICAgICBh
cmd1bWVudHNbYXJndW1lbnRDb3VudCsrXSA9IGxpbmVWYWx1ZTsKICAgICBhcmd1bWVudHNbYXJn
dW1lbnRDb3VudCsrXSA9IHVybFZhbHVlOworICAgIGFyZ3VtZW50c1thcmd1bWVudENvdW50Kytd
ID0gZ3JvdXBMZXZlbFZhbHVlOwogCiAgICAgaWYgKCFtZXNzYWdlLT53cmFwcGVkQXJndW1lbnRz
LmlzRW1wdHkoKSkgewogICAgICAgICB1bnNpZ25lZCByZW1haW5pbmdTcGFjZUluQXJndW1lbnRz
ID0gbWF4aW11bU1lc3NhZ2VBcmd1bWVudHMgLSBhcmd1bWVudENvdW50OwpAQCAtMTk0Myw2ICsx
OTcyLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpkaWRDb21taXRMb2FkKAogCiAgICAg
ICAgIGRlbGV0ZUFsbFZhbHVlcyhtX2NvbnNvbGVNZXNzYWdlcyk7CiAgICAgICAgIG1fY29uc29s
ZU1lc3NhZ2VzLmNsZWFyKCk7CisgICAgICAgIG1fZ3JvdXBMZXZlbCA9IDA7CiAKICAgICAgICAg
bV9wcm9maWxlcy5jbGVhcigpOwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvSW5zcGVjdG9yQ29udHJv
bGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9JbnNwZWN0b3JDb250cm9sbGVyLmgJ
KHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL0luc3BlY3RvckNvbnRyb2xsZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMTY5LDYgKzE2OSw5IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZHJh
d05vZGVIaWdobGlnaHQoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKKyAgICB2b2lkIHN0YXJ0
R3JvdXAoKTsKKyAgICB2b2lkIGVuZEdyb3VwKCk7CisKIHByaXZhdGU6CiAgICAgdm9pZCBmb2N1
c05vZGUoKTsKIApAQCAtMjMyLDYgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAgU3BlY2lhbFBhbmVs
cyBtX3Nob3dBZnRlclZpc2libGU7CiAgICAgbG9uZyBsb25nIG1fbmV4dElkZW50aWZpZXI7CiAg
ICAgUmVmUHRyPE5vZGU+IG1faGlnaGxpZ2h0ZWROb2RlOworICAgIHVuc2lnbmVkIG1fZ3JvdXBM
ZXZlbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvcGFnZS9p
bnNwZWN0b3IvQ29uc29sZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9y
L0NvbnNvbGUuanMJKHJldmlzaW9uIDM1MjA3KQorKysgV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9D
b25zb2xlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2ICs0OCwxMSBAQCBXZWJJbnNwZWN0b3Iu
Q29uc29sZSA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmNsZWFyQnV0dG9uLnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDbGVhciBjb25zb2xlIGxvZy4iKTsKICAgICB0aGlzLmNsZWFyQnV0
dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLmJp
bmQodGhpcyksIGZhbHNlKTsKIAorICAgIHRoaXMudG9wR3JvdXAgPSBuZXcgV2ViSW5zcGVjdG9y
LkNvbnNvbGVHcm91cChudWxsLCAwKTsKKyAgICB0aGlzLm1lc3NhZ2VzRWxlbWVudC5pbnNlcnRC
ZWZvcmUodGhpcy50b3BHcm91cC5lbGVtZW50LCB0aGlzLnByb21wdEVsZW1lbnQpOworICAgIHRo
aXMuZ3JvdXBMZXZlbCA9IDA7CisgICAgdGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLnRvcEdyb3Vw
OworCiAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1haW4tc3RhdHVzLWJhciIpLmFkZEV2
ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRoaXMuX3N0YXJ0U3RhdHVzQmFyRHJhZ2dpbmcuYmlu
ZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKQEAgLTE0Myw4ICsxNDgsMTIgQEAgV2ViSW5zcGVjdG9yLkNv
bnNvbGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtc2cpOwog
Ci0gICAgICAgIHZhciBlbGVtZW50ID0gbXNnLnRvTWVzc2FnZUVsZW1lbnQoKTsKLSAgICAgICAg
dGhpcy5tZXNzYWdlc0VsZW1lbnQuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsIHRoaXMucHJvbXB0RWxl
bWVudCk7CisgICAgICAgIHdoaWxlIChtc2cuZ3JvdXBMZXZlbCA+IHRoaXMuZ3JvdXBMZXZlbCkK
KyAgICAgICAgICAgIHRoaXMuc3RhcnRHcm91cCgpOworICAgICAgICB3aGlsZSAobXNnLmdyb3Vw
TGV2ZWwgPCB0aGlzLmdyb3VwTGV2ZWwpCisgICAgICAgICAgICB0aGlzLmVuZEdyb3VwKCk7CisK
KyAgICAgICAgdGhpcy5jdXJyZW50R3JvdXAuYWRkTWVzc2FnZShtc2cpOwogICAgICAgICB0aGlz
LnByb21wdEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UpOwogICAgIH0sCiAKQEAgLTE1NCw4
ICsxNjMsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAg
dGhpcy5tZXNzYWdlcyA9IFtdOwogCi0gICAgICAgIHdoaWxlICh0aGlzLm1lc3NhZ2VzRWxlbWVu
dC5maXJzdENoaWxkICE9IHRoaXMucHJvbXB0RWxlbWVudCkKLSAgICAgICAgICAgIHRoaXMubWVz
c2FnZXNFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubWVzc2FnZXNFbGVtZW50LmZpcnN0Q2hpbGQp
OworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwgPSAwOworICAgICAgICB0aGlzLmN1cnJlbnRHcm91
cCA9IHRoaXMudG9wR3JvdXA7CisgICAgICAgIHRoaXMudG9wR3JvdXAubWVzc2FnZXNFbGVtZW50
LnJlbW92ZUNoaWxkcmVuKCk7CiAgICAgfSwKIAogICAgIGNvbXBsZXRpb25zOiBmdW5jdGlvbih3
b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHkpCkBAIC0yMDksNiArMjE5LDIzIEBAIFdlYkluc3BlY3Rv
ci5Db25zb2xlLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICAgfSwK
IAorICAgIHN0YXJ0R3JvdXA6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmdyb3VwTGV2ZWwr
KzsKKyAgICAgICAgCisgICAgICAgIHZhciBncm91cCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29s
ZUdyb3VwKHRoaXMuY3VycmVudEdyb3VwLCB0aGlzLmdyb3VwTGV2ZWwpOworICAgICAgICB0aGlz
LmN1cnJlbnRHcm91cC5tZXNzYWdlc0VsZW1lbnQuYXBwZW5kQ2hpbGQoZ3JvdXAuZWxlbWVudCk7
CisgICAgICAgIHRoaXMuY3VycmVudEdyb3VwID0gZ3JvdXA7CisgICAgfSwKKworICAgIGVuZEdy
b3VwOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMuZ3JvdXBMZXZlbCA8IDEpCisgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5ncm91cExldmVsLS07CisKKyAgICAgICAg
dGhpcy5jdXJyZW50R3JvdXAgPSB0aGlzLmN1cnJlbnRHcm91cC5wYXJlbnRHcm91cDsKKyAgICB9
LAorCiAgICAgX3RvZ2dsZUJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IHRoaXMudmlzaWJsZSA9ICF0aGlzLnZpc2libGU7CkBAIC00NDMsMTkgKzQ3MCwyMCBAQCBXZWJJ
bnNwZWN0b3IuQ29uc29sZS5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5Db25zb2xlLnBy
b3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGU7CiAKLVdlYklu
c3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWwsIGxpbmUsIHVy
bCkKK1dlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZSA9IGZ1bmN0aW9uKHNvdXJjZSwgbGV2ZWws
IGxpbmUsIHVybCwgZ3JvdXBMZXZlbCkKIHsKICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTsKICAg
ICB0aGlzLmxldmVsID0gbGV2ZWw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnVy
bCA9IHVybDsKKyAgICB0aGlzLmdyb3VwTGV2ZWwgPSBncm91cExldmVsOwogCiAgICAgLy8gVGhp
cyBfZm9ybWF0IGNhbGwgcGFzc2VzIGluIHRydWUgZm9yIHRoZSBwbGFpblRleHQgYXJndW1lbnQu
IFRoZSByZXN1bHQncyB0ZXh0Q29udGVudCBpcwogICAgIC8vIHVzZWQgZm9yIGlubGluZSBtZXNz
YWdlIGJ1YmJsZXMgaW4gU291cmNlRnJhbWVzLCBvciBvdGhlciBwbGFpbi10ZXh0IHJlcHJlc2Vu
dGF0aW9ucy4KLSAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBl
LnNsaWNlLmNhbGwoYXJndW1lbnRzLCA0KSwgdHJ1ZSkudGV4dENvbnRlbnQ7CisgICAgdGhpcy5t
ZXNzYWdlID0gdGhpcy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50
cywgNSksIHRydWUpLnRleHRDb250ZW50OwogCiAgICAgLy8gVGhlIGZvcm1hdGVkTWVzc2FnZSBw
cm9wZXJ0eSBpcyB1c2VkIGZvciB0aGUgcmljaCBhbmQgaW50ZXJhY3RpdmUgY29uc29sZS4KLSAg
ICB0aGlzLmZvcm1hdHRlZE1lc3NhZ2UgPSB0aGlzLl9mb3JtYXQoQXJyYXkucHJvdG90eXBlLnNs
aWNlLmNhbGwoYXJndW1lbnRzLCA0KSk7CisgICAgdGhpcy5mb3JtYXR0ZWRNZXNzYWdlID0gdGhp
cy5fZm9ybWF0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgNSkpOwogfQog
CiBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gewpAQCAtNTQxLDYgKzU2
OSw5IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5wcm90b3R5cGUgPSAKICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5FcnJvcjoKICAgICAgICAgICAgICAgICBlbGVtZW50LmFkZFN0eWxl
Q2xhc3MoImNvbnNvbGUtZXJyb3ItbGV2ZWwiKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLk1lc3NhZ2VMZXZlbC5H
cm91cFRpdGxlOgorICAgICAgICAgICAgICAgIGVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY29uc29s
ZS1ncm91cC10aXRsZS1sZXZlbCIpOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIG1lc3NhZ2VU
ZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKQEAgLTYwNSw2ICs2
MzYsOSBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UucHJvdG90eXBlID0gCiAgICAgICAg
ICAgICBjYXNlIFdlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5NZXNzYWdlTGV2ZWwuRXJyb3I6
CiAgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiRXJyb3IiOwogICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgY2FzZSBXZWJJbnNwZWN0b3IuQ29uc29sZU1lc3NhZ2UuTWVz
c2FnZUxldmVsLkdyb3VwVGl0bGU6CisgICAgICAgICAgICAgICAgbGV2ZWxTdHJpbmcgPSAiR3Jv
dXBUaXRsZSI7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAogICAgICAgICBy
ZXR1cm4gc291cmNlU3RyaW5nICsgIiAiICsgbGV2ZWxTdHJpbmcgKyAiOiAiICsgdGhpcy5mb3Jt
YXR0ZWRNZXNzYWdlLnRleHRDb250ZW50ICsgIlxuIiArIHRoaXMudXJsICsgIiBsaW5lICIgKyB0
aGlzLmxpbmU7CkBAIC02MjQsNyArNjU4LDggQEAgV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdl
Lk1lc3NhZ2VMZXZlbAogICAgIFRpcDogMCwKICAgICBMb2c6IDEsCiAgICAgV2FybmluZzogMiwK
LSAgICBFcnJvcjogMworICAgIEVycm9yOiAzLAorICAgIEdyb3VwVGl0bGU6IDQKIH0KIAogV2Vi
SW5zcGVjdG9yLkNvbnNvbGVDb21tYW5kID0gZnVuY3Rpb24oY29tbWFuZCwgcmVzdWx0LCBmb3Jt
YXR0ZWRSZXN1bHRFbGVtZW50LCBsZXZlbCkKQEAgLTY2OSwzICs3MDQsNDkgQEAgV2ViSW5zcGVj
dG9yLkNvbnNvbGVDb21tYW5kLnByb3RvdHlwZSA9IAogICAgICAgICByZXR1cm4gZWxlbWVudDsK
ICAgICB9CiB9CisKK1dlYkluc3BlY3Rvci5Db25zb2xlR3JvdXAgPSBmdW5jdGlvbihwYXJlbnRH
cm91cCwgbGV2ZWwpCit7CisgICAgdGhpcy5wYXJlbnRHcm91cCA9IHBhcmVudEdyb3VwOworICAg
IHRoaXMubGV2ZWwgPSBsZXZlbDsKKworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgZWxlbWVudC5jbGFzc05hbWUgPSAiY29uc29sZS1ncm91cCI7
CisgICAgZWxlbWVudC5ncm91cCA9IHRoaXM7CisgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsK
KworICAgIHZhciBtZXNzYWdlc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICBtZXNzYWdlc0VsZW1lbnQuY2xhc3NOYW1lID0gImNvbnNvbGUtZ3JvdXAtbWVzc2Fn
ZXMiOworICAgIGVsZW1lbnQuYXBwZW5kQ2hpbGQobWVzc2FnZXNFbGVtZW50KTsKKyAgICB0aGlz
Lm1lc3NhZ2VzRWxlbWVudCA9IG1lc3NhZ2VzRWxlbWVudDsKK30KKworV2ViSW5zcGVjdG9yLkNv
bnNvbGVHcm91cC5wcm90b3R5cGUgPSB7CisgICAgYWRkTWVzc2FnZTogZnVuY3Rpb24obXNnKQor
ICAgIHsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBtc2cudG9NZXNzYWdlRWxlbWVudCgpOworICAg
ICAgICAKKyAgICAgICAgaWYgKG1zZy5sZXZlbCA9PT0gV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNz
YWdlLk1lc3NhZ2VMZXZlbC5Hcm91cFRpdGxlKSB7CisgICAgICAgICAgICB0aGlzLm1lc3NhZ2Vz
RWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50LCB0aGlzLm1lc3NhZ2VzRWxl
bWVudCk7CisgICAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhp
cy5fdGl0bGVDbGlja2VkLmJpbmQodGhpcyksIHRydWUpOworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgIHRoaXMubWVzc2FnZXNFbGVtZW50LmFwcGVuZENoaWxkKGVsZW1lbnQpOworICAgIH0s
CisgICAgCisgICAgX3RpdGxlQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAg
ICB2YXIgZ3JvdXBUaXRsZUVsZW1lbnQgPSBldmVudC50YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2Vs
ZldpdGhDbGFzcygiY29uc29sZS1ncm91cC10aXRsZS1sZXZlbCIpOworICAgICAgICBpZiAoZ3Jv
dXBUaXRsZUVsZW1lbnQpIHsKKyAgICAgICAgICAgIHZhciBncm91cEVsZW1lbnQgPSBncm91cFRp
dGxlRWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJjb25zb2xlLWdyb3VwIik7
CisgICAgICAgICAgICBpZiAoZ3JvdXBFbGVtZW50KQorICAgICAgICAgICAgICAgIGlmIChncm91
cEVsZW1lbnQuaGFzU3R5bGVDbGFzcygiY29sbGFwc2VkIikpCisgICAgICAgICAgICAgICAgICAg
IGdyb3VwRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5hZGRTdHlsZUNsYXNz
KCJjb2xsYXBzZWQiKTsKKyAgICAgICAgICAgIGdyb3VwVGl0bGVFbGVtZW50LnNjcm9sbEludG9W
aWV3SWZOZWVkZWQodHJ1ZSk7CisgICAgICAgIH0KKworICAgICAgICBldmVudC5zdG9wUHJvcGFn
YXRpb24oKTsKKyAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAgICB9Cit9CkluZGV4
OiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCShyZXZpc2lvbiAzNTIwNykKKysrIFdl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcwkod29ya2luZyBjb3B5KQpAQCAtNDI1
LDYgKzQyNSwyMyBAQCBib2R5LmNvbnNvbGUtdmlzaWJsZSAjY29uc29sZSB7CiAgICAgZGlzcGxh
eTogYmxvY2s7CiB9CiAKKy5jb25zb2xlLWdyb3VwIC5jb25zb2xlLWdyb3VwID4gLmNvbnNvbGUt
Z3JvdXAtbWVzc2FnZXMgeworICAgIG1hcmdpbi1sZWZ0OiAxNnB4OworfQorCisuY29uc29sZS1n
cm91cC10aXRsZS1sZXZlbCB7CisgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKEltYWdlcy9kaXNj
bG9zdXJlVHJpYW5nbGVTbWFsbERvd24ucG5nKTsKKyAgICBmb250LXdlaWdodDogYm9sZDsKK30K
KworLmNvbnNvbGUtZ3JvdXAuY29sbGFwc2VkIC5jb25zb2xlLWdyb3VwLXRpdGxlLWxldmVsIHsK
KyAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoSW1hZ2VzL2Rpc2Nsb3N1cmVUcmlhbmdsZVNtYWxs
UmlnaHQucG5nKTsKK30KKworLmNvbnNvbGUtZ3JvdXAuY29sbGFwc2VkID4gLmNvbnNvbGUtZ3Jv
dXAtbWVzc2FnZXMgeworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKICNjb25zb2xlLXN0YXR1cy1i
YXIgewogICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICBib3R0b206IDA7CkluZGV4OiBXZWJD
b3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcwkocmV2aXNpb24gMzUyMDcpCisrKyBXZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcwkod29ya2luZyBjb3B5KQpAQCAtNzk3LDYgKzc5Nywx
NiBAQCBXZWJJbnNwZWN0b3IuYWRkTWVzc2FnZVRvQ29uc29sZSA9IGZ1bmN0CiAgICAgdGhpcy5j
b25zb2xlLmFkZE1lc3NhZ2UobXNnKTsKIH0KIAorV2ViSW5zcGVjdG9yLnN0YXJ0R3JvdXBJbkNv
bnNvbGUgPSBmdW5jdGlvbigpCit7CisgICAgdGhpcy5jb25zb2xlLnN0YXJ0R3JvdXAoKTsKK30K
KworV2ViSW5zcGVjdG9yLmVuZEdyb3VwSW5Db25zb2xlID0gZnVuY3Rpb24oKQoreworICAgIHRo
aXMuY29uc29sZS5lbmRHcm91cCgpOworfQorCiBXZWJJbnNwZWN0b3IuYWRkUHJvZmlsZSA9IGZ1
bmN0aW9uKHByb2ZpbGUpCiB7CiAgICAgdGhpcy5wYW5lbHMucHJvZmlsZXMuYWRkUHJvZmlsZShw
cm9maWxlKTsK
</data>
<flag name="review"
          id="9903"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>