For contracts that include more than one separate performance obligation:
The contract price is allocated to each performance obligation in proportion to the obligations' stand-alone selling prices.
Revenue is recorded over time at the fair value of each performance obligation.
Revenue is recognized in the amount of the contract price on the date the last separate performance obligation is satisfied.
Revenue is recognized in the amount of the contract price on the date the contract is signed.