FCA fines Barclays £40 million