make username optional