imo, #1 is the cleanest