 		classLevelCopyable.writableField = "value 4";
 		classLevelCopyableType = Type.forInstance(classLevelCopyable);
 
+		classLevelCopyableSubclass = new ClassLevelCopyableSubclass();
+		classLevelCopyableSubclass.property1 = "value 1";
+		classLevelCopyableSubclass.property2 = "value 2";
+		classLevelCopyableSubclass.property3 = "value 3";
+		classLevelCopyableSubclass.property4 = "value4";
+		classLevelCopyableSubclass.property5 = "value 5";
+		classLevelCopyableSubclass.writableField = "value 6";
+		classLevelCopyableSubclass.writableField2 = "value 7";
+		classLevelCopyableSubclassType = Type.forInstance(classLevelCopyableSubclass);
+
 		classLevelCopyableCloneable = new ClassLevelCopyableCloneable();
 		classLevelCopyableCloneable.property1 = "value 1";
 		classLevelCopyableCloneable.property2 = "value 2";

	}

	[Test]
	public function testCopyClassLevelCopyableCloneable():void {
		const copy:ClassLevelCopyableCloneable = Copier.copy(classLevelCopyableCloneable);
		assertNotNull(copy);


	private var classLevelCopyable:ClassLevelCopyable;
	private var classLevelCopyableType:Type;

	private var classLevelCopyableSubclass:ClassLevelCopyableSubclass;
	private var classLevelCopyableSubclassType:Type;

	private var classLevelCopyableCloneable:ClassLevelCopyableCloneable;
	private var classLevelCopyableCloneableType:Type;
