Don Sweeney is having a pretty good week.

After finding common ground with restricted free agent Charlie McAvoy on a three-year deal worth $4.9 million annually, the Bruins’ GM inserted the the final piece of the puzzle (at least for now) to this season’s team by signing his last RFA, defenseman Brandon Carlo, to a two-year deal worth $2.85 million per season on Tuesday.

Sweeney had contended all along that he had enough money to sign all three of his RFAs (Danton Heinen signed for two years at an AAV of $2.8 million earlier in the summer) and, by getting all three RFAs to agree to bridge deals, he pulled it off. According to capfriendly.com, the B’s have $1.153,334 million of wiggle room left under the cap.

That’s a combined cap hit of $10.55 million for all three, which gets them in under the single cap hit of $10.893 million of Toronto’s Mitch Marner, who like the three Bruin RFAs, also signed his second pro deal.

Not bad work by Sweeney, but the GM was kicking himself for not getting the deal done before training camp started and he took the blame for that.

“We all know the RFA market was challenging the last calendar year, but with the Jacobs family and Cam (Neely), the resources of this organization have been there. When we finalized the deal, both sides felt good and that’s the result we want. But I honestly believe that I could have done a better job to reach that point earlier and not sacrifice any of the days,” said Sweeney.

“When you start to count the days of practice time you have before games, they start to dwindle pretty quickly. You realize how short camp is. There’s really six or so practices remaining. I think as an organization, we need to do everything we possibly can to utilize that time effectively. For an individual player, you’re taking that away from them. I take full responsibility for that.”

While Columbus’ Zach Werenski deal (three years, $15 million) gave Sweeney a clear template from which to get a deal done for McAvoy, Carlo’s pact — though less expensive — was trickier because of the fact that the burgeoning shutdown D-man’s game cannot be properly measured by his relatively paltry point production.

While his game may not translate into the cash windfall that’s expected to await McAvoy, this contract is a bridge to presumably bigger bucks for Carlo.

Sweeney now must turn his sights on how he can re-sign UFA-to-be Torey Krug plus 2020 RFAs Jake DeBrusk and Matt Grzelcyk — to name just a few players who’ll be looking for new contracts next summer.

The biggest will be Krug’s. After Minnesota’s Jared Spurgeon signed a seven-year deal worth $7.575 million annually, Krug will be able to command at least that on the open market.

“Everybody has their place on our hockey club and Torey’s an important part of it,” said Sweeney. “We have some forecasting to do. We have conversations that have to take place.” They will. I indicated to each player that we will have those once I have the ability to start to forecast a little more accurately, so I’ll do that accordingly.”

In all, he’ll be looking at seven UFAs and three RFAs next offseason. It’s hard to imagine him taking care of everyone on that list.

“We had players that left this organization because they had other opportunities and you wish them well,” said Sweeney. “That may happen again. But it won’t be (because of) under-appreciating from the Bruins for what they do for our hockey club. I’ll attack each and every one of them. When they finalize, either here or somewhere else, is to be determined.”