user options implemented