added content type detection