if (BUG_93102_core_restore_capture_binding && bindings[i].getKey().indexOf('!') != -1) continue;
	private void testBindings(ITypeBinding[] bindings) throws Exception {		TType[] types= new TType[bindings.length];		TypeEnvironment environment= new TypeEnvironment();		for (int i= 0; i < bindings.length; i++) {			types[i]= environment.create(bindings[i]);			assertEquals("Not same name", bindings[i].getName(), types[i].getName());			assertEquals("Not same signature", PrettySignatures.get(bindings[i]), types[i].getPrettySignature());			assertEquals("Not same modifiers", bindings[i].getModifiers(), types[i].getModifiers());			testFlags(bindings[i], types[i]);			assertTrue("Not same erasure", types[i].getErasure().isEqualTo(bindings[i].getErasure()));			assertTrue("Not same type declaration", types[i].getTypeDeclaration().isEqualTo(bindings[i].getTypeDeclaration()));			assertTrue("Not same type", types[i] == environment.create(bindings[i]));					}		for (int o= 0; o < bindings.length; o++) {			for (int i= 0; i < bindings.length; i++) {				checkCanAssignTo(bindings[o], bindings[i], types[o], types[i]);			}		}		TypeEnvironment secondEnvironment= new TypeEnvironment();		for (int i= 0; i < bindings.length; i++) {			assertTrue("Equal to second environment", types[i].equals(secondEnvironment.create(bindings[i])));		}		ITypeBinding[] restoredBindings= TypeEnvironment.createTypeBindings(types, RefactoringTestSetup.getProject());		assertEquals("Not same length", restoredBindings.length, bindings.length);		for (int i= 0; i < restoredBindings.length; i++) {			if (BUG_93102_core_restore_capture_binding && bindings[i].getKey().indexOf('!') != -1)				continue;			assertTrue("Not same binding", bindings[i].isEqualTo(restoredBindings[i]));		}	}