Have you, too, spent the past several days gazing longingly out your office window wishing you could soak up some vitamin D and enjoy the positively beautiful weather we've had this week? Well, rejoice: with the sheer number of trains suspending long stretches of service this weekend, plus the usual rerouting shenanigans happening on other lines, your best transportation option might just be your own two feet. No time like the present to start racking up those Fitbit-recommended 10,000 steps per day!

Here's what to expect this weekend on the 3, 4, 5, 6, 7, A, C, D, E, F, Q, R, and S trains:

3 trains are not running in either direction between Crown Hts-Utica Ave and New Lots Av from 11:30 p.m. on Friday to 5 a.m. on Monday. Shuttle buses will make all station stops.

4 trains are not running in either direction between New Lots Av/Crown Hts-Utica Av and Bowling Green from 11:45 p.m. on Friday to 5 a.m. on Monday. Downtown 4 trains will run express from 125 St to Grand Central-42 St from 11:45 p.m. on Friday to 6 a.m. on Saturday; 11:45 p.m. on Saturday to 8 a.m. on Sunday; and 11:45 p.m. on Sunday to 5 a.m. on Monday. And from 11:45 p.m. on Friday to 5 a.m. on Monday, Pelham Bay Park-bound 6 trains will skip Astor Pl.

5 trains are not running in either direction from 11:30 p.m. on Friday to 5 a.m. on Monday. Shuttle buses will run between Eastchester-Dyre Av and E 180 St, stopping at Baychester Av, Gun Hill Rd, Pelham Pkwy, and Morris Park.

6 trains are not running in either direction between Pelham Bay Park and Parkchester from 3:30 a.m. on Saturday to 10 p.m. on Sunday. Free shuttle buses will operate between the two stops. Brooklyn Bridge-City Hall-bound 6 trains will run express from 125 St to Grand Central-42 St from 11:45 p.m. on Friday to 6 a.m. on Saturday; from 11:45 p.m. on Saturday to 8 a.m. on Sunday; and from 11:45 p.m. on Sunday to 5 a.m. on Monday. Also, uptown 6 trains will skip Astor Pl from 11:45 p.m. on Friday to 5 a.m. on Monday.

7 trains are not running in either direction between 34 St-Hudson Yards and Queensboro Plaza, from 12:15 a.m. on Saturday to 4:30 a.m. on Monday. Shuttle buses will run between 34 St-Hudson Yards and Times Sq-42 St, and between Vernon Blvd-Jackson Av and Queensboro Plaza. Also, from 3:45 a.m. on Saturday to 10 p.m. on Sunday, Queensboro Plaza-bound 7 trains will run express from 74 St-Broadway to Queensboro Plaza.

Brooklyn-bound A trains will skip 50 St, 23 St, and Spring Street from 11:45 p.m. on Friday to 6:30 a.m. on Sunday, and from 11:45 p.m. on Sunday to 5 a.m. on Monday. Also, from 12:01 a.m. on Saturday to 5 a.m. on Monday, Brooklyn-bound A trains will run local between 125 St and 59 St-Columbus Circle.

Brooklyn-bound C trains will skip 50 St, 23 St, and Spring Street from 6:30 a.m. to 11 p.m. on Saturday and Sunday.

Brooklyn-bound D trains will run local from 125 St to 59 St-Columbus Circle from 12:01 a.m. on Saturday to 5 a.m. on Monday.

World Trade Center-bound E trains will skip 23 St and Spring Street in both directions from 11:45 p.m. on Friday to 5 a.m. on Monday. They'll also run express from 71 Av to Queens Plaza from 12:15 a.m. on Saturday to 7 a.m. on Sunday, and from 12:15 a.m. to 5 a.m. on Monday.

Jamaica Center-Parsons/Archer-bound F trains will be rerouted on the M line from 47-50 Sts to Roosevelt Av, from 11:45 p.m. on Friday to 5 a.m. on Monday. Also during that time, Coney Island-Stillwell Av-bound F trains will run express from Smith-9 Sts to Church Av.

Q trains will run to Astoria-Ditmars Blvd from 7 a.m. to 9 p.m. on Saturday and from 9 a.m. to 7 p.m. on Sunday.

Brooklyn-bound R trains will run express from Forest Hills-71 Av to Roosevelt Av from 5 a.m. to 7 a.m. on Saturday and Sunday.

The 42 St S shuttle will operate overnight from 12:01 a.m. on Saturday to 6 a.m. on Monday.