add untested functions