We are a subcontractor on a large federal project. Contract value is $450k. We are now over 90% complete and the GC has rejected our latest pay app saying they only owe us $5k of the $44k that we billed. They have revised our SOV, which has been used in all 15 previous pay apps, to include a line item for punch list that did not exist and have taken 5% of the entire contract an added it to that line. This includes all the work in place from the entire project. They also have now rejected some of our change orders. These were never added to our contract value even though we have requested this for over a year. We have emails with them approving the cost and stating they will be issued as a CO. We have added these to the SOV and have been paid for them, but now they are removing those dollars from us which now takes pretty much all remaining money from us to be able to continue to bill. They have also now contacted our tier sub and offered to hire them direct to complete the project. Is any of this legal?