added optional parameter