undefined detection methods added