(I found no instances where three arguments were actually used, as per the claim in the comment. If there are any in third party code then they will need to use a cast)