ARC

Refactored with ARC enabled