BP receives record fine over oil spill