Of note RavenVolt contributed to organic growth beginning in September. After these project closeouts as Scott noted, Technical Solutions backlog now exceeds $410 million, a large portion of which is scheduled to convert to revenue in 2024. Technical Solutions’ operating profit was $24.4 million and margin was 12.8%, compared to operating profit of $20.9 million and margin of 11.7% last year. These increases were largely due to higher volume and approximately $2 million of one-time gains related to certain contracts. Moving on to Slide 9, we ended the fourth quarter with total indebtedness of $1.4 billion, including $58.2 million of standby letters of credit, resulting in a total debt to pro forma adjusted EBITDA ratio of 2.3 times. At the end of Q4, we had available liquidity of $552.5 million, including cash and cash equivalents of $69.5 million.
Free cash flow was strong in the fourth quarter at $121 million and was $191 million for the year. Excluding full-year ELEVATE and integration costs of $71 million, our CARES Act repayment of $66 million and employee retention credits received of $24 million, normalized free cash flow was $303 million in 2023. We repurchased 2.7 million shares of common stock in the fourth quarter at an average price of $40.82 per share for a total cost of $110 million. For the full year, we repurchased 3.3 million shares for $137.1 million, excluding excise taxes, and reduced our share count by 5%. Also, subsequent to the year end, our Board approved $150 million expansion of our share repurchase authorization. The total current authorization is now $210 million.
Interest expense was $20.5 million, up $4.5 million from the prior year period. Now let’s move on to the full-year fiscal 2024 outlook as shown on Slide 10. As Scott mentioned, our view for 2024 is consistent with the comments we made on the third-quarter earnings call. We expect full 2024 adjusted EPS to be in the range of $3.20 and $3.40. Adjusted EBITDA margin is expected to be 6.2% to 6.5%, largely driven by a shift in business mix. This includes expected lower B&I janitorial activity, a change in revenue mix in M&D, and continued labor cost pressure, partially offset by ELEVATE and cost initiatives, as well as price increases. Interest expense is estimated to be in the range of $82 million to $86 million. The tax rate before discrete items is expected to be between 29% to 30%.
Lastly, full-year normalized free cash flow is expected to be in the range of $240 million to $270 million, excluding the estimated $45 million of ELEVATE and integration costs, the majority being ELEVATE investments. With that let me turn it back to Scott for closing comments.
Scott Salmirs: Thanks, Earl. I want to thank our teams for their incredible efforts and dedication throughout the year. Despite challenging commercial real estate and labor markets and through the introduction of new technology and processes, our teams never took their eyes off our clients and delivered solid performance. I wish you and your loved ones a very happy and healthy holiday season and a Happy New Year. With that, let’s take some questions.
Operator: Thank you. We will now be conducting a question-and-answer session. [Operator Instructions]. Our first questions come from the line of Jasper Bibb with Truist. Please proceed with your questions.
Jasper Bibb: Hey, good morning guys. I wanted to ask what you’re seeing from a labor inflation and pricing perspective, and if you could kind of provide underlying assumptions for ’24 guidance with respect to labor cost inflation and the recovery rate there, that would be definitely helpful. Thanks.
Earl Ellis: Sure. So for us, we’re thinking it’s going to be in the 4% to 5% range. A lot of the collective bargaining agreements for the janitorial workers across the country are in process right now and we feel encouraged that they’re going to end in that range. So our guess is on the collective bargaining agreements, which are the union-based agreements, they’re going to be in that 4% range and it’ll be a little higher for the non-union, as we look to those markets with the lower labor rates. So again, that 4% to 5% range. And just as a reminder, we’ve been successful over the last few years of recovering 75% to 80% of that. So, kind of, that’s what we’re thinking.
Jasper Bibb: Okay, makes sense. And then I was hoping to get an update on the ELEVATE progress. I think on the last call you mentioned you’ve already captured about 50% of the cost benefit there. Any color on where you expect to be from a cost capture perspective by the end of fiscal ’24? And are there any kind of key deliverables like ERP deployments we should be aware of over the next 12 months?
Earl Ellis: Yeah, so we probably — I think we’re in kind of that 30% range, a third of the benefits that we’ve captured to date. And it’s something that escalates over time as we actually execute on the different industry group segments, then we can put in some of the tools. So I think it’s just going to be a normal ramping up to that range that we laid out of $110 million to $130 million over time. So we’re right on track with our cadence on that. So everything is going as planned right now.