package org.objenesis;

import java.io.ObjectInputStream;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public abstract class Sun13InstantiatorBase implements ObjectInstantiator {
	protected static Method allocateNewObjectMethod = null;
	
	private static void initialize() {
		if(allocateNewObjectMethod == null) {
			try {
				allocateNewObjectMethod = ObjectInputStream.class.getDeclaredMethod(
						"allocateNewObject", new Class[] {Class.class, Class.class}
				);
				allocateNewObjectMethod.setAccessible(true);
			} catch (SecurityException e) {
				// Will keep the allocateNewMethod as null
			} catch (NoSuchMethodException e) {
				// Will keep the allocateNewMethod as null
			}
		}
	}
	protected final Class type;
	public Sun13InstantiatorBase(Class type) {
		this.type = type;
		initialize();
	}
	
	public abstract Object newInstance();	
	
}

@@ -58,61 +58,8 @@
 m;%0D%0A
-import java.lang.reflect.InvocationTargetException;%0D%0A
 impo

Remove unused import