support arc and no arc.