auto-detects delimiter