<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://jogamp.org/bugzilla/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.2"
          urlbase="https://jogamp.org/bugzilla/"
          
          maintainer="sgothel@jausoft.com"
>

    <bug>
          <bug_id>439</bug_id>
          
          <creation_ts>2010-11-26 05:28:57 +0100</creation_ts>
          <short_desc>GLCanvas flickers and displays its background or its scene alternately</short_desc>
          <delta_ts>2010-12-17 05:33:27 +0100</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>JogAmp</classification>
          <product>Jogl</product>
          <component>awt</component>
          <version>2</version>
          <rep_platform>pc_x86_32</rep_platform>
          <op_sys>windows</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Cyrille">cdefranoux</reporter>
          <assigned_to name="Sven Gothel">sgothel</assigned_to>
          
          
          <cf_type>---</cf_type>
          <cf_scm_refs>86c164950b0a0d351fc8af3884187b10201b6237</cf_scm_refs>
          <cf_workaround>---</cf_workaround>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>661</commentid>
    <comment_count>0</comment_count>
      <attachid>180</attachid>
    <who name="Cyrille">cdefranoux</who>
    <bug_when>2010-11-26 05:28:57 +0100</bug_when>
    <thetext>Created attachment 180
Runtime Version Check output, ran for all entries that appear in the test.bat script.

Without animator, GLCanvas does not constantly display its OpenGL scene. It displays either its component background or the scene.

To reproduce the bug, please run the test application below. When the frame is being resized by dragging its edge over, the canvas flickers between yellow and red (resp. its background and its scene). When the resize operation ends, it randomly leaves the canvas in either configuration (yellow or red).

I only reproduced that bug on a Win32 platform but I did not try any other platform. I can&apos;t objectively assume it but it may be reproducable on every platform as well.

Sample code to reproduce the bug:
package GLSLTest;

import java.awt.Color;
import java.awt.Component;
import java.awt.Frame;

import javax.media.opengl.GL;
import javax.media.opengl.GL2;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCapabilities;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.GLProfile;
import javax.media.opengl.awt.GLCanvas;
import javax.swing.BoxLayout;

public class Main
{
        static CanvasListener listener = new CanvasListener();

        public static void main(String[] args)
        {
                GLProfile.initSingleton();

                GLProfile profile = GLProfile.getMaxFixedFunc();
                GLCapabilities caps = new GLCapabilities(profile);
                GLCanvas canvas = new GLCanvas(caps);
                canvas.setBackground(Color.yellow);
                canvas.addGLEventListener(listener);

                Frame topLevelFrame = new Frame();
                topLevelFrame.setLayout(new BoxLayout(topLevelFrame, BoxLayout.Y_AXIS));
                topLevelFrame.add(canvas);
                topLevelFrame.setSize(400, 300);
                topLevelFrame.setVisible(true);

                // Animator animator = new Animator(canvas);
                // animator.start();

                canvas.display();
        }
}

class CanvasListener implements GLEventListener
{
        @Override
        public void display(GLAutoDrawable arg0)
        {
                GL2 gl = arg0.getGL().getGL2();
                gl.glClearColor(1.0f, 0.0f, 0.0f, 0.5f);
                gl.glClear(GL.GL_COLOR_BUFFER_BIT);

                System.out.println(&quot;display&quot;);
        }

        @Override
        public void dispose(GLAutoDrawable arg0)
        {
        }

        @Override
        public void init(GLAutoDrawable arg0)
        {
                Component canvas = (Component) arg0;
                System.out.println(canvas.getSize().toString());
        }

        @Override
        public void reshape(GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg4)
        {
        }
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671</commentid>
    <comment_count>1</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2010-11-27 00:00:27 +0100</bug_when>
    <thetext>the JOGL version in your test log is
  ce3508aa66b9a40974cce2988094d0edc68b30f4
tag is v2.0-rc1 ie the signed rc.

But your code would not compile with it, since it uses a GLProfile API
before 
  774138544e1eec3330309ad682fa05154a07ab8d 
  2010-10-14 21:26:43

The GLProfile API has changed with that commit, well, I fixed that.

+++

Thanks to your report, I have revalidated the Java2D and AWT properties,
please check JOGL: 86c164950b0a0d351fc8af3884187b10201b6237,
especially the added doc:

http://jogamp.org/git/?p=jogl.git;a=blob;f=src/jogl/classes/javax/media/opengl/awt/GLCanvas.java;h=b230a2b6aa529aa69e8f5f5f47dcd6da2c585edb;hb=86c164950b0a0d351fc8af3884187b10201b6237#l79

Hope all of this helps, thank you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>672</commentid>
    <comment_count>2</comment_count>
      <attachid>183</attachid>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2010-11-27 00:01:33 +0100</bug_when>
    <thetext>Created attachment 183
Update Main.java to work properly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>673</commentid>
    <comment_count>3</comment_count>
    <who name="Cyrille">cdefranoux</who>
    <bug_when>2010-11-27 02:56:07 +0100</bug_when>
    <thetext>&gt; The GLProfile API has changed with that commit, well, I fixed that.
You&apos;re right. I really tested the code against Jogl rc1 but I think I put the wrong code in my bug report. Sorry for the confusion.

&gt; Thanks to your report, I have revalidated the Java2D and AWT properties,
&gt; please check JOGL: 86c164950b0a0d351fc8af3884187b10201b6237,
&gt; especially the added doc:
&gt; 
&gt; http://jogamp.org/git/?p=jogl.git;a=blob;f=src/jogl/classes/javax/media/opengl/awt/GLCanvas.java;h=b230a2b6aa529aa69e8f5f5f47dcd6da2c585edb;hb=86c164950b0a0d351fc8af3884187b10201b6237#l79
&gt; 
&gt; Hope all of this helps, thank you.

Great, thanks for this fix. I&apos;ll have a look at it as soon as I can.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728</commentid>
    <comment_count>4</comment_count>
    <who name="Cyrille">cdefranoux</who>
    <bug_when>2010-12-17 05:33:27 +0100</bug_when>
    <thetext>At last, I could take a few minutes to test your fix. I ran the test with the autobuild of the 12/16/2010 (build 259). And... it runs perfectly!
Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>180</attachid>
            <date>2010-11-26 05:28:57 +0100</date>
            <delta_ts>2010-11-26 05:28:57 +0100</delta_ts>
            <desc>Runtime Version Check output, ran for all entries that appear in the test.bat script.</desc>
            <filename>test.log</filename>
            <type>application/octet-stream</type>
            <size>12619</size>
            <attacher name="Cyrille">cdefranoux</attacher>
            
              <data encoding="base64">UGxhdGZvcm06IFdpbmRvd3MgWFAgNS4yIChvcyksIHg4NiAoYXJjaCkgNCBjb3Jlcw0KUGxhdGZv
cm06IGxpdHRsZUVuZGlhbiB0cnVlLCAzMkJpdCB0cnVlLCBhLXB0ciBiaXQtc2l6ZSAzMg0KUGxh
dGZvcm06IEphdmEgMS42LjBfMTYsIEphdmEgSG90U3BvdChUTSkgQ2xpZW50IFZNLCBTdW4gTWlj
cm9zeXN0ZW1zIEluYy4sIGh0dHA6Ly9qYXZhLnN1bi5jb20vLCBpcyBKYXZhU0U6IHRydWUNCg0K
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClBhY2thZ2U6IGNv
bS5qb2dhbXAuY29tbW9uDQpFeHRlbnNpb24gTmFtZTogY29tLmpvZ2FtcC5jb21tb24NClNwZWNp
ZmljYXRpb24gVGl0bGU6IEdsdWVHZW4gSmF2YSBCaW5kaW5ncyBHZW5lcmF0b3INClNwZWNpZmlj
YXRpb24gVmVuZG9yOiBKb2dBbXAgQ29tbXVuaXR5DQpTcGVjaWZpY2F0aW9uIFZlcnNpb246IDIu
MA0KSW1wbGVtZW50YXRpb24gVGl0bGU6IEdsdWVHZW4gUnVuLVRpbWUNCkltcGxlbWVudGF0aW9u
IFZlbmRvcjogSm9nQW1wIENvbW11bml0eQ0KSW1wbGVtZW50YXRpb24gVmVuZG9yIElEOiBjb20u
am9nYW1wDQpJbXBsZW1lbnRhdGlvbiBVUkw6IGh0dHA6Ly9qb2dhbXAub3JnLw0KSW1wbGVtZW50
YXRpb24gVmVyc2lvbjogMi4wLWIyMTctMjAxMDExMjMNCkltcGxlbWVudGF0aW9uIEJyYW5jaDog
bWFzdGVyDQpJbXBsZW1lbnRhdGlvbiBDb21taXQ6IDI5ZTEzYzZlNDVkNmRiNzVkN2M2MzIyYWMw
Zjg4YTMwYzIwMGNiNzINCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQoNClBsYXRmb3JtOiBXaW5kb3dzIFhQIDUuMiAob3MpLCB4ODYgKGFyY2gpIDQgY29yZXMN
ClBsYXRmb3JtOiBsaXR0bGVFbmRpYW4gdHJ1ZSwgMzJCaXQgdHJ1ZSwgYS1wdHIgYml0LXNpemUg
MzINClBsYXRmb3JtOiBKYXZhIDEuNi4wXzE2LCBKYXZhIEhvdFNwb3QoVE0pIENsaWVudCBWTSwg
U3VuIE1pY3Jvc3lzdGVtcyBJbmMuLCBodHRwOi8vamF2YS5zdW4uY29tLywgaXMgSmF2YVNFOiB0
cnVlDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpQYWNr
YWdlOiBqYXZheC5tZWRpYS5uYXRpdmV3aW5kb3cNCkV4dGVuc2lvbiBOYW1lOiBqYXZheC5tZWRp
YS5uYXRpdmV3aW5kb3cNClNwZWNpZmljYXRpb24gVGl0bGU6IE5hdGl2ZSBXaW5kb3cgSW50ZXJm
YWNlIEFQSSBTcGVjaWZpY2F0aW9uDQpTcGVjaWZpY2F0aW9uIFZlbmRvcjogSm9nQW1wIENvbW11
bml0eQ0KU3BlY2lmaWNhdGlvbiBWZXJzaW9uOiAyLjANCkltcGxlbWVudGF0aW9uIFRpdGxlOiBO
YXRpdmUgV2luZG93IEludGVyZmFjZSBSdW50aW1lIEVudmlyb25tZW50DQpJbXBsZW1lbnRhdGlv
biBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNCkltcGxlbWVudGF0aW9uIFZlbmRvciBJRDogY29t
LmpvZ2FtcA0KSW1wbGVtZW50YXRpb24gVVJMOiBodHRwOi8vam9nYW1wLm9yZy8NCkltcGxlbWVu
dGF0aW9uIFZlcnNpb246IDIuMC1iMjI5LTIwMTAxMTIzDQpJbXBsZW1lbnRhdGlvbiBCcmFuY2g6
IG1hc3Rlcg0KSW1wbGVtZW50YXRpb24gQ29tbWl0OiBjZTM1MDhhYTY2YjlhNDA5NzRjY2UyOTg4
MDk0ZDBlZGM2OGIzMGY0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQ0KDQpQbGF0Zm9ybTogV2luZG93cyBYUCA1LjIgKG9zKSwgeDg2IChhcmNoKSA0IGNvcmVz
DQpQbGF0Zm9ybTogbGl0dGxlRW5kaWFuIHRydWUsIDMyQml0IHRydWUsIGEtcHRyIGJpdC1zaXpl
IDMyDQpQbGF0Zm9ybTogSmF2YSAxLjYuMF8xNiwgSmF2YSBIb3RTcG90KFRNKSBDbGllbnQgVk0s
IFN1biBNaWNyb3N5c3RlbXMgSW5jLiwgaHR0cDovL2phdmEuc3VuLmNvbS8sIGlzIEphdmFTRTog
dHJ1ZQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KUGFj
a2FnZTogamF2YXgubWVkaWEub3BlbmdsDQpFeHRlbnNpb24gTmFtZTogamF2YXgubWVkaWEub3Bl
bmdsDQpTcGVjaWZpY2F0aW9uIFRpdGxlOiBKYXZhIEJpbmRpbmdzIGZvciBPcGVuR0wgQVBJIFNw
ZWNpZmljYXRpb24NClNwZWNpZmljYXRpb24gVmVuZG9yOiBKb2dBbXAgQ29tbXVuaXR5DQpTcGVj
aWZpY2F0aW9uIFZlcnNpb246IDIuMA0KSW1wbGVtZW50YXRpb24gVGl0bGU6IEphdmEgQmluZGlu
Z3MgZm9yIE9wZW5HTCBSdW50aW1lIEVudmlyb25tZW50DQpJbXBsZW1lbnRhdGlvbiBWZW5kb3I6
IEpvZ0FtcCBDb21tdW5pdHkNCkltcGxlbWVudGF0aW9uIFZlbmRvciBJRDogY29tLmpvZ2FtcA0K
SW1wbGVtZW50YXRpb24gVVJMOiBodHRwOi8vam9nYW1wLm9yZy8NCkltcGxlbWVudGF0aW9uIFZl
cnNpb246IDIuMC1iMjI5LTIwMTAxMTIzDQpJbXBsZW1lbnRhdGlvbiBCcmFuY2g6IG1hc3Rlcg0K
SW1wbGVtZW50YXRpb24gQ29tbWl0OiBjZTM1MDhhYTY2YjlhNDA5NzRjY2UyOTg4MDk0ZDBlZGM2
OGIzMGY0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpQ
bGF0Zm9ybTogV2luZG93cyBYUCA1LjIgKG9zKSwgeDg2IChhcmNoKSA0IGNvcmVzDQpQbGF0Zm9y
bTogbGl0dGxlRW5kaWFuIHRydWUsIDMyQml0IHRydWUsIGEtcHRyIGJpdC1zaXplIDMyDQpQbGF0
Zm9ybTogSmF2YSAxLjYuMF8xNiwgSmF2YSBIb3RTcG90KFRNKSBDbGllbnQgVk0sIFN1biBNaWNy
b3N5c3RlbXMgSW5jLiwgaHR0cDovL2phdmEuc3VuLmNvbS8sIGlzIEphdmFTRTogdHJ1ZQ0KDQot
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KUGFja2FnZTogY29t
LmpvZ2FtcC5uZXd0DQpFeHRlbnNpb24gTmFtZTogY29tLmpvZ2FtcC5uZXd0DQpTcGVjaWZpY2F0
aW9uIFRpdGxlOiBORVdUIEFQSSBTcGVjaWZpY2F0aW9uDQpTcGVjaWZpY2F0aW9uIFZlbmRvcjog
Sm9nQW1wIENvbW11bml0eQ0KU3BlY2lmaWNhdGlvbiBWZXJzaW9uOiAyLjANCkltcGxlbWVudGF0
aW9uIFRpdGxlOiBORVdUIFJ1bnRpbWUgRW52aXJvbm1lbnQNCkltcGxlbWVudGF0aW9uIFZlbmRv
cjogSm9nQW1wIENvbW11bml0eQ0KSW1wbGVtZW50YXRpb24gVmVuZG9yIElEOiBjb20uam9nYW1w
DQpJbXBsZW1lbnRhdGlvbiBVUkw6IGh0dHA6Ly9qb2dhbXAub3JnLw0KSW1wbGVtZW50YXRpb24g
VmVyc2lvbjogMi4wLWIyMjktMjAxMDExMjMNCkltcGxlbWVudGF0aW9uIEJyYW5jaDogbWFzdGVy
DQpJbXBsZW1lbnRhdGlvbiBDb21taXQ6IGNlMzUwOGFhNjZiOWE0MDk3NGNjZTI5ODgwOTRkMGVk
YzY4YjMwZjQNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoN
CmphdmEubGFuZy5Ob0NsYXNzRGVmRm91bmRFcnJvcjogY29tL2pvZ2FtcC9uZXd0L29wZW5nbC9H
TENhbnZhcw0KQ2F1c2VkIGJ5OiBqYXZhLmxhbmcuQ2xhc3NOb3RGb3VuZEV4Y2VwdGlvbjogY29t
LmpvZ2FtcC5uZXd0Lm9wZW5nbC5HTENhbnZhcw0KCWF0IGphdmEubmV0LlVSTENsYXNzTG9hZGVy
JDEucnVuKFVSTENsYXNzTG9hZGVyLmphdmE6MjAwKQ0KCWF0IGphdmEuc2VjdXJpdHkuQWNjZXNz
Q29udHJvbGxlci5kb1ByaXZpbGVnZWQoTmF0aXZlIE1ldGhvZCkNCglhdCBqYXZhLm5ldC5VUkxD
bGFzc0xvYWRlci5maW5kQ2xhc3MoVVJMQ2xhc3NMb2FkZXIuamF2YToxODgpDQoJYXQgamF2YS5s
YW5nLkNsYXNzTG9hZGVyLmxvYWRDbGFzcyhDbGFzc0xvYWRlci5qYXZhOjMwNykNCglhdCBzdW4u
bWlzYy5MYXVuY2hlciRBcHBDbGFzc0xvYWRlci5sb2FkQ2xhc3MoTGF1bmNoZXIuamF2YTozMDEp
DQoJYXQgamF2YS5sYW5nLkNsYXNzTG9hZGVyLmxvYWRDbGFzcyhDbGFzc0xvYWRlci5qYXZhOjI1
MikNCglhdCBqYXZhLmxhbmcuQ2xhc3NMb2FkZXIubG9hZENsYXNzSW50ZXJuYWwoQ2xhc3NMb2Fk
ZXIuamF2YTozMjApDQpDb3VsZCBub3QgZmluZCB0aGUgbWFpbiBjbGFzczogY29tLmpvZ2FtcC5u
ZXd0Lm9wZW5nbC5HTENhbnZhcy4gIFByb2dyYW0gd2lsbCBleGl0Lg0KRXhjZXB0aW9uIGluIHRo
cmVhZCAibWFpbiIgUGxhdGZvcm06IFdpbmRvd3MgWFAgNS4yIChvcyksIHg4NiAoYXJjaCkgNCBj
b3Jlcw0KUGxhdGZvcm06IGxpdHRsZUVuZGlhbiB0cnVlLCAzMkJpdCB0cnVlLCBhLXB0ciBiaXQt
c2l6ZSAzMg0KUGxhdGZvcm06IEphdmEgMS42LjBfMTYsIEphdmEgSG90U3BvdChUTSkgQ2xpZW50
IFZNLCBTdW4gTWljcm9zeXN0ZW1zIEluYy4sIGh0dHA6Ly9qYXZhLnN1bi5jb20vLCBpcyBKYXZh
U0U6IHRydWUNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N
ClBhY2thZ2U6IGNvbS5qb2dhbXAuY29tbW9uDQpFeHRlbnNpb24gTmFtZTogY29tLmpvZ2FtcC5j
b21tb24NClNwZWNpZmljYXRpb24gVGl0bGU6IEdsdWVHZW4gSmF2YSBCaW5kaW5ncyBHZW5lcmF0
b3INClNwZWNpZmljYXRpb24gVmVuZG9yOiBKb2dBbXAgQ29tbXVuaXR5DQpTcGVjaWZpY2F0aW9u
IFZlcnNpb246IDIuMA0KSW1wbGVtZW50YXRpb24gVGl0bGU6IEdsdWVHZW4gUnVuLVRpbWUNCklt
cGxlbWVudGF0aW9uIFZlbmRvcjogSm9nQW1wIENvbW11bml0eQ0KSW1wbGVtZW50YXRpb24gVmVu
ZG9yIElEOiBjb20uam9nYW1wDQpJbXBsZW1lbnRhdGlvbiBVUkw6IGh0dHA6Ly9qb2dhbXAub3Jn
Lw0KSW1wbGVtZW50YXRpb24gVmVyc2lvbjogMi4wLWIyMTctMjAxMDExMjMNCkltcGxlbWVudGF0
aW9uIEJyYW5jaDogbWFzdGVyDQpJbXBsZW1lbnRhdGlvbiBDb21taXQ6IDI5ZTEzYzZlNDVkNmRi
NzVkN2M2MzIyYWMwZjg4YTMwYzIwMGNiNzINCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQpQYWNrYWdlOiBqYXZheC5tZWRpYS5uYXRpdmV3aW5kb3cNCkV4dGVuc2lvbiBOYW1l
OiBqYXZheC5tZWRpYS5uYXRpdmV3aW5kb3cNClNwZWNpZmljYXRpb24gVGl0bGU6IE5hdGl2ZSBX
aW5kb3cgSW50ZXJmYWNlIEFQSSBTcGVjaWZpY2F0aW9uDQpTcGVjaWZpY2F0aW9uIFZlbmRvcjog
Sm9nQW1wIENvbW11bml0eQ0KU3BlY2lmaWNhdGlvbiBWZXJzaW9uOiAyLjANCkltcGxlbWVudGF0
aW9uIFRpdGxlOiBOYXRpdmUgV2luZG93IEludGVyZmFjZSBSdW50aW1lIEVudmlyb25tZW50DQpJ
bXBsZW1lbnRhdGlvbiBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNCkltcGxlbWVudGF0aW9uIFZl
bmRvciBJRDogY29tLmpvZ2FtcA0KSW1wbGVtZW50YXRpb24gVVJMOiBodHRwOi8vam9nYW1wLm9y
Zy8NCkltcGxlbWVudGF0aW9uIFZlcnNpb246IDIuMC1iMjI5LTIwMTAxMTIzDQpJbXBsZW1lbnRh
dGlvbiBCcmFuY2g6IG1hc3Rlcg0KSW1wbGVtZW50YXRpb24gQ29tbWl0OiBjZTM1MDhhYTY2Yjlh
NDA5NzRjY2UyOTg4MDk0ZDBlZGM2OGIzMGY0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQ0KUGFja2FnZTogamF2YXgubWVkaWEub3BlbmdsDQpFeHRlbnNpb24gTmFtZTogamF2
YXgubWVkaWEub3BlbmdsDQpTcGVjaWZpY2F0aW9uIFRpdGxlOiBKYXZhIEJpbmRpbmdzIGZvciBP
cGVuR0wgQVBJIFNwZWNpZmljYXRpb24NClNwZWNpZmljYXRpb24gVmVuZG9yOiBKb2dBbXAgQ29t
bXVuaXR5DQpTcGVjaWZpY2F0aW9uIFZlcnNpb246IDIuMA0KSW1wbGVtZW50YXRpb24gVGl0bGU6
IEphdmEgQmluZGluZ3MgZm9yIE9wZW5HTCBSdW50aW1lIEVudmlyb25tZW50DQpJbXBsZW1lbnRh
dGlvbiBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNCkltcGxlbWVudGF0aW9uIFZlbmRvciBJRDog
Y29tLmpvZ2FtcA0KSW1wbGVtZW50YXRpb24gVVJMOiBodHRwOi8vam9nYW1wLm9yZy8NCkltcGxl
bWVudGF0aW9uIFZlcnNpb246IDIuMC1iMjI5LTIwMTAxMTIzDQpJbXBsZW1lbnRhdGlvbiBCcmFu
Y2g6IG1hc3Rlcg0KSW1wbGVtZW50YXRpb24gQ29tbWl0OiBjZTM1MDhhYTY2YjlhNDA5NzRjY2Uy
OTg4MDk0ZDBlZGM2OGIzMGY0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClBh
Y2thZ2U6IGNvbS5qb2dhbXAubmV3dA0KRXh0ZW5zaW9uIE5hbWU6IGNvbS5qb2dhbXAubmV3dA0K
U3BlY2lmaWNhdGlvbiBUaXRsZTogTkVXVCBBUEkgU3BlY2lmaWNhdGlvbg0KU3BlY2lmaWNhdGlv
biBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNClNwZWNpZmljYXRpb24gVmVyc2lvbjogMi4wDQpJ
bXBsZW1lbnRhdGlvbiBUaXRsZTogTkVXVCBSdW50aW1lIEVudmlyb25tZW50DQpJbXBsZW1lbnRh
dGlvbiBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNCkltcGxlbWVudGF0aW9uIFZlbmRvciBJRDog
Y29tLmpvZ2FtcA0KSW1wbGVtZW50YXRpb24gVVJMOiBodHRwOi8vam9nYW1wLm9yZy8NCkltcGxl
bWVudGF0aW9uIFZlcnNpb246IDIuMC1iMjI5LTIwMTAxMTIzDQpJbXBsZW1lbnRhdGlvbiBCcmFu
Y2g6IG1hc3Rlcg0KSW1wbGVtZW50YXRpb24gQ29tbWl0OiBjZTM1MDhhYTY2YjlhNDA5NzRjY2Uy
OTg4MDk0ZDBlZGM2OGIzMGY0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQ0KDQpEZXRlY3RlZCBzY3JlZW4gc2l6ZSAxOTIweDEyMDANCi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpQYWNrYWdlOiBqYXZheC5tZWRpYS5vcGVu
Z2wNCkV4dGVuc2lvbiBOYW1lOiBqYXZheC5tZWRpYS5vcGVuZ2wNClNwZWNpZmljYXRpb24gVGl0
bGU6IEphdmEgQmluZGluZ3MgZm9yIE9wZW5HTCBBUEkgU3BlY2lmaWNhdGlvbg0KU3BlY2lmaWNh
dGlvbiBWZW5kb3I6IEpvZ0FtcCBDb21tdW5pdHkNClNwZWNpZmljYXRpb24gVmVyc2lvbjogMi4w
DQpJbXBsZW1lbnRhdGlvbiBUaXRsZTogSmF2YSBCaW5kaW5ncyBmb3IgT3BlbkdMIFJ1bnRpbWUg
RW52aXJvbm1lbnQNCkltcGxlbWVudGF0aW9uIFZlbmRvcjogSm9nQW1wIENvbW11bml0eQ0KSW1w
bGVtZW50YXRpb24gVmVuZG9yIElEOiBjb20uam9nYW1wDQpJbXBsZW1lbnRhdGlvbiBVUkw6IGh0
dHA6Ly9qb2dhbXAub3JnLw0KSW1wbGVtZW50YXRpb24gVmVyc2lvbjogMi4wLWIyMjktMjAxMDEx
MjMNCkltcGxlbWVudGF0aW9uIEJyYW5jaDogbWFzdGVyDQpJbXBsZW1lbnRhdGlvbiBDb21taXQ6
IGNlMzUwOGFhNjZiOWE0MDk3NGNjZTI5ODgwOTRkMGVkYzY4YjMwZjQNCi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpEZWZhdWx0IERlc2t0b3AgZGVjb246IEdM
QXZhaWxhYmlsaXR5W05hdGl2ZVtHTDRiYyBmYWxzZSwgR0w0IGZhbHNlLCBHTDNiYyBmYWxzZSwg
R0wzIGZhbHNlLCBHTDIgdHJ1ZVsxLjUgKGNvbXBhdGliaWxpdHkgcHJvZmlsZSwgYW55LCBvbGQp
XSwgR0wyRVMxIHRydWUsIEdMRVMxIGZhbHNlLCBHTDJFUzIgdHJ1ZSwgR0xFUzIgZmFsc2VdLCBQ
cm9maWxlc1tHTFByb2ZpbGVbR0wyRVMyL0dMMl0sIEdMUHJvZmlsZVtHTDJFUzEvR0wyXSwgR0xQ
cm9maWxlW0dMMi9HTDJdLCBHTFByb2ZpbGVbR0wyL0dMMl0sIEdMUHJvZmlsZVtHTDJHTDMvR0wy
XSwgLCBkZWZhdWx0IEdMUHJvZmlsZVtHTDIvR0wyXV1dDQpEZWZhdWx0IEVHTCBkZWNvbjogR0xB
dmFpbGFiaWxpdHlbTmF0aXZlW0dMNGJjIGZhbHNlLCBHTDQgZmFsc2UsIEdMM2JjIGZhbHNlLCBH
TDMgZmFsc2UsIEdMMiBmYWxzZSwgR0wyRVMxIGZhbHNlLCBHTEVTMSBmYWxzZSwgR0wyRVMyIGZh
bHNlLCBHTEVTMiBmYWxzZV0sIFByb2ZpbGVzWywgZGVmYXVsdCBudWxsXV0NClN3YXAgSW50ZXJ2
YWwgLTENCkdMIFByb2ZpbGUgICAgR0xQcm9maWxlW0dMMi9HTDJdDQpDVFggVkVSU0lPTiAgIDIu
MSAoY29tcGF0aWJpbGl0eSBwcm9maWxlLCBhbnksIG9sZCkgLSAyLjEuMg0KR0wgICAgICAgICAg
ICBjb20uam9nYW1wLm9wZW5nbC5pbXBsLmdsNC5HTDRiY0ltcGxANTQ4M2NkDQpHTF9WRVJTSU9O
ICAgIDIuMS4yDQpHTF9FWFRFTlNJT05TIA0KICAgICAgICAgICAgICBHTF9BUkJfY29sb3JfYnVm
ZmVyX2Zsb2F0IEdMX0FSQl9kZXB0aF90ZXh0dXJlIEdMX0FSQl9kcmF3X2J1ZmZlcnMgR0xfQVJC
X2ZyYWdtZW50X3Byb2dyYW0gR0xfQVJCX2ZyYWdtZW50X3Byb2dyYW1fc2hhZG93IEdMX0FSQl9m
cmFnbWVudF9zaGFkZXIgR0xfQVJCX2hhbGZfZmxvYXRfcGl4ZWwgR0xfQVJCX2ltYWdpbmcgR0xf
QVJCX211bHRpc2FtcGxlIEdMX0FSQl9tdWx0aXRleHR1cmUgR0xfQVJCX29jY2x1c2lvbl9xdWVy
eSBHTF9BUkJfcGl4ZWxfYnVmZmVyX29iamVjdCBHTF9BUkJfcG9pbnRfcGFyYW1ldGVycyBHTF9B
UkJfcG9pbnRfc3ByaXRlIEdMX0FSQl9zaGFkb3cgR0xfQVJCX3NoYWRlcl9vYmplY3RzIEdMX0FS
Ql9zaGFkaW5nX2xhbmd1YWdlXzEwMCBHTF9BUkJfdGV4dHVyZV9ib3JkZXJfY2xhbXAgR0xfQVJC
X3RleHR1cmVfY29tcHJlc3Npb24gR0xfQVJCX3RleHR1cmVfY3ViZV9tYXAgR0xfQVJCX3RleHR1
cmVfZW52X2FkZCBHTF9BUkJfdGV4dHVyZV9lbnZfY29tYmluZSBHTF9BUkJfdGV4dHVyZV9lbnZf
ZG90MyBHTF9BUkJfdGV4dHVyZV9mbG9hdCBHTF9BUkJfdGV4dHVyZV9taXJyb3JlZF9yZXBlYXQg
R0xfQVJCX3RleHR1cmVfbm9uX3Bvd2VyX29mX3R3byBHTF9BUkJfdGV4dHVyZV9yZWN0YW5nbGUg
R0xfQVJCX3RyYW5zcG9zZV9tYXRyaXggR0xfQVJCX3ZlcnRleF9idWZmZXJfb2JqZWN0IEdMX0FS
Ql92ZXJ0ZXhfcHJvZ3JhbSBHTF9BUkJfdmVydGV4X3NoYWRlciBHTF9BUkJfd2luZG93X3BvcyBH
TF9BVElfZHJhd19idWZmZXJzIEdMX0FUSV90ZXh0dXJlX2Zsb2F0IEdMX0FUSV90ZXh0dXJlX21p
cnJvcl9vbmNlIEdMX1MzX3MzdGMgR0xfRVhUX3RleHR1cmVfZW52X2FkZCBHTF9FWFRfYWJnciBH
TF9FWFRfYmdyYSBHTF9FWFRfYmxlbmRfY29sb3IgR0xfRVhUX2JsZW5kX2VxdWF0aW9uX3NlcGFy
YXRlIEdMX0VYVF9ibGVuZF9mdW5jX3NlcGFyYXRlIEdMX0VYVF9ibGVuZF9taW5tYXggR0xfRVhU
X2JsZW5kX3N1YnRyYWN0IEdMX0VYVF9jb21waWxlZF92ZXJ0ZXhfYXJyYXkgR0xfRVhUX0NnX3No
YWRlciBHTF9FWFRfYmluZGFibGVfdW5pZm9ybSBHTF9FWFRfZGVwdGhfYm91bmRzX3Rlc3QgR0xf
RVhUX2RyYXdfYnVmZmVyczIgR0xfRVhUX2RyYXdfaW5zdGFuY2VkIEdMX0VYVF9kcmF3X3Jhbmdl
X2VsZW1lbnRzIEdMX0VYVF9mb2dfY29vcmQgR0xfRVhUX2ZyYW1lYnVmZmVyX2JsaXQgR0xfRVhU
X2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlIEdMX0VYVF9mcmFtZWJ1ZmZlcl9vYmplY3QgR0xfRVhU
WF9mcmFtZWJ1ZmZlcl9taXhlZF9mb3JtYXRzIEdMX0VYVF9mcmFtZWJ1ZmZlcl9zUkdCIEdMX0VY
VF9nZW9tZXRyeV9zaGFkZXI0IEdMX0VYVF9ncHVfcHJvZ3JhbV9wYXJhbWV0ZXJzIEdMX0VYVF9n
cHVfc2hhZGVyNCBHTF9FWFRfbXVsdGlfZHJhd19hcnJheXMgR0xfRVhUX3BhY2tlZF9kZXB0aF9z
dGVuY2lsIEdMX0VYVF9wYWNrZWRfZmxvYXQgR0xfRVhUX3BhY2tlZF9waXhlbHMgR0xfRVhUX3Bp
eGVsX2J1ZmZlcl9vYmplY3QgR0xfRVhUX3BvaW50X3BhcmFtZXRlcnMgR0xfRVhUX3Jlc2NhbGVf
bm9ybWFsIEdMX0VYVF9zZWNvbmRhcnlfY29sb3IgR0xfRVhUX3NlcGFyYXRlX3NwZWN1bGFyX2Nv
bG9yIEdMX0VYVF9zaGFkb3dfZnVuY3MgR0xfRVhUX3N0ZW5jaWxfdHdvX3NpZGUgR0xfRVhUX3N0
ZW5jaWxfd3JhcCBHTF9FWFRfdGV4dHVyZTNEIEdMX0VYVF90ZXh0dXJlX2FycmF5IEdMX0VYVF90
ZXh0dXJlX2J1ZmZlcl9vYmplY3QgR0xfRVhUX3RleHR1cmVfY29tcHJlc3Npb25fbGF0YyBHTF9F
WFRfdGV4dHVyZV9jb21wcmVzc2lvbl9yZ3RjIEdMX0VYVF90ZXh0dXJlX2NvbXByZXNzaW9uX3Mz
dGMgR0xfRVhUX3RleHR1cmVfY3ViZV9tYXAgR0xfRVhUX3RleHR1cmVfZWRnZV9jbGFtcCBHTF9F
WFRfdGV4dHVyZV9lbnZfY29tYmluZSBHTF9FWFRfdGV4dHVyZV9lbnZfZG90MyBHTF9FWFRfdGV4
dHVyZV9maWx0ZXJfYW5pc290cm9waWMgR0xfRVhUX3RleHR1cmVfaW50ZWdlciBHTF9FWFRfdGV4
dHVyZV9sb2QgR0xfRVhUX3RleHR1cmVfbG9kX2JpYXMgR0xfRVhUX3RleHR1cmVfbWlycm9yX2Ns
YW1wIEdMX0VYVF90ZXh0dXJlX29iamVjdCBHTF9FWFRfdGV4dHVyZV9zUkdCIEdMX0VYVF90ZXh0
dXJlX3NoYXJlZF9leHBvbmVudCBHTF9FWFRfdGltZXJfcXVlcnkgR0xfRVhUX3ZlcnRleF9hcnJh
eSBHTF9JQk1fcmFzdGVycG9zX2NsaXAgR0xfSUJNX3RleHR1cmVfbWlycm9yZWRfcmVwZWF0IEdM
X0tUWF9idWZmZXJfcmVnaW9uIEdMX05WX2JsZW5kX3NxdWFyZSBHTF9OVl9jb3B5X2RlcHRoX3Rv
X2NvbG9yIEdMX05WX2RlcHRoX2J1ZmZlcl9mbG9hdCBHTF9OVl9jb25kaXRpb25hbF9yZW5kZXIg
R0xfTlZfZGVwdGhfY2xhbXAgR0xfTlZfZmVuY2UgR0xfTlZfZmxvYXRfYnVmZmVyIEdMX05WX2Zv
Z19kaXN0YW5jZSBHTF9OVl9mcmFnbWVudF9wcm9ncmFtIEdMX05WX2ZyYWdtZW50X3Byb2dyYW1f
b3B0aW9uIEdMX05WX2ZyYWdtZW50X3Byb2dyYW0yIEdMX05WX2ZyYW1lYnVmZmVyX211bHRpc2Ft
cGxlX2NvdmVyYWdlIEdMX05WX2dlb21ldHJ5X3NoYWRlcjQgR0xfTlZfZ3B1X3Byb2dyYW00IEdM
X05WX2hhbGZfZmxvYXQgR0xfTlZfbGlnaHRfbWF4X2V4cG9uZW50IEdMX05WX211bHRpc2FtcGxl
X2NvdmVyYWdlIEdMX05WX211bHRpc2FtcGxlX2ZpbHRlcl9oaW50IEdMX05WX29jY2x1c2lvbl9x
dWVyeSBHTF9OVl9wYWNrZWRfZGVwdGhfc3RlbmNpbCBHTF9OVl9wYXJhbWV0ZXJfYnVmZmVyX29i
amVjdCBHTF9OVl9waXhlbF9kYXRhX3JhbmdlIEdMX05WX3BvaW50X3Nwcml0ZSBHTF9OVl9wcmlt
aXRpdmVfcmVzdGFydCBHTF9OVl9yZWdpc3Rlcl9jb21iaW5lcnMgR0xfTlZfcmVnaXN0ZXJfY29t
YmluZXJzMiBHTF9OVl90ZXhnZW5fcmVmbGVjdGlvbiBHTF9OVl90ZXh0dXJlX2NvbXByZXNzaW9u
X3Z0YyBHTF9OVl90ZXh0dXJlX2Vudl9jb21iaW5lNCBHTF9OVl90ZXh0dXJlX2V4cGFuZF9ub3Jt
YWwgR0xfTlZfdGV4dHVyZV9yZWN0YW5nbGUgR0xfTlZfdGV4dHVyZV9zaGFkZXIgR0xfTlZfdGV4
dHVyZV9zaGFkZXIyIEdMX05WX3RleHR1cmVfc2hhZGVyMyBHTF9OVl90cmFuc2Zvcm1fZmVlZGJh
Y2sgR0xfTlZfdmVydGV4X2FycmF5X3JhbmdlIEdMX05WX3ZlcnRleF9hcnJheV9yYW5nZTIgR0xf
TlZfdmVydGV4X3Byb2dyYW0gR0xfTlZfdmVydGV4X3Byb2dyYW0xXzEgR0xfTlZfdmVydGV4X3By
b2dyYW0yIEdMX05WX3ZlcnRleF9wcm9ncmFtMl9vcHRpb24gR0xfTlZfdmVydGV4X3Byb2dyYW0z
IEdMX05WWF9jb25kaXRpb25hbF9yZW5kZXIgR0xfU0dJU19nZW5lcmF0ZV9taXBtYXAgR0xfU0dJ
U190ZXh0dXJlX2xvZCBHTF9TR0lYX2RlcHRoX3RleHR1cmUgR0xfU0dJWF9zaGFkb3cgR0xfU1VO
X3NsaWNlX2FjY3VtIEdMX1dJTl9zd2FwX2hpbnQgV0dMX0VYVF9zd2FwX2NvbnRyb2wgR0xfQXV0
b2Rlc2tfdmFsaWRfYmFja19idWZmZXJfaGludCANCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tDQoNCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>183</attachid>
            <date>2010-11-27 00:01:33 +0100</date>
            <delta_ts>2010-11-27 00:01:33 +0100</delta_ts>
            <desc>Update Main.java to work properly</desc>
            <filename>Main.java</filename>
            <type>text/plain</type>
            <size>2797</size>
            <attacher name="Sven Gothel">sgothel</attacher>
            
              <data encoding="base64">aW1wb3J0IGphdmEuYXd0LkNvbG9yOwppbXBvcnQgamF2YS5hd3QuQ29tcG9uZW50OwppbXBvcnQg
amF2YS5hd3QuRnJhbWU7CmltcG9ydCBqYXZhLmF3dC5ldmVudC5XaW5kb3dBZGFwdGVyOwppbXBv
cnQgamF2YS5hd3QuZXZlbnQuV2luZG93RXZlbnQ7CgppbXBvcnQgamF2YXgubWVkaWEub3Blbmds
LkdMOwppbXBvcnQgamF2YXgubWVkaWEub3BlbmdsLkdMMjsKaW1wb3J0IGphdmF4Lm1lZGlhLm9w
ZW5nbC5HTEF1dG9EcmF3YWJsZTsKaW1wb3J0IGphdmF4Lm1lZGlhLm9wZW5nbC5HTENhcGFiaWxp
dGllczsKaW1wb3J0IGphdmF4Lm1lZGlhLm9wZW5nbC5HTEV2ZW50TGlzdGVuZXI7CmltcG9ydCBq
YXZheC5tZWRpYS5vcGVuZ2wuR0xQcm9maWxlOwppbXBvcnQgamF2YXgubWVkaWEub3BlbmdsLmF3
dC5HTENhbnZhczsKaW1wb3J0IGphdmF4LnN3aW5nLkJveExheW91dDsKCnB1YmxpYyBjbGFzcyBN
YWluCnsKICAgICAgICBzdGF0aWMgQ2FudmFzTGlzdGVuZXIgbGlzdGVuZXIgPSBuZXcgQ2FudmFz
TGlzdGVuZXIoKTsKCiAgICAgICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJn
cykKICAgICAgICB7CiAgICAgICAgICAgICAgICBHTFByb2ZpbGUuaW5pdFNpbmdsZXRvbihmYWxz
ZSk7CgogICAgICAgICAgICAgICAgR0xQcm9maWxlIHByb2ZpbGUgPSBHTFByb2ZpbGUuZ2V0TWF4
Rml4ZWRGdW5jKCk7CiAgICAgICAgICAgICAgICBHTENhcGFiaWxpdGllcyBjYXBzID0gbmV3IEdM
Q2FwYWJpbGl0aWVzKHByb2ZpbGUpOwogICAgICAgICAgICAgICAgR0xDYW52YXMgY2FudmFzID0g
bmV3IEdMQ2FudmFzKGNhcHMpOwogICAgICAgICAgICAgICAgY2FudmFzLnNldEJhY2tncm91bmQo
Q29sb3IueWVsbG93KTsKICAgICAgICAgICAgICAgIGNhbnZhcy5hZGRHTEV2ZW50TGlzdGVuZXIo
bGlzdGVuZXIpOwoKICAgICAgICAgICAgICAgIGZpbmFsIEZyYW1lIHRvcExldmVsRnJhbWUgPSBu
ZXcgRnJhbWUoKTsKICAgICAgICAgICAgICAgIHRvcExldmVsRnJhbWUuYWRkV2luZG93TGlzdGVu
ZXIobmV3IFdpbmRvd0FkYXB0ZXIoKSB7CiAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyB2b2lk
IHdpbmRvd0Nsb3NpbmcoV2luZG93RXZlbnQgZSkgewogICAgICAgICAgICAgICAgICAgICAgICBT
eXN0ZW0uZXJyLnByaW50bG4oImNsb3NpbmciKTsKICAgICAgICAgICAgICAgICAgICAgICAgdG9w
TGV2ZWxGcmFtZS5kaXNwb3NlKCk7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICAgICAgcHVibGljIHZvaWQgd2luZG93Q2xvc2VkKFdpbmRvd0V2ZW50IGUpIHsKICAgICAg
ICAgICAgICAgICAgICAgICAgU3lzdGVtLmVyci5wcmludGxuKCJjbG9zZWQiKTsKICAgICAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB0b3BMZXZl
bEZyYW1lLnNldExheW91dChuZXcgQm94TGF5b3V0KHRvcExldmVsRnJhbWUsIEJveExheW91dC5Z
X0FYSVMpKTsKCiAgICAgICAgICAgICAgICB0b3BMZXZlbEZyYW1lLmFkZChjYW52YXMpOwoKICAg
ICAgICAgICAgICAgIC8vIFJldmFsaWRhdGUgc2l6ZS9sYXlvdXQuCiAgICAgICAgICAgICAgICAv
LyBBbHdheXMgdmFsaWRhdGUgaWYgY29tcG9uZW50IGFkZGVkL3JlbW92ZWQuCiAgICAgICAgICAg
ICAgICAvLyBFbnN1cmUgMXN0IHBhaW50IG9mIEdMQ2FudmFzIHdpbGwgaGF2ZSBhIHZhbGlkIHNp
emUsIGhlbmNlIGRyYXdhYmxlIGdldHMgY3JlYXRlZC4KICAgICAgICAgICAgICAgIHRvcExldmVs
RnJhbWUuc2V0U2l6ZSg0MDAsIDMwMCk7CiAgICAgICAgICAgICAgICB0b3BMZXZlbEZyYW1lLnZh
bGlkYXRlKCk7CgogICAgICAgICAgICAgICAgdG9wTGV2ZWxGcmFtZS5zZXRWaXNpYmxlKHRydWUp
OwoKICAgICAgICAgICAgICAgIC8vIEFuaW1hdG9yIGFuaW1hdG9yID0gbmV3IEFuaW1hdG9yKGNh
bnZhcyk7CiAgICAgICAgICAgICAgICAvLyBhbmltYXRvci5zdGFydCgpOwoKICAgICAgICAgICAg
ICAgIC8vIGNhbnZhcy5kaXNwbGF5KCk7CiAgICAgICAgfQp9CgpjbGFzcyBDYW52YXNMaXN0ZW5l
ciBpbXBsZW1lbnRzIEdMRXZlbnRMaXN0ZW5lcgp7CiAgICAgICAgQE92ZXJyaWRlCiAgICAgICAg
cHVibGljIHZvaWQgZGlzcGxheShHTEF1dG9EcmF3YWJsZSBhcmcwKQogICAgICAgIHsKICAgICAg
ICAgICAgICAgIEdMMiBnbCA9IGFyZzAuZ2V0R0woKS5nZXRHTDIoKTsKICAgICAgICAgICAgICAg
IGdsLmdsQ2xlYXJDb2xvcigxLjBmLCAwLjBmLCAwLjBmLCAwLjVmKTsKICAgICAgICAgICAgICAg
IGdsLmdsQ2xlYXIoR0wuR0xfQ09MT1JfQlVGRkVSX0JJVCk7CgogICAgICAgICAgICAgICAgU3lz
dGVtLm91dC5wcmludGxuKCJkaXNwbGF5Iik7CiAgICAgICAgfQoKICAgICAgICBAT3ZlcnJpZGUK
ICAgICAgICBwdWJsaWMgdm9pZCBkaXNwb3NlKEdMQXV0b0RyYXdhYmxlIGFyZzApCiAgICAgICAg
ewogICAgICAgIH0KCiAgICAgICAgQE92ZXJyaWRlCiAgICAgICAgcHVibGljIHZvaWQgaW5pdChH
TEF1dG9EcmF3YWJsZSBhcmcwKQogICAgICAgIHsKICAgICAgICAgICAgICAgIENvbXBvbmVudCBj
YW52YXMgPSAoQ29tcG9uZW50KSBhcmcwOwogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmlu
dGxuKGNhbnZhcy5nZXRTaXplKCkudG9TdHJpbmcoKSk7CiAgICAgICAgfQoKICAgICAgICBAT3Zl
cnJpZGUKICAgICAgICBwdWJsaWMgdm9pZCByZXNoYXBlKEdMQXV0b0RyYXdhYmxlIGFyZzAsIGlu
dCBhcmcxLCBpbnQgYXJnMiwgaW50IGFyZzMsCmludCBhcmc0KQogICAgICAgIHsKICAgICAgICB9
Cn0KCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>