“Microsoft has a backlog of $400 billion in remaining performance obligations (RPO) with an average duration of two years.”