Changed the way optional parameters work