1, 2, and 3. Done