add an option to change how long codes are valid for