Ok, we're getting down to the last bits. Here are the remaining non-test references:
1 org.apache.webbeans.context.SessionContext 1 org.apache.webbeans.context.creational.DependentCreationalContext 1 org.apache.webbeans.inject.impl.InjectionPointImpl 1 org.apache.webbeans.intercept.InterceptorHandler 3 org.apache.webbeans.conversation.ConversationImpl 3 org.apache.webbeans.test.tck.StandaloneContainersImpl 4 org.apache.webbeans.container.SerializableBean 47 org.apache.webbeans.xml.XMLUtil 57 org.apache.webbeans.util.AnnotationUtil 80 org.apache.webbeans.lifecycle.AbstractLifeCycle 123 org.apache.webbeans.context.creational.CreationalContextImpl 184 org.apache.webbeans.inject.instance.InstanceImpl 384 org.apache.webbeans.test.mock.MockManager 431 org.apache.webbeans.config.ManagedBeanConfigurator 500 org.apache.webbeans.el.WebBeansELResolver 551 org.apache.webbeans.intercept.InterceptorUtil 594 org.apache.webbeans.xml.WebBeansXMLConfigurator Some of the above are true static references that can't be removed (serialization), mostly the ones with 1 or 4 hits. Our stats: OWB-503 status: 550 code uses Total of 5535 static synchronized accesses and 5958 hashed calls in 340 tests Average of 16 static synchronized accesses and 17 hashed calls per test Will keep hacking but the end is in sight! -David