The parameters have been changed to be more flexible.