Just learned about "failwith" and "invalidArg"