import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class StressNotify extends Applet implements ActionListener {

Button onceButton, manyButton;
LabelPanel labelPanelGreen, labelPanelRed;
int panelShowing = -1;
static final int RED = 0;
static final int GREEN = 1;
Panel panel;

public void init() 
{
	onceButton = new Button("Change panel once");
	add(onceButton);
	onceButton.addActionListener(this);
	manyButton = new Button("Change panel many times");
	add(manyButton);
	manyButton.addActionListener(this);
	panel = new Panel();
	add(panel);
	addLabelPanel(GREEN);
}

void addLabelPanel(int panelToAdd)
{
	panel.removeAll();
	if (panelToAdd == GREEN)
	{
		labelPanelGreen = new LabelPanel(Color.green);
		panel.add(labelPanelGreen);
	}
	else if (panelToAdd == RED)
	{
		labelPanelRed = new LabelPanel(Color.red);
		panel.add(labelPanelRed);
	}
	panelShowing = panelToAdd;
}

public void actionPerformed(ActionEvent ae)
{
	if (ae.getSource() == onceButton) 
	{
		addLabelPanel(1 - panelShowing);
		validate();
	}
	else if (ae.getSource() == manyButton) 
	{
		for (int i=0; i<101; i++)
		{
			addLabelPanel(1 - panelShowing);
			validate();
		}
	}
}
}  // END OF Class StressNotify


class LabelPanel extends Panel {

int labels = 200;
	
LabelPanel(Color color)
{
	setLayout(new GridLayout(labels/20, 20, 4, 4));
	setBackground(color);
	Label[] myLabel = new Label[labels];
	for (int i=0; i<labels; i++)
	{
		myLabel[i] = new Label(String.valueOf(i));
		myLabel[i].setBackground(color);
		add(myLabel[i]);
	}
}
}  //  END OF Class LabelPanel