// test031 
package p1.p2.test;
import java.io.Serializable;
import java.io.IOException;
public abstract /*  */ class A extends p1.p2.fpfpfpfppffp.A implements Runnable, Cloneable, Serializable, Toto, Titi, Tata {
int CONST;
 /*          comment         */
int value;transient long s;protected synchronized void foo() throws IOException,Exception{}public A() throws IOException,Exception{}}